From cc33cd3e2c4dd22b747701c8e0c98f25a24bdf97 Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Mon, 4 Mar 2024 15:19:15 +0100 Subject: [PATCH 01/13] III-6063 - Make basic structure of modal --- dist/udb3-angular.js | 48 +++++++++++++++---- dist/udb3-angular.min.js | 8 ++-- .../save-search-modal.controller.js | 11 +++++ .../components/save-search-modal.html | 37 ++++++++++---- 4 files changed, 82 insertions(+), 22 deletions(-) diff --git a/dist/udb3-angular.js b/dist/udb3-angular.js index 399fe2291..952aaef73 100644 --- a/dist/udb3-angular.js +++ b/dist/udb3-angular.js @@ -23234,9 +23234,20 @@ function SaveSearchModalController($scope, $uibModalInstance) { $uibModalInstance.dismiss('cancel'); }; + var isTabActive = function (tabId) { + return tabId === $scope.activeTabId; + }; + + var makeTabActive = function (tabId) { + $scope.activeTabId = tabId; + }; + $scope.cancel = cancel; $scope.ok = ok; + $scope.isTabActive = isTabActive; + $scope.makeTabActive = makeTabActive; $scope.queryName = ''; + $scope.activeTabId = 'new'; $scope.wasSubmitted = false; } SaveSearchModalController.$inject = ["$scope", "$uibModalInstance"]; @@ -32946,22 +32957,41 @@ angular.module('udb.core').run(['$templateCache', function($templateCache) { $templateCache.put('templates/save-search-modal.html', "
\n" + - "
\n" + "\n" + - " \n" + + "
\n" + + "
Zoekopdracht opslaan
\n" + + "
\n" + "\n" + - "
\n" + - "
\n" + - "

Een naam is verplicht.

\n" + - " \n" + + " \n" + + "\n" + + " \n" + + "
\n" + + "
\n" + + "\n" + + " \n" + + "\n" + + "
\n" + + "
\n" + + "

Een naam is verplicht.

\n" + + " \n" + + "
\n" + "
\n" + "
\n" + + "\n" + + "
\n" + + " \n" + + " \n" + + "
\n" + "
\n" + "\n" + - "
\n" + - " \n" + - " \n" + + "
\n" + + "

Bestaande zoekopdracht

\n" + "
\n" + + "\n" + + "\n" + "\n" ); diff --git a/dist/udb3-angular.min.js b/dist/udb3-angular.min.js index 030973763..4c18db689 100644 --- a/dist/udb3-angular.min.js +++ b/dist/udb3-angular.min.js @@ -24,14 +24,14 @@ a.location.href=d},this.login=function(d){var e=b.absUrl(),g=c.authUrl+"connect" if(!e||e.min!==b||e.max!==d){if(_.isNumber(b)&&_.isNumber(d)&&b>d)return n.hasError=!0,void h(c.instant("eventForm.step4.age.error_max_lower_than_min"));n.formData.setTypicalAgeRange(b,d),a.$emit("changeTypicalAgeRange",n.formData.typicalAgeRange)}}function f(){a.$apply(e)}function g(){n.delayedSaveAgeRange.cancel(),e()}function h(a){n.error=a}function i(){n.error="",n.hasError=!1}function j(a,b){return function(c){var d=c.min===a&&c.max===b,e=!(isNaN(a)&&isNaN(b))&&c===o.CUSTOM;return d?d:e}}function k(a){n.formData=a;var b=a.getTypicalAgeRange();b&&l(b.min,b.max)}function l(a,b){var c=_.findKey(o,j(a,b));n.minAge=a,n.maxAge=b,n.rangeInputEnabled=c&&"ALL"!==c,n.activeAgeRange=c}function m(a){var b=o[a];b&&("CUSTOM"!==a&&(n.minAge=b.min,n.maxAge=b.max),n.rangeInputEnabled="ALL"!==a,n.activeAgeRange=a,e())}var n=this,o=Object.freeze({ALL:{label:"All ages"},TODDLERS:{label:"Toddlers",min:0,max:2},PRESCHOOLERS:{label:"Preschoolers",min:3,max:5},KIDS:{label:"Kids",min:6,max:11},TEENAGERS:{label:"Teenagers",min:12,max:15},YOUNGSTERS:{label:"Youngsters",min:16,max:26},ADULTS:{label:"Adults",min:18},SENIORS:{label:"Seniors",min:65},CUSTOM:{label:"Custom"}});n.ageRanges=angular.copy(o),n.activeAgeRange=void 0,n.minAge=void 0,n.maxAge=void 0,n.setAgeRangeByType=m,n.delayedSaveAgeRange=_.debounce(f,1e3),n.instantSaveAgeRange=g,n.error="",n.formData=void 0,k(b),a.translateAgeRange=function(a){return c.instant("eventForm.step4.age."+a)},a.getAgeRangeLabel=function(a){return"undefined"==typeof a.min&&"undefined"==typeof a.max?"":"number"==typeof a.min&&"number"==typeof a.max?a.min.toString()+"-"+a.max.toString():a.min.toString()+"+"}}angular.module("udb.event-form").controller("FormAgeController",a),a.$inject=["$scope","EventFormData","$translate","$rootScope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-age.html",restrict:"EA",controller:"FormAgeController",controllerAs:"fagec"}}angular.module("udb.event-form").directive("udbFormAge",a)}(),function(){"use strict";function a(a,b,c){function d(c){b.setAudienceType(a,c)}function e(){return a.getLocation().isDummyPlaceForEducationEvents}var f=this,g=_.get(c,"offerEditor.disableAudience");f.enabled=!g&&a.isEvent,f.audienceType=e()?"education":a.audienceType,f.setAudienceType=d,f.isBookableEvent=e}angular.module("udb.event-form").controller("FormAudienceController",a),a.$inject=["EventFormData","eventCrud","appConfig"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-audience.html",restrict:"EA",controller:"FormAudienceController",controllerAs:"fac"}}angular.module("udb.event-form").directive("udbFormAudience",a)}(),function(){"use strict";function a(a){function b(b,c){function d(b){a.scrollTo(b.target,100,e,f)}var e=1e3,f=function(a){return.5>a?2*a*a:-1+(4-2*a)*a};c.on("click focusin",d)}return{restrict:"A",link:b}}angular.module("udb.event-form").directive("udbAutoScroll",a),a.$inject=["$document"]}(),function(){"use strict";function a(a,b,c){function d(b,c){a.formData=b,a.isEvent=b.isEvent,a.isPlace=b.isPlace,a.offerStatus=b.status,a.subEvent=b.subEvent,a.timeSpans=_.isEmpty(b.calendar.timeSpans)?[]:b.calendar.timeSpans,a.setType(b.calendar.calendarType?b.calendar.calendarType:"single"),a.openingHoursCollection=c}function e(a){return"permanent"===a||"periodic"===a}function f(b){a.formData.setCalendarType(b),a.type=b,a.weeklyRecurring=e(b),"single"===b&&_.isEmpty(a.timeSpans)&&g()}function g(){a.timeSpans=[{allDay:!0,start:moment().startOf("day").toDate(),end:moment().endOf("day").toDate(),endTouched:!1,status:{type:"Available"}}]}function h(){if(_.isEmpty(a.timeSpans))g(),a.instantTimeSpanChanged();else{var b=_.cloneDeep(_.last(a.timeSpans));b.status={type:"Available"},b.bookingAvailability={type:"Available"},a.timeSpans.push(b)}}function i(b){a.timeSpans.length>1&&(a.timeSpans=_.without(a.timeSpans,b),a.instantTimeSpanChanged())}function j(a){b.$apply(m(a))}function k(){a.delayedTimeSpanChanged.cancel(),m()}function l(a){a.allDay?(a.start=moment(a.start).set({hour:0,minute:0,millisecond:0}).toDate(),a.end=moment(a.end).endOf("day").toDate()):(a.start=moment(a.start).set({hour:moment().startOf("hour").format("H"),minute:0}).toDate(),a.end=moment(a.end).set({hour:moment().startOf("hour").add(4,"h").format("H"),minute:0,second:0}).toDate()),k()}function m(b){var c=_.map(a.timeSpans,p);_.isEmpty(_.flatten(c))?(a.timeSpans.length>1?"multiple"!==a.type&&f("multiple"):"single"!==a.type&&f("single"),n(),_.each(a.timeSpans,function(a){"end"!==b||a.endTouched||(a.endTouched=!0),a.allDay&&(a.start=moment(a.start).startOf("day").toDate(),a.end=moment(a.end).endOf("day").toDate()),"start"!==b||a.endTouched||a.start>a.end&&(a.end=moment(a.start).endOf("day").toDate())}),a.formData.saveTimeSpans(a.timeSpans)):o(c)}function n(){a.timeSpanRequirements=[]}function o(b){a.timeSpanRequirements=b}function p(b){var c={timedWhenNotAllDay:function(a){return!(a.allDay||a.start&&a.end)},startBeforeEndDay:function(a){return a.endTouched&&a.start&&a.end&&moment(a.start).isAfter(a.end,"day")},startBeforeEnd:function(a){return!a.allDay&&a.start&&a.end&&moment(a.start).isSame(a.end,"day")&&moment(a.start).isAfter(a.end)},tooFarInFuture:function(c){var d=moment().add(a.maxYearTimeSpan,"y");return moment(b.end).isAfter(d)}},d=_.pick(c,function(a){return a(b)});return _.keys(d)}a.type="",a.setType=f,a.createTimeSpan=h,a.timeSpans=[],a.timeSpanRequirements=[],a.removeTimeSpan=i,a.weeklyRecurring=!1,a.delayedTimeSpanChanged=_.debounce(j,1e3),a.instantTimeSpanChanged=k,a.toggleAllDay=l,a.init=d,a.maxYearTimeSpan=_.get(c,"offerEditor.calendar.maxYearTimeSpan",10)}angular.module("udb.event-form").controller("BaseCalendarController",a),a.$inject=["calendar","$scope","appConfig"]}(),function(){"use strict";function a(a){function b(b){if(""!==a.calendarHighlight.date){var c=moment(b.date),d=moment(a.calendarHighlight.date);if(c.isSame(d,b.mode))return a.calendarHighlight.extraClass}}var c=this,d={minDate:new Date,showWeeks:!1,customClass:b};c.$onInit=function(){c.isOpen=!1,c.options=d,c.ngModel.$render=function(){c.date=new Date(c.ngModel.$viewValue)}},c.open=function(){c.isOpen=!0},c.changed=function(){if(c.date){var a=moment(c.ngModel.$viewValue),b=moment(c.date).hour(a.hour()).minute(a.minute());c.ngModel.$setViewValue(b.toDate())}}}angular.module("udb.event-form").component("udbFormCalendarDatepicker",{templateUrl:"templates/form-calendar-datepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"datepicker"}),a.$inject=["appConfig"]}(),function(){"use strict";function a(){var a=this;a.calendarType=a.formData.calendar.calendarType}angular.module("udb.event-form").component("udbFormCalendarPeriod",{templateUrl:"templates/form-calendar-period.component.html",controller:a,bindings:{formData:"=",disabled:"=ngDisabled"}})}(),function(){"use strict";function a(){var a=this;a.$onInit=function(){a.ngModel.$render=function(){a.time=new Date(a.ngModel.$viewValue)}},a.changed=function(){a.time&&a.ngModel.$setViewValue(a.time)}}angular.module("udb.event-form").component("udbFormCalendarTimepicker",{templateUrl:"templates/form-calendar-timepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"timepicker"})}(),function(){"use strict";function a(a,b,c,d){var e=this;d("BaseCalendarController",{calendar:e,$scope:c}),e.init(a,b)}angular.module("udb.event-form").controller("FormCalendarController",a),a.$inject=["EventFormData","OpeningHoursCollection","$scope","$controller"]}(),function(){"use strict";angular.module("udb.event-form").component("udbFormEventCalendar",{templateUrl:"templates/form-event-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";angular.module("udb.event-form").component("udbFormPlaceCalendar",{templateUrl:"templates/form-place-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){function f(){a.saving=!1,a.error=!0}function g(){var a=angular.copy(e);a.description=h,a.copyrightHolder=i,c.updateMediaObject(a),b.close(a)}var h=a.description,i=a.copyrightHolder;d.updateImage(c,e,h,i).then(g,f)}function h(){return a.description&&a.copyrightHolder&&a.description.length<=250&&a.copyrightHolder.length>=2}a.saving=!1,a.error=!1,a.description=e.description||"",a.copyrightHolder=e.copyrightHolder||"",a.cancel=f,a.updateImageInfo=g,a.allFieldsValid=h}angular.module("udb.event-form").controller("EventFormImageEditController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","mediaObject"]}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){a.error=!0,a.saving=!1}function h(){a.saving=!0,a.error=!1}function i(){function f(){c.removeMediaObject(e),a.saving=!1,b.close()}h(),d.removeImage(c,e).then(f,g)}a.saving=!1,a.error=!1,a.cancel=f,a.removeImage=i}angular.module("udb.event-form").controller("EventFormImageRemoveController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","image"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){function k(){a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.showAgreements=!1,h.confirm()}function l(){b.dismiss("cancel")}function m(){a.error=!1}function n(b,c){if(a.selectedFile=b?b:null,c.length){var d=q[c[0].$error];a.error=d?d:q["default"]}else m()}function o(){function e(b){var c=b.data.title,d=i.instant("eventForm.imageUpload.somethingWentWrongError");switch(c){case"The uploaded file is not an image.":d=i.instant("eventForm.imageUpload.formatNotValidError")+i.instant("eventForm.imageUpload.extensionsAllowed");break;case"The file size of the uploaded image is too big.":d=i.instant("eventForm.imageUpload.sizeError")}a.saving=!1,a.error=d}function h(f){function g(){a.saving=!1,c.addImage(f),l.resolve(f),b.close(f)}d.addImage(c,f).then(g,e)}if(!a.selectedFile)return void(a.error=i.instant("eventForm.imageUpload.noFileSelectedError"));a.saving=!0;var j=a.description,k=a.copyright,l=g.defer(),m=c.mainLanguage?c.mainLanguage:"nl";return f.createImage(a.selectedFile,j,k,m).then(h,e),l.promise}function p(){return a.description&&a.copyright&&a.selectedFile&&a.description.length<=250&&a.copyright.length>=2}a.userAgreementUrl=j("translate")("images.conditions_url"),a.copyrightUrl="/"+i.use()+_.get(e,"media.copyrightUrl","/copyright"),a.saving=!1,a.error=!1,a.showAgreements=!h.confirmed(),a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.description="",a.copyright="",a.maxFileSize=_.get(e,"media.fileSizeLimit","1MB"),a.acceptAgreements=k,a.cancel=l,a.addImage=o,a.clearError=m,a.selectFile=n,a.allFieldsValid=p;var q={"default":i.instant("eventForm.imageUpload.defaultError"),maxSize:i.instant("eventForm.imageUpload.maxSize")+a.maxFileSize+"."}}angular.module("udb.event-form").controller("EventFormImageUploadController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","appConfig","MediaManager","$q","copyrightNegotiator","$translate","$filter"]}(),function(){"use strict";function a(a,b){function c(a){i=_.cloneDeep(a.getOpeningHours()),0===i.length&&a.createNewOpeningHours(),j.openingHoursCollection=a}function d(){f();var b=j.openingHoursCollection.validate();_.isEmpty(b)?a.close(j.openingHoursCollection.serialize()):e(b)}function e(a){j.errors=a}function f(){j.errors={}}function g(){j.openingHoursCollection.createNewOpeningHours()}function h(a){j.openingHoursCollection.removeOpeningHours(a),f()}var i,j=this;c(b),j.saveOpeningHours=d,j.createNewOpeningHours=g,j.removeOpeningHours=h,j.errors={}}angular.module("udb.event-form").controller("OpeningHoursEditorModalController",a),a.$inject=["$uibModalInstance","openingHoursCollection"]}(),function(){"use strict";function a(a,b){function c(a){return b.instant("weekdays."+a+".label")}function d(a){return b.instant("weekdays."+a+".name")}function e(a){return _.all(_.map(a,function(a){return a.opensAsDate instanceof Date&&a.closesAsDate instanceof Date}))}function f(b){return _.all(_.map(b,function(b){return a(b.opensAsDate).isBefore(b.closesAsDate)}))}function g(a){return _.all(_.map(a,function(a){return!_.isUndefined(_.find(a.dayOfWeek,"open"))}))}function h(b){return angular.forEach(b,function(b,c){b.opens=a(b.opensAsDate).format("HH:mm"),b.closes=a(b.closesAsDate).format("HH:mm"),b.label=_.pluck(_.filter(b.dayOfWeek,"open"),"name").join(", ")}),b}function i(a){return a.clone().year(1970).dayOfYear(1)}function j(a){return _.pick(a,function(a){return a.open})}var k={openAndClose:e,dayOfWeek:g,openIsBeforeClose:f},l={monday:{label:c("monday"),name:d("monday"),open:!1},tuesday:{label:c("tuesday"),name:d("tuesday"),open:!1},wednesday:{label:c("wednesday"),name:d("wednesday"),open:!1},thursday:{label:c("thursday"),name:d("thursday"),open:!1},friday:{label:c("friday"),name:d("friday"),open:!1},saturday:{label:c("saturday"),name:d("saturday"),open:!1},sunday:{label:c("sunday"),name:d("sunday"),open:!1}},m={openingHours:[],getOpeningHours:function(){return this.openingHours},setOpeningHours:function(a){this.openingHours=h(a)},removeOpeningHours:function(a){var b=this.openingHours;this.setOpeningHours(_.without(b,a))},createNewOpeningHours:function(){var a=this.openingHours||[],b={dayOfWeek:_.cloneDeep(l),opens:"00:00",opensAsDate:new Date(1970,0,1),closes:"00:00",closesAsDate:new Date(1970,0,1)};a.push(b),this.setOpeningHours(a)},deserialize:function(b){return this.setOpeningHours(_.map(b,function(b){return{dayOfWeek:_.mapValues(l,function(a,c){var d=_.cloneDeep(a);return d.open=_.includes(b.dayOfWeek,c),d}),opens:b.opens||"00:00",opensAsDate:b.opens?i(a(b.opens,"HH:mm")).toDate():new Date(1970,0,1),closes:b.closes||"00:00",closesAsDate:b.closes?i(a(b.closes,"HH:mm")).toDate():new Date(1970,0,1)}})),this},serialize:function(){return _.map(this.openingHours,function(b){return{dayOfWeek:_.keys(j(b.dayOfWeek)),opens:a(b.opensAsDate).format("HH:mm"),closes:a(b.closesAsDate).format("HH:mm")}})},validate:function(){var a=this.openingHours;return _(k).pick(function(b){return!b(a)}).keys().value()}};return m}angular.module("udb.event-form").factory("OpeningHoursCollection",a),a.$inject=["moment","$translate"]}(),function(){"use strict";function a(a){function b(){var b=a.open({templateUrl:"templates/opening-hours-editor.modal.html",controller:"OpeningHoursEditorModalController",controllerAs:"ohemc",size:"lg",resolve:{openingHoursCollection:function(){return angular.copy(d.openingHoursCollection)}}});b.result.then(c)}function c(a){d.formData.openingHours=a,d.formData.saveOpeningHours(a),d.openingHoursCollection.deserialize(a)}var d=this;d.edit=b}angular.module("udb.event-form").component("udbEventFormOpeningHours",{bindings:{openingHoursCollection:"=openingHours",formData:"=",disabled:"=ngDisabled"},templateUrl:"templates/event-form-openinghours.html",controller:a,controllerAs:"cm"}),a.$inject=["$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){b.dismiss("cancel")}function k(){return a.showWebsiteValidation=!0,a.organizerForm.website.$valid?void c.findOrganizersWebsite(a.newOrganizer.website).then(function(b){b.totalItems>0?(a.organizersWebsiteFound=!0,a.firstOrganizerFound=new d(b.member[0]),a.showWebsiteValidation=!1,a.disableSubmit=!0):(a.showWebsiteValidation=!1,a.organizersWebsiteFound=!1,a.firstOrganizerFound="",a.newOrganizer.name&&(a.disableSubmit=!1))},function(){a.websiteError=!0,a.showWebsiteValidation=!1}):void(a.showWebsiteValidation=!1)}function l(){a.newOrganizer.name&&!a.websiteError?a.disableSubmit=!1:a.disableSubmit=!0}function m(b){a.addressError=b}function n(b){a.contactError=b}function o(){if(a.showValidation=!0,a.organizerForm.$valid){a.$broadcast("organizerAddressSubmit"),a.$broadcast("organizerContactSubmit");var b=f.resolve([]);return a.error=!1,a.saving=!0,a.addressError||a.contactError?(a.error=!0,void(a.saving=!1)):void b.then(function(b){b.length>0?(a.organizersFound=!0,a.organizers=b,a.saving=!1):q()},function(){a.error=!0,a.saving=!1})}}function p(a){b.close(a)}function q(){a.saving=!0,a.saveError=!1;var b=_.clone(a.newOrganizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,e.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&h.addLabelToOrganizer(b.data.organizerId,c),a.newOrganizer.id=b.data.organizerId,p(a.newOrganizer),a.saving=!1},function(){a.saveError=!0,a.saving=!1})}a.organizer=g,a.organizersWebsiteFound=!1,a.organizersFound=!1,a.saving=!1,a.error=!1,a.addressError=!1,a.contactError=!1,a.showWebsiteValidation=!1,a.showValidation=!1,a.organizers=[],a.selectedCity="",a.disableSubmit=!0,a.contactUrlRegex=(new d).regex.url,a.newOrganizer={mainLanguage:"nl",website:"http://",name:a.organizer,address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},a.cancel=j,a.validateWebsite=k,a.updateName=l,a.validateAddress=m,a.validateContact=n,a.validateNewOrganizer=o,a.selectOrganizer=p,a.saveOrganizer=q}angular.module("udb.event-form").controller("EventFormOrganizerModalController",a),a.$inject=["$scope","$uibModalInstance","udbOrganizers","UdbOrganizer","eventCrud","$q","organizerName","OrganizerManager","appConfig"]}(),function(){!function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return{name:a.title,eventType:{id:""},address:{addressCountry:a.location.address.addressCountry,addressLocality:a.location.address.addressLocality,postalCode:a.location.address.postalCode,streetAddress:"",locationNumber:""}}}function j(){a.newPlace=i(),b.dismiss()}function k(){return a.showValidation=!0,a.placeForm.$valid?p(a.newPlace.address.streetAddress)?"NL"!==a.newPlace.address.addressCountry||q(a.newPlace.address.postalCode)?void l():(a.error=!0,void(a.invalidNlPostalCode=!0)):(a.error=!0,void(a.invalidStreet=!0)):void 0}function l(){function b(){a.saving=!1,a.error=!0}function e(b){i.id=b.id,m(i),a.saving=!0,a.error=!1}a.saving=!0,a.error=!1;for(var f="",g=0;ga.availabilityEnds?void(a.errorMessage="De gekozen einddatum moet na de startdatum vallen."):(a.errorMessage="",void e())}function e(){moment(a.availabilityStarts).isValid()&&moment(a.availabilityEnds).isValid()?(b.bookingInfo.availabilityStarts=moment(a.availabilityStarts).hours(0).minutes(0).seconds(0).format(),b.bookingInfo.availabilityEnds=moment(a.availabilityEnds).hours(23).minutes(59).seconds(59).format()):(b.bookingInfo.availabilityStarts="",b.bookingInfo.availabilityEnds=""),a.onBookingPeriodSaved()}function f(){a.availabilityStarts="",a.availabilityEnds="",a.haveBookingPeriod=!1,e()}function g(){a.haveBookingPeriod||(a.haveBookingPeriod=!0)}function h(){(b.bookingInfo.availabilityStarts||b.bookingInfo.availabilityEnds)&&(a.haveBookingPeriod=!0),b.bookingInfo.availabilityStarts?a.availabilityStarts=new Date(b.bookingInfo.availabilityStarts):a.availabilityStarts=new Date,b.bookingInfo.availabilityEnds?a.availabilityEnds=new Date(b.bookingInfo.availabilityEnds):a.availabilityEnds=new Date}a.haveBookingPeriod=!1,a.availabilityStarts="",a.availabilityEnds="",a.errorMessage="",a.popup1={opened:!1},a.popup2={opened:!1},a.validateBookingPeriod=d,a.saveBookingPeriod=e,a.deleteBookingPeriod=f,a.changeHaveBookingPeriod=g,a.initBookingPeriodForm=h,a.dateOptions={formatYear:"yyyy",minDate:new Date,startingDay:1},h(),a.open1=function(){a.popup1.opened=!0},a.open2=function(){a.popup2.opened=!0}}angular.module("udb.event-form").controller("ReservationPeriodController",a),a.$inject=["$scope","EventFormData","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"AE",scope:{onBookingPeriodSaved:"&"},controller:"ReservationPeriodController",templateUrl:"templates/reservation-period.html"}}angular.module("udb.event-form").directive("udbReservationPeriod",a)}(),function(){"use strict";function a(a){function b(b){function c(){b.timeLastSaved=new Date}b.timeLastSaved=void 0;var d=a.$on("eventFormSaved",c);b.$on("$destroy",d)}var c='
';return{template:c,restrict:"EA",link:b}}angular.module("udb.event-form").directive("udbEventFormSaveTimeTracker",a),a.$inject=["$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbEventPreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbEventSuggestion",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbPlacePreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbPlaceSuggestion",a)}(),function(){!function(){"use strict";function a(a,b,c,d,e){function f(a){return function(b){return-1!==b["@id"].indexOf(a)}}function g(){var b=a.currentSuggestionIndex-1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function h(){var b=a.currentSuggestionIndex+1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function i(){b.close()}a.previousSuggestion=g,a.nextSuggestion=h,a.currentSuggestionId=c,a.currentSuggestionIndex=_.findIndex(d.events,f(c)),a.closePreview=i,a.suggestionCount=d.totalItems,a.currentSuggestion=_.find(d.events,f(c)),a.suggestions=d.events,a.suggestionType=e}angular.module("udb.event-form").controller("SuggestionPreviewModalController",a),a.$inject=["$scope","$uibModalInstance","selectedSuggestionId","resultViewer","suggestionType"]}()}(),function(){"use strict";function a(){function a(a,d,e,f){function g(){""!==f.$modelValue.value&&(f.$setValidity("contactinfo",!0),a.infoErrorMessage="",h())}function h(){if(""===f.$modelValue.value||void 0===f.$modelValue.value)a.infoErrorMessage="Gelieve dit veld niet leeg te laten.",f.$setValidity("contactinfo",!1);else if("email"!==f.$modelValue.type||c.test(f.$modelValue.value)){if("url"===f.$modelValue.type){var d=f.$viewValue;b.test(d.value)||(a.infoErrorMessage="Gelieve een geldige url in te vullen.",f.$setValidity("contactinfo",!1))}}else a.infoErrorMessage="Gelieve een geldig e-mailadres in te vullen.",f.$setValidity("contactinfo",!1)}function i(){f.$modelValue.value="",f.$modelValue.booking=!1,a.infoErrorMessage="",f.$setValidity("contactinfo",!0)}a.loadInfo=g,a.validateInfo=h,a.clearInfo=i,a.infoErrorMessage="",a.$on("organizerContactRefresh",function(){h()})}var b=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,c=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;return{restrict:"A",require:"ngModel",link:a}}angular.module("udb.event-form").directive("udbContactInfoValidation",a)}(),function(){"use strict";function a(a){var b=this,c="copyright-agreement-confirmed";b.confirm=function(){var b=moment().add(1,"year").toDate(),d={confirmed:!0};a.putObject(c,d,{expires:b})},b.confirmed=function(){var b=a.getObject(c);return b?b.confirmed:!1}}angular.module("udb.event-form").service("copyrightNegotiator",a),a.$inject=["$cookies"]}(),function(){"use strict";function a(a,b,c,d,e,f){var g={init:function(){this.apiUrl="",this.isEvent=!0,this.isPlace=!1,this.showStep1=!0,this.showStep2=!1,this.showStep3=!1,this.showStep4=!1,this.showStep5=!1,this.majorInfoChanged=!1,this.id="",this.mainLanguage=f.use()||"nl",this.name="",this.description={},this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}},this.address={addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""},this.place={},this.type={},this.theme={},this.calendar={},this.calendar.calendarType="",this.calendar.timeSpans=[],this.calendar.openingHours=[],this.typicalAgeRange="",this.organizer={},this.contactPoint={url:[],phone:[],email:[]},this.facilities=[],this.bookingInfo={},this.mediaObjects=[],this.image=[],this.additionalData={},this.priceInfo=[],this.workflowStatus="DRAFT",this.availableFrom="",this.labels=[],this.audienceType="everyone",this.timingChanged$=a.createObservableFunction(this,"timingChangedCallback")},clone:function(){var b=_.cloneDeep(this);return b.timingChanged$=a.createObservableFunction(b,"timingChangedCallback"),b},showStep:function(a){this["showStep"+a]=!0},hideStep:function(a){this["showStep"+a]=!1},setName:function(a,b){this.name[b]=a},getName:function(a){return this.name[a]},getMainLanguage:function(){return this.mainLanguage},setMainLanguage:function(a){this.mainLanguage=a},setDescription:function(a,b){this.description[b]=a},getDescription:function(a){return this.description[a]},setEventType:function(a){this.type=a,this.removeTheme()},removeType:function(){this.type={}},getEventType:function(){return this.type},getEventTypeLabel:function(){return this.type.label?this.type.label:""},setTheme:function(a){this.theme=a},removeTheme:function(){this.theme={}},getTheme:function(){return this.theme},getThemeLabel:function(){return this.theme.label?this.theme.label:""},getPeriodicStartDate:function(){return this.calendar.startDate},setPeriodicStartDate:function(a){this.calendar.startDate=a},getPeriodicEndDate:function(){return this.calendar.endDate},setPeriodicEndDate:function(a){var b=c(a).endOf("day").toDate();this.calendar.endDate=b},resetLocation:function(){this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}}},setLocation:function(a){this.location=a},getLocation:function(){return this.location},addTimeSpan:function(a,b,d,e){var f="00:00"===c(a).format("HH:mm")&&"23:59"===c(b).format("HH:mm");this.calendar.timeSpans.push({start:c(a).toISOString(),end:c(b).toISOString(),allDay:f,status:d?d:{type:"Available"},bookingAvailability:e?e:{type:"Available"}})},resetCalendar:function(){this.calendar.timeSpans=[],this.calendar.calendarType="",this.calendar.activeCalendarLabel="",this.calendar.activeCalendarType=""},getFirstStartDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.first(this.calendar.timeSpans).start),"periodic"===g.calendar.calendarType&&(a=this.calendar.startDate),a},getLastEndDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.last(this.calendar.timeSpans).end), "periodic"===g.calendar.calendarType&&(a=this.calendar.endDate),a},getType:function(){return this.isEvent?"event":"place"},resetOrganizer:function(){this.organizer={}},resetContactPoint:function(){this.contactPoint={url:[],phone:[],email:[]}},setBookingInfo:function(a){this.bookingInfo=a},addImage:function(a){this.mediaObjects=_.union(this.mediaObjects,[a])},editMediaObject:function(a,b,c,d,e){this.image[a]={url:b,thumbnailUrl:c,description:d,copyrightHolder:e},this.image[a]["@type"]="ImageObject"},updateMediaObject:function(a){this.mediaObjects=_.map(this.mediaObjects,function(b){var c;return c=b["@id"]===a["@id"]?a:b})},removeMediaObject:function(a){this.mediaObjects=_.reject(this.mediaObjects,{"@id":a["@id"]})},selectMainImage:function(a){var b=_.without(this.mediaObjects,a);b.unshift(a),this.mediaObjects=b},setTypicalAgeRange:function(a,b){this.typicalAgeRange=(isNaN(a)?"":a)+"-"+(isNaN(b)?"":b)},getTypicalAgeRange:function(){if(!_.isEmpty(this.typicalAgeRange)){var a={min:void 0,max:void 0},b=this.typicalAgeRange.split("-");return b[0]&&(a.min=parseInt(b[0])),b[1]&&(a.max=parseInt(b[1])),a}},hasValidPeriodicRange:function(){var a=this.getPeriodicStartDate(),b=this.getPeriodicEndDate();return"periodic"===this.calendar.calendarType&&!!a&&!!b&&b>a},initCalendar:function(){var a=this,c=_.findWhere(b,{id:a.calendar.calendarType});c&&(this.calendar.activeCalendarLabel=c.label,this.calendar.activeCalendarType=a.calendar.calendarType)},timingChanged:function(){this.showStep2&&this.showStep(3),this.timingChangedCallback(this)},timingChangedCallback:function(){},initOpeningHours:function(a){d.deserialize(a)},setCalendarType:function(a){var b=this;if("permanent"===a&&(b.calendar.startDate=void 0,b.calendar.endDate=void 0,b.timingChanged()),b.calendar.calendarType!==a){if(b.resetCalendar(),b.calendar.calendarType=a,"single"===b.calendar.calendarType){if(b.openingHours=[],e.calendarHighlight.date){var d=e.calendarHighlight.startTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.startTime,"YYYY-MM-DD HH:mm").toDate():"",f=e.calendarHighlight.endTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.endTime,"YYYY-MM-DD HH:mm").toDate():"";b.addTimeSpan(d,f)}else b.addTimeSpan(c().startOf("day"),c().endOf("day"));b.saveTimeSpans(b.calendar.timeSpans)}if("periodic"===b.calendar.calendarType){if(b.calendar.startDate=c().startOf("day").toDate(),e.addOffer&&e.addOffer.defaultEndPeriod){var g=e.addOffer.defaultEndPeriod;b.calendar.endDate=c(b.calendar.startDate).add(g,"d").startOf("day").toDate()}else b.calendar.endDate=c().add(1,"y").startOf("day").toDate();b.timingChanged()}b.initCalendar(),b.id&&(b.majorInfoChanged=!0)}},isValidDate:function(a){return a instanceof Date},toggleStartHour:function(a){if(a.showStartHour){var b=c(a.date),d=c(a.date).endOf("day");a.startHour=b.format("HH:mm"),a.startHourAsDate=b.toDate(),a.endHour=d.format("HH:mm"),a.endHourAsDate=d.toDate(),a.showEndHour=!1}else a.start.setHours(0),a.start.setMinutes(0),a.end.setHours(0),a.end.setMinutes(0),this.timingChanged()},toggleEndHour:function(a){var b=a.date;if(a.showEndHour){var d=c(a.startHourAsDate).add(3,"hours").minutes(0);b.setHours(d.hours()),b.setMinutes(d.minutes()),a.endHour=c(b).format("HH:mm"),a.endHourAsDate=b}else b.setHours(23),b.setMinutes(59),a.endHour="23:59",a.endHourAsDate=b,this.timingChanged()},hoursChanged:function(a){var b,d;(a.showStartHour||a.showEndHour)&&(a.showStartHour&&(void 0!==a.startHourAsDate?b=c(a.startHourAsDate):(b=c(a.startHourAsDate),b.hours(0),b.minutes(0)),a.startHour=b.format("HH:mm")),a.showEndHour&&(d=void 0!==a.endHourAsDate?c(a.endHourAsDate):b,a.endHour=d.format("HH:mm")),this.timingChanged())},saveOpeningHours:function(a){this.calendar.openingHours=a,this.timingChanged()},saveTimeSpans:function(a){this.calendar.timeSpans=a,this.calendar.startDate=this.getFirstStartDate(),this.calendar.endDate=this.getLastEndDate(),this.timingChanged()},periodicTimingChanged:function(){var a=this;a.id;var b=this.getPeriodicEndDate();this.setPeriodicEndDate(b),a.hasValidPeriodicRange()?(a.periodicRangeError=!1,a.timingChanged()):a.periodicRangeError=!0}};return g.init(),g}angular.module("udb.event-form").factory("EventFormData",a),a.$inject=["rx","calendarLabels","moment","OpeningHoursCollection","appConfig","$translate"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){c.initOpeningHours([]);var b=_.get(h,"calendarHighlight");c.isEvent&&b&&b.date&&k(b),a.language=c.mainLanguage,a.loaded=!0}function k(a){c.calendar.calendarType="single",c.addTimeSpan(a.startTime?e(a.date+" "+a.startTime,"YYYY-MM-DD HH:mm"):"",a.endTime?e(a.date+" "+a.endTime,"YYYY-MM-DD HH:mm"):""),c.initCalendar()}function l(a){a?d.getOffer(a).then(m):j()}function m(b){var d=b.url.split("/").shift();if(c.status=b.status,"event"===d){if(c.isEvent=!0,c.isPlace=!1,c.subEvent=b.subEvent,n(b),b.location&&b.location.id){var e=f(b.location,b.mainLanguage,!0);c.location={id:e.id.split("/").pop(),name:e.name,address:e.address,isDummyPlaceForEducationEvents:e.isDummyPlaceForEducationEvents}}c.audienceType=b.audience.audienceType}if("place"===d&&(c.isEvent=!1,c.isPlace=!0,n(b),b.address)){var g=f(b,b.mainLanguage,!0);c.address=g.address}i.use()!==a.language&&(a.showLangWarning=!0)}function n(b){var d=["id","type","theme","openingHours","description","typicalAgeRange","organizer","bookingInfo","contactPoint","priceInfo","facilities","image","additionalData","apiUrl","workflowStatus","availableFrom","labels","mainLanguage"];b.isDummyPlaceForEducationEvents&&(c.isDummyPlaceForEducationEvents=b.isDummyPlaceForEducationEvents);for(var f=0;fb?!1:o.hasNoDefault&&n(o.eventFormData.workflowStatus)}function i(){o.saving=!0,o.error="",c.publishOffer(b,o.eventFormData.availableFrom).then(function(){k(),l()})["catch"](function(){o.error="Dit event kon niet gepubliceerd worden, gelieve later opnieuw te proberen."})}function j(){g.open({templateUrl:"templates/event-form-publish-modal.html",controller:"EventFormPublishModalController",controllerAs:"efpmc",resolve:{eventFormData:function(){return o.eventFormData},publishEvent:function(){return o.publish}}})}function k(){return b.workflowStatus=d.READY_FOR_VALIDATION,e.resolve()}function l(){f.path("/"+b.getType()+"/"+b.id+"/published")}function m(){f.path("/"+b.getType()+"/"+b.id+"/saved")}function n(a){return a===d.DRAFT}var o=this;o.publish=i,o.canPublishLater=h,o.publishLater=j,o.preview=m,o.isDraft=n,o.saving=!1,o.eventFormData=b;var p=_.get(a,"offerEditor.defaultPublicationDate");o.hasNoDefault=isNaN(Date.parse(p)),!o.hasNoDefault&&n&&(o.eventFormData.availableFrom=p)}angular.module("udb.event-form").controller("EventFormPublishController",a),a.$inject=["appConfig","EventFormData","eventCrud","OfferWorkflowStatus","$q","$location","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(d,e){c.id!==d.id&&(a.activeEventType=d.id,e?(c.isEvent=!0,c.isPlace=!1):("permanent"!==c.calendar.calendarType&&c.resetCalendar(),c.isEvent=!1,c.isPlace=!0,c.calendar.calendarType="permanent"),c.setEventType(d),c.id&&b.$emit("eventTypeChanged",c),k.updateEventTypeAndThemePicker(c),c.showStep(2),c.showStep(3))}function h(a){c.getTheme().id!==a.id&&(c.setTheme(a),c.showStep(2),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c))}function i(){a.showAllEventTypes=!a.showAllEventTypes}function j(){a.showAllPlaces=!a.showAllPlaces}var k=this;a.eventFormData=c,a.eventTypeLabels=d,a.placeLabels=e,a.canRefine=!1,a.canRefineByGroups=!1,a.showAllEventTypes=!1,a.showAllPlaces=!1,a.eventThemeLabels=[],a.eventGroupLabels=[],a.activeEventType="",a.activeEventTypeLabel="",a.activeTheme="",a.activeThemeLabel="",a.splitTypes=!0,k.updateEventTypeAndThemePicker=function(b){var c,g=b.getEventType().id,h=b.getTheme().id,i=_.union(d,e),j=_.findWhere(i,{id:g});if(j){if(a.activeEventType=j.id,a.activeEventTypeLabel=f.instant("offerTypes."+j.label),a.eventThemeLabels=j.themes,a.eventGroupLabels=j.groups,a.isLessonSeries="0.3.1.0.0"===a.activeEventType,j.themes&&(c=_.findWhere(j.themes,{id:h})),j.groups){var k=_.find(j.groups,function(a){return _.where(a.themes,{id:h}).length>0});k&&(c=_.findWhere(k.themes,{id:h}))}}else a.activeEventType="",a.activeEventTypeLabel="";c?(a.activeTheme=c.id,a.activeThemeLabel=f.instant("offerThemes."+c.label)):(a.activeTheme="",a.activeThemeLabel=""),a.canRefine=j&&!_.isEmpty(j.themes)&&!c,a.canRefineByGroups=j&&!_.isEmpty(j.groups)&&!c},k.resetEventType=function(){c.removeType(),k.updateEventTypeAndThemePicker(c)},k.resetTheme=function(){c.removeTheme(),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c)},k.eventThemeChanged=function(a){a.id&&b.$emit("eventThemeChanged",a)},a.setEventType=g,a.resetEventType=k.resetEventType,a.toggleEventTypes=i,a.togglePlaces=j,a.setTheme=h,a.resetTheme=k.resetTheme,k.init=function(b){b.id&&(k.updateEventTypeAndThemePicker(b),a.splitTypes=!1),_.where(a.eventTypeLabels,{primary:!0}).length===a.eventTypeLabels.length&&(a.showAllEventTypes=!0),_.where(a.placeLabels,{primary:!0}).length===a.placeLabels.length&&(a.showAllPlaces=!0)},a.translateOfferTypes=function(a){return f.instant("offerTypes."+a)},a.translateOfferThemes=function(a){return f.instant("offerThemes."+a)},a.translateOfferThemesGroups=function(a){return f.instant("offerThemesGroups."+a)},k.init(c)}angular.module("udb.event-form").controller("EventFormStep1Controller",a),a.$inject=["$scope","$rootScope","EventFormData","eventCategories","placeCategories","$translate"]}(),function(){"use strict";function a(a,b,c){var d=this;a.eventFormData=c,d.eventTimingChanged=function(){c.id&&b.$emit("eventTimingChanged",c)},c.timingChanged$.subscribe(d.eventTimingChanged)}angular.module("udb.event-form").controller("EventFormStep2Controller",a),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){var a={id:null,name:"",address:{addressCountry:"",addressLocality:"",postalCode:"",streetAddress:""}};return _.cloneDeep(a)}function o(b){return a.availableCountries.filter(function(a){return!b||"ZZ"!==a.code})}function p(){b.resetLocation(),a.selectedCity="",a.placeStreetAddress="",a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.locationAutocompleteTextField="",a.bookableEventShowStep4=!1,C(),E.stepUncompleted()}function q(){"NL"===a.selectedCountry.code?a.cities=g:a.cities=f,p()}function r(){var c=b.getLocation();c.id="",c.name="";var d={};d.zip=c.address.postalCode,d.name=c.address.addressLocality,b.setLocation(c),a.selectedLocation=!1,a.locationAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.selectedCityObj=d,E.stepUncompleted()}function s(a){return function(b){return new h(a,b.name+""+b.address.streetAddress)}}function t(){function c(c){b.place=c,a.selectedCity=c.address.postalCode+" "+c.address.addressLocality;var d={id:c.id,name:c.name,address:{addressCountry:a.selectedCountry.code,addressLocality:c.address.addressLocality,postalCode:c.address.postalCode,streetAddress:c.address.streetAddress}};b.setLocation(d),a.selectedLocation=angular.copy(d),E.stepCompleted()}var d=e.open({templateUrl:"templates/event-form-place-modal.html",controller:"EventFormPlaceModalController",resolve:{location:function(){return a.eventFormData.location},categories:function(){return a.categories},title:function(){return a.locationAutocompleteTextField}}});d.result.then(c)}function u(a){return a.split(" ").pop()||""}function v(a){if(a){var b=15;return u(a).length<=b}}function w(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function x(c){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),a.step3Form.$valid){if(!v(c))return a.showStreetValidation=!0,void a.step3Form.street.$setValidity("invalid",!1);var d=b.address,e={streetAddress:c};b.address=_.merge(n().address,d,e),a.placeStreetAddress=c,E.stepCompleted()}}function y(c,d){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),"NL"===a.selectedCountry.code&&a.step3Form.postalCode.$setValidity("invalid",!0),a.step3Form.$valid&&(v(c)||(a.showStreetValidation=!0,a.step3Form.street.$setValidity("invalid",!1)),"NL"===a.selectedCountry.code&&(w(d)||(a.showZipValidation=!0,a.step3Form.postalCode.$setValidity("invalid",!1))),!a.showStreetValidation&&!a.showZipValidation)){var e=b.address,f={streetAddress:c,postalCode:d};b.address=_.merge(n().address,e,f),a.placeStreetAddress=c,E.stepCompleted()}}function z(){a.showValidation=!1,a.showStreetValidation=!1}function A(){a.showValidation=!1,a.showZipValidation=!1}function B(){a.newPlaceStreetAddress=a.placeStreetAddress?a.placeStreetAddress:"",a.placeStreetAddress="",a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,E.stepUncompleted()}function C(){a.isBookableEvent="ZZ"===a.selectedCountry.code?!0:!1}function D(){b.id&&(b.majorInfoChanged=!0)}var E=this,F=k.use()||"nl";a.eventFormData=b,a.categories=d,a.cityAutocompleteTextField="",a.bookableEventLocationId=m.offerEditor.bookableEvent.dummyLocationId,a.locationAutocompleteTextField="",a.availableCountries=m.offerEditor.countries,a.defaultCountry=_.find(a.availableCountries,function(a){return a["default"]}),a.selectedCountry=a.defaultCountry,a.searchingCities=!1,a.cityAutoCompleteError=!1,a.loadingPlaces=!1,a.locationAutoCompleteError=!1,a.locationsSearched=!1,a.selectedCity="",a.selectedLocation=void 0,a.placeStreetAddress="",a.newPlaceStreetAddress="",a.openPlaceModal=t,a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,a.locationsForCity=[],a.cities="BE"===a.selectedCountry.code?f:g,a.changeCountrySelection=q,a.changeCitySelection=p,a.changeLocationSelection=r,a.setPlaceStreetAddress=x,a.setNLPlaceStreetAddress=y,a.changePlaceStreetAddress=B,a.resetStreetValidation=z,a.resetZipValidation=A,a.setMajorInfoChanged=D,a.filterAvailableCountries=o,a.filterCities=function(a){return function(b){var c=a.match(/.+/g),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}},a.orderByLevenshteinDistance=function(a){return function(b){return new h(a,b.label)}},E.selectCity=function(c,d){var e=c.zip,f=c.name,g={postalCode:e,addressLocality:f,addressCountry:a.selectedCountry.code};if(b.isPlace){var h=a.eventFormData.address;a.eventFormData.address=_.merge(n().address,h,g)}else{var i={address:g},j=a.eventFormData.getLocation(),k=_.merge(n(),j,i);b.setLocation(k)}a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.selectedCity=d,a.selectedCityObj=c,a.selectedLocation=void 0,D()},a.selectCity=E.selectCity,E.selectLocation=function(d,e){function f(c){a.selectedLocation=c,a.locationAutocompleteTextField="";var f=b.getLocation();f.id=d,f.name=e,f.address=c.address,f.isDummyPlaceForEducationEvents=c.isDummyPlaceForEducationEvents,b.setLocation(f),E.stepCompleted(),D(),j.$emit("locationSelected",f)}var g=null;return a.isBookableEvent?c.getPlaceById(d).then(function(b){g=b,e=g.name,f(g),a.bookableEventShowStep4=!0}):(g=_.find(a.locationsForCity,function(a){return a.id===d}),void f(g))},a.selectLocation=E.selectLocation,E.getPlaces=function(b){function d(c){_.each(c,function(a,b){c[b]=l(c[b],F,!0)});var d=c.filter(function(a){return!a.isDummyPlaceForEducationEvents}),e=null;return e=d.sort(s(b)),a.locationsForCity=e,e}function e(){return a.locationAutoCompleteError=!0,[]}return b.length<3?void(a.locationsSearched=!1):(a.locationsSearched=!0,"BE"===a.selectedCountry.code?c.getPlacesByZipcode(a.selectedCityObj.zip,"BE",b).then(d,e):"NL"===a.selectedCountry.code?c.getPlacesByCity(a.selectedCityObj.name,"NL").then(d,e):void 0)},a.getPlaces=E.getPlaces,E.cityHasLocations=function(){return a.locationsForCity instanceof Array&&a.locationsForCity.length>0},E.stepCompleted=function(){b.showStep(4),b.id&&i.updateMajorInfo(b)},E.stepUncompleted=function(){b.id||b.hideStep(4)},E.init=function(b){var c;b.isEvent&&b.location.name&&(c=_.get(b,"location.address"),b.location.name&&(a.selectedLocation=angular.copy(b.location)),b.location.isDummyPlaceForEducationEvents&&(a.isBookableEvent=b.location.isDummyPlaceForEducationEvents,a.bookableEventShowStep4=!0)),b.isPlace&&b.address.postalCode&&(c=b.address,a.placeStreetAddress=c.streetAddress),c&&(a.selectedCity=c.addressLocality,a.selectedCountry=_.find(a.availableCountries,function(a){return a.code===c.addressCountry})),a.isBookableEvent&&(a.selectedCountry=_.find(a.availableCountries,function(a){return"ZZ"===a.code}))},E.init(b)}angular.module("udb.event-form").controller("EventFormStep3Controller",a),a.$inject=["$scope","EventFormData","cityAutocomplete","placeCategories","$uibModal","citiesBE","citiesNL","Levenshtein","eventCrud","$rootScope","$translate","jsonLDLangFilter","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return a.infoMissing=!1,a.missingInfo=[],b.type.id||a.missingInfo.push("event type missing"),"single"===b.calendarType&&""===b.timestamps[0].date?a.missingInfo.push("timestamp missing"):"periodic"!==b.calendarType||""!==b.startDate&&""!==b.endDate?""===b.calendarType&&a.missingInfo.push("when missing"):a.missingInfo.push("start or end date missing"),b.isEvent&&!b.location.id?a.missingInfo.push("place missing for event"):b.isPlace&&!b.address.streetAddress&&a.missingInfo.push("address missing for place"),""===b.name&&a.missingInfo.push("title is missing"),b.typicalAgeRange||a.missingInfo.push("age range is missing"),a.missingInfo.length>0?void(a.infoMissing=!0):void 0}function j(){return a.isValidateButtonDisabled?void 0:(a.isValidateButtonDisabled=!0,i(),a.missingInfo.length>0?(a.infoMissing=!0,void(a.isValidateButtonDisabled=!1)):void(u?o():k(b)))}function k(b){a.saving=!0,a.error=!1,a.resultViewer.loading=!0,a.duplicatesSearched=!0,m(b).then(l,q)}function l(b){b.totalItems>0?(a.saving=!1,a.resultViewer.setResults(b)):o()}function m(a){var b=n(a),d=[];angular.forEach(b,function(a,b){d.push(b+':"'+a+'"')});var e=d.join(" AND ");return c.findOffers(e)}function n(a){var b=a.getLocation();return a.isEvent?{"name.\\*":a.name.nl,"location.name.\\*":b.name}:{"name.\\*":a.name.nl,postalCode:a.address.postalCode,labels:"UDB3 place"}}function o(){p();var c;c=f.createOffer(b),c.then(function(c){b=c,f.updateTypicalAgeRange(b),b.majorInfoChanged=!1,a.saving=!1,a.resultViewer=new e,a.titleInputOptions={updateOn:"change blur"},b.showStep(5)},q)}function p(){a.error=!1,a.saving=!0}function q(){a.error=!0,a.saving=!1}function r(){b.id&&""!==b.name&&g.$emit("eventTitleChanged",b)}function s(c){h.open({templateUrl:"templates/suggestion-preview-modal.html",controller:"SuggestionPreviewModalController",resolve:{selectedSuggestionId:function(){return c.id},resultViewer:function(){return a.resultViewer},suggestionType:function(){return b.getType()}}})}var t=this,u=_.get(d,"offerEditor.ignoreDuplicates",!1);a.eventFormData=b,a.titleInputOptions={updateOn:"change blur"},a.infoMissing=!1,a.duplicatesSearched=!1,a.saving=!1,a.error=!1,a.isValidateButtonDisabled=!1,a.validateEvent=j,a.saveEvent=o,a.resultViewer=new e,a.eventTitleChanged=r,a.previewSuggestedItem=s,b.showStep4===!0&&i(),window.onbeforeunload=function(a){return b.majorInfoChanged?"Bent u zeker dat je de pagina wil verlaten? Gegevens die u hebt ingevoerd worden niet opgeslagen.":void 0},a.$on("changeTypicalAgeRange",function(c,d){a.eventFormData.typicalAgeRange=d,b.showStep5===!0&&(f.updateTypicalAgeRange(b),i())}),t.eventFormSaved=function(){g.$emit("eventFormSaved",b)}}angular.module("udb.event-form").controller("EventFormStep4Controller",a),a.$inject=["$scope","EventFormData","udbApi","appConfig","SearchResultViewer","eventCrud","$rootScope","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){a.descriptionCssClass="state-filling"}function j(){a.descriptionInfoVisible=!0,a.originalDescription=a.description}function k(d){d&&(a.description="");var e=a.description&&""!==a.description||d,f=a.description!==a.originalDescription||d;if(e&&f){a.descriptionInfoVisible=!1,a.savingDescription=!0,a.descriptionError=!1,b.setDescription(a.description.replace(new RegExp(String.fromCharCode(31),"g"),""),a.mainLanguage);var g=c.updateDescription(b,a.description);g.then(function(){a.savingDescription=!1,K.eventFormSaved(),a.description?a.descriptionCssClass="state-complete":a.descriptionCssClass="state-incomplete"},function(){a.savingDescription=!1,a.descriptionError=!0})}}function l(){return a.description?a.description.length:void 0}function m(b){function c(b){var c=b;return g.offerEditor.excludeOrganizerLabel&&""!==g.offerEditor.excludeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.excludeOrganizerLabel)<0:!0})),g.offerEditor.includeOrganizerLabel&&""!==g.offerEditor.includeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.includeOrganizerLabel)>=0:!1})),a.emptyOrganizerAutocomplete=c.length<=0,a.loadingOrganizers=!1,c}return a.loadingOrganizers=!0,d.suggestOrganizers(b).then(c)}function n(a){K.saveOrganizer(a)}function o(){b.priceInfo.length>0?h.getTicketSales(a.eventFormData.id,a.eventFormData.organizer).then(function(b){b?a.hasTicketSales=b:p()},function(){a.hasUitpasError=!0}):p()}function p(){function d(){K.eventFormSaved(),b.resetOrganizer(),f.$emit("eventOrganizerDeleted",{}),a.organizerCssClass="state-incomplete",a.savingOrganizer=!1}a.organizerError=!1,c.deleteOfferOrganizer(b).then(d,K.showAsyncOrganizerError)}function q(){function c(){a.organizer="",a.emptyOrganizerAutocomplete=!1,b.organizer.id?a.organizerCssClass="state-complete":a.organizerCssClass="state-incomplete"}var d=e.open({backdrop:"static",templateUrl:"templates/event-form-organizer-modal.html",controller:"EventFormOrganizerModalController",resolve:{organizerName:function(){return a.organizer}}});d.result.then(K.saveOrganizer,c)}function r(){_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-filling"),a.contactInfo.push({type:L.PHONE,value:"",booking:!1})}function s(b){a.contactInfo.splice(b,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete"),t()}function t(){if(a.savingContactInfo=!0,a.contactInfoError=!1,a.contactInfoForm.$valid){b.resetContactPoint(),_.forEach(a.contactInfo,function(a){a.booking?w(a):!_.isEmpty(a.value)&&_.includes(L,a.type)&&b.contactPoint[a.type].push(a.value)});var d=c.updateContactPoint(b);d.then(function(){K.eventFormSaved(),_.isEmpty(a.contactInfo)||(a.contactInfoCssClass="state-complete"),a.savingContactInfo=!1},function(){a.contactInfoError=!0,a.savingContactInfo=!1})}}function u(b){var c=_.find(a.contactInfo,{type:b.type,booking:!0});return b.booking||!c}function v(){var b=_.find(a.contactInfo,{booking:!0});return!!b}function w(b){var c=b.type,d=b.booking?b.value:"";a.bookingModel[c]!==d&&(a.bookingModel[c]=d,C())}function x(b){_.includes(L,b)&&(a.bookingModel[b]="",C())}function y(){a.websitePreviewEnabled=!1,b.bookingInfo.urlLabel=a.bookingModel.urlLabel,""!==a.bookingModel.urlLabelCustom&&(b.bookingInfo.urlLabel=a.bookingModel.urlLabelCustom),C()}function z(){a.websitePreviewEnabled=!0}function A(b,c){a.contactInfo[c].booking=!1,w(b),a.contactInfo.splice(c,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete")}function B(b){var c={},d=b[a.mainLanguage].value;return _.each(a.translatableLanguages,function(b){c[b]=_.findWhere(a.bookingOptions[b],{value:d}).label}),c}function C(){var d={};_.each(a.translatableLanguages,function(a){d[a]=J("reserve_places",a)}),b.bookingInfo=angular.extend({},{url:"",urlLabel:d,email:"",phone:"",availabilityStarts:b.bookingInfo.availabilityStarts?moment(b.bookingInfo.availabilityStarts).format():"",availabilityEnds:b.bookingInfo.availabilityEnds?moment(b.bookingInfo.availabilityEnds).format():""},a.bookingModel),"string"!=typeof b.bookingInfo.urlLabel?b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel):b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel),a.savingBookingInfo=!0,a.bookingInfoError=!1;var e=c.updateBookingInfo(b);e.then(function(){K.eventFormSaved(),a.bookingInfoCssClass="state-complete",a.savingBookingInfo=!1,a.bookingInfoError=!1,D()},function(){a.savingBookingInfo=!1,a.bookingInfoError=!0})}function D(){var b=a.bookingModel.url,c=a.bookingModel.phone,d=a.bookingModel.email;a.contactInfo.some(function(a){return a.value===b}),a.contactInfo.some(function(a){return a.value===c}),a.contactInfo.some(function(a){return a.value===d}),t()}function E(){e.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController"})}function F(a){e.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{mediaObject:function(){return a}}})}function G(a){e.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{image:function(){return a}}})}function H(a){function d(){b.selectMainImage(a)}c.selectMainImage(b,a).then(d)}function I(){a.contactInfo=_.flatten(_.map(b.contactPoint,function(a,b){return _.contains(L,b)?_.map(a,function(a){return{type:b,value:a,booking:!1}}):[]})),b.bookingInfo.url&&a.contactInfo.push({type:"url",value:b.bookingInfo.url,booking:!0}),b.bookingInfo.phone&&a.contactInfo.push({type:"phone",value:b.bookingInfo.phone,booking:!0}),b.bookingInfo.email&&a.contactInfo.push({type:"email",value:b.bookingInfo.email,booking:!0}),a.contactInfo.length>0&&(a.contactInfoCssClass="state-complete"),b.priceInfo&&(a.price=b.priceInfo,a.priceCssClass="state-complete")}function J(a,b){var c=[];switch(b){case"nl":c=[{value:"buy_tickets",label:"Koop tickets"},{value:"reserve_places",label:"Reserveer plaatsen"},{value:"check_availability",label:"Controleer beschikbaarheid"},{value:"subscribe",label:"Schrijf je in"}];break;case"fr":c=[{value:"buy_tickets",label:"Achetez des tickets"},{value:"reserve_places",label:"Réservez des places"},{value:"check_availability",label:"Controlez la disponibilité"},{value:"subscribe",label:"Inscrivez-vous"}];break;case"en":c=[{value:"buy_tickets",label:"Buy tickets"},{value:"reserve_places",label:"Reserve places"},{value:"check_availability",label:"Check availability"},{value:"subscribe",label:"Subscribe"}];break;case"de":c=[{value:"buy_tickets",label:"Tickets kaufen"},{value:"reserve_places",label:"Platzieren Sie eine Reservierung"},{value:"check_availability",label:"Verfügbarkeit prüfen"},{value:"subscribe",label:"Melde dich an"}]}return _.findWhere(c,{value:a}).label}var K=this,L=Object.freeze({EMAIL:"email",PHONE:"phone",URL:"url"});a.eventFormData=b,a.mainLanguage=b.getMainLanguage(),a.description=b.getDescription(a.mainLanguage),a.descriptionCssClass=a.description?"state-complete":"state-incomplete",a.savingDescription=!1,a.descriptionError=!1,a.originalDescription="",a.organizerCssClass=b.organizer.name?"state-complete":"state-incomplete",a.organizer="",a.emptyOrganizerAutocomplete=!1,a.loadingOrganizers=!1,a.organizerError=!1,a.savingOrganizer=!1,a.disablePriceInfo=_.get(g.offerEditor,"disablePriceInfo"),a.translatableLanguages=g.translatableLanguages,a.editBookingPhone=!b.bookingInfo.phone,a.editBookingEmail=!b.bookingInfo.email,a.editBookingUrl=!b.bookingInfo.url,a.bookingModel={urlRequired:!1,emailRequired:!1,phoneRequired:!1,url:b.bookingInfo.urlLabel?b.bookingInfo.url:"",urlLabel:{},urlLabelCustom:"",phone:b.bookingInfo.phone?b.bookingInfo.phone:"",email:b.bookingInfo.email?b.bookingInfo.email:""},a.newBookingModel={},a.bookingOptions=[],_.each(a.translatableLanguages,function(b){a.bookingOptions[b]=[{value:"buy_tickets",label:J("buy_tickets",b)},{value:"reserve_places",label:J("reserve_places",b)},{value:"check_availability",label:J("check_availability",b)},{value:"subscribe",label:J("subscribe",b)}]}),b.bookingInfo.urlLabel?(a.bookingModel.urlLabel=[],a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{label:b.bookingInfo.urlLabel}),void 0===a.usedBookingOption&&(a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{value:"reserve_places"})),"string"==typeof b.bookingInfo.urlLabel?_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})}):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})})):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=a.bookingOptions[b][1]}),a.usedBookingOption&&!_.find(a.bookingOptions[a.mainLanguage],a.usedBookingOption)&&a.bookingOptions[a.mainLanguage].unshift(a.usedBookingOption),a.viaWebsite=!b.bookingInfo.url,a.viaEmail=!b.bookingInfo.email,a.viaPhone=!b.bookingInfo.phone,a.websitePreviewEnabled=!1,a.bookingPeriodPreviewEnabled=!1,a.bookingPeriodShowValidation=!1,a.bookingInfoCssClass="state-incomplete",a.toggleBookingType=w,a.saveBookingInfo=C,a.removeDuplicateContactBooking=D, a.saveWebsitePreview=y,a.enableWebsitePreview=z,a.showBookingOption=u,a.deleteBookingInfo=A,a.removeBookingInfo=x,a.hasBookingInfo=v,a.translateBookingInfoUrlLabels=J,a.contactInfoCssClass="state-incomplete",a.savingContactInfo=!1,a.contactInfoError=!1,a.contactInfo=[],a.alterDescription=i,a.focusDescription=j,a.saveDescription=k,a.countCharacters=l,a.getOrganizers=m,a.selectOrganizer=n,a.deleteOrganizerHandler=o,a.openOrganizerModal=q,a.deleteContactInfo=s,a.saveContactInfo=t,a.addContactInfo=r,a.hasTicketSales=!1,a.hasUitpasError=!1,a.openUploadImageModal=E,a.removeImage=G,a.editImage=F,a.selectMainImage=H,I(),K.eventFormSaved=function(){f.$emit("eventFormSaved",b)},K.showAsyncOrganizerError=function(){a.organizerError=!0,a.savingOrganizer=!1},K.saveOrganizer=function(d){function e(){a.emptyOrganizerAutocomplete=!1,a.organizerError=!1,a.savingOrganizer=!0,a.organizer=""}function g(){K.eventFormSaved(),f.$emit("eventOrganizerSelected",d),a.organizerCssClass="state-complete",a.savingOrganizer=!1}b.organizer=d,e(),c.updateOrganizer(b).then(g,K.showAsyncOrganizerError)}}angular.module("udb.event-form").controller("EventFormStep5Controller",a),a.$inject=["$scope","EventFormData","eventCrud","udbOrganizers","$uibModal","$rootScope","appConfig","udbUitpasApi"]}(),function(){"use strict";function a(a,c,d){var e=function(e,f,g,h){a.call(this,e),this.type="export",this.exportUrl="",this.eventCount=f,this.format=g,this.extension=_.find(d,{type:g}).extension,this.details=h,this.messages={},this.messages[c.CREATED]=b(this,c.CREATED,c),this.messages[c.STARTED]=b(this,c.STARTED,c),this.messages[c.FINISHED]=b(this,c.FINISHED,c),this.messages[c.FAILED]=b(this,c.FAILED,c)};return e.prototype=Object.create(a.prototype),e.prototype.constructor=e,e.prototype.getTemplateName=function(){var a;switch(this.state){case c.FINISHED:a="export-job";break;case c.FAILED:a="failed-job";break;default:a="base-job"}return a},e.prototype.getDescription=function(){return b(this,this.state,c)},e.prototype.info=function(a){a.location&&(this.exportUrl=a.location)},e.prototype.getTaskCount=function(){return this.eventCount},e}function b(a,b,c){var d="";return d=b===c.FAILED?"Exporteren van items mislukt":"Document ."+a.extension+" met "+a.eventCount+" items"}angular.module("udb.entry").factory("EventExportJob",a),a.$inject=["BaseJob","JobStates","ExportFormats"]}(),function(){"use strict";function a(a,b,c,d,e){function f(a){h=0>a?0:a>g.steps.length?g.steps.length:a}var g=this;g.exportLogoUrl=e.exportLogoUrl,g.dayByDay=!1,g.eventProperties=[{name:"name",include:!0,sortable:!1,excludable:!1},{name:"description",include:!1,sortable:!1,excludable:!0},{name:"labels",include:!1,sortable:!1,excludable:!0},{name:"calendarSummary",include:!0,sortable:!1,excludable:!1},{name:"image",include:!1,sortable:!1,excludable:!0},{name:"videos",inclue:!1,sortable:!1,excludable:!0},{name:"location",include:!0,sortable:!1,excludable:!1},{name:"address",include:!0,sortable:!1,excludable:!0},{name:"organizer",include:!1,sortable:!1,excludable:!0},{name:"priceInfo",include:!1,sortable:!1,excludable:!0},{name:"kansentarief",include:!1,sortable:!1,excludable:!0,format:c.OOXML},{name:"contactPoint",include:!1,sortable:!1,excludable:!0},{name:"bookingInfo",include:!1,sortable:!1,excludable:!0},{name:"status",include:!1,sortable:!1,excludable:!0},{name:"bookingAvailability",include:!1,sortable:!1,excludable:!0},{name:"attendance",include:!1,sortable:!1,excludable:!0},{name:"creator",include:!1,sortable:!1,excludable:!0},{name:"terms.theme",include:!0,sortable:!1,excludable:!0},{name:"terms.eventtype",include:!0,sortable:!1,excludable:!0},{name:"created",include:!1,sortable:!1,excludable:!0},{name:"modified",include:!1,sortable:!1,excludable:!0},{name:"available",include:!1,sortable:!1,excludable:!0},{name:"endDate",include:!1,sortable:!1,excludable:!0},{name:"startDate",include:!1,sortable:!1,excludable:!0},{name:"calendarType",include:!1,sortable:!1,excludable:!0},{name:"sameAs",include:!1,sortable:!1,excludable:!0},{name:"typicalAgeRange",include:!1,sortable:!1,excludable:!0},{name:"language",include:!1,sortable:!1,excludable:!0},{name:"audience",include:!1,sortable:!1,excludable:!0,format:c.OOXML}],g.exportFormats=_.map(c),g.brands=e.exportBrands,g.restrictedBrands=e.restrictedExportBrands,g.templateUrl=e.exportTemplateUrl,g.templates=e.exportTemplateTypes,d.getMyRoles().then(function(a){angular.forEach(a,function(b,c){g.brands=g.brands.concat(_.where(g.restrictedBrands,{role:a[c].uuid}))})}),g.customizations={brand:"",logo:g.exportLogoUrl+g.brands[0].logo,title:"",subtitle:"",footer:"",publisher:"",template:""},g.exportSteps={format:{name:"format",incomplete:function(){var a=g.format,b=!!_.find(g.exportFormats,{type:a,customizable:!0});return b?g.steps=[g.exportSteps.format,g.exportSteps.customize,g.exportSteps.confirm]:g.steps=[g.exportSteps.format,g.exportSteps.filter,g.exportSteps.confirm],!a}},customize:{name:"customize",incomplete:function(){return!g.customizations.brand||!g.customizations.title||!g.customizations.template}},filter:{name:"filter",incomplete:function(){return!_.find(g.eventProperties,function(a){return a.include===!0})}},confirm:{name:"confirm"}},g.steps=[g.exportSteps.format,g.exportSteps.confirm];var h=0;g.nextStep=function(){g.isStepCompleted()?f(h+1):g.hasErrors=!0},g.previousStep=function(){f(h-1)},g.isStepCompleted=function(){if(-1===h)return!0;var a=g.steps[h].incomplete;return"undefined"==typeof a||"function"==typeof a&&!a()},g.isOnFirstStep=function(){return 0===h},g.getActiveStepName=function(){return-1===h?"finished":g.steps[h].name},g.onLastStep=function(){return h>=g.steps.length-1},g["export"]=function(){var a,c,d=_.find(g.exportFormats,{type:g.format}),e=d&&d.customizable===!0;e?(c=g.customizations,c.logo=g.exportLogoUrl+c.brand.logo,c.brand=c.brand.name,c.template=c.template.name,a=[]):(c={},a=_.pluck(_.filter(g.eventProperties,"include"),"name")),b["export"](g.format,g.email,a,g.dayByDay,c),h=-1},g.format=g.exportFormats[0].type,g.email="",g.close=function(){a.dismiss("cancel")},g.eventCount=b.activeExport.eventCount}angular.module("udb.export").controller("EventExportController",a),a.$inject=["$uibModalInstance","eventExporter","ExportFormats","udbApi","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.activeExport={query:{},eventCount:0,selection:[]},f["export"]=function(b,g,h,i,j){var k=' AND workflowStatus:("APPROVED" OR "READY_FOR_VALIDATION")',l="("+f.activeExport.query.queryString+")"+k,m=f.activeExport.selection||[],n=f.activeExport.eventCount,o=j.brand||"",p=null,q=e.getObject("user"),r=c.exportEvents(l,g,b,h,i,m,j);return p={format:b,user:q.id,brand:o,queryString:l},r.success(function(c){var e=new d(c.commandId,n,b,p);a.addJob(e),e.start()}),r}}angular.module("udb.export").service("eventExporter",a),a.$inject=["jobLogger","appConfig","udbApi","EventExportJob","$cookies"]}(),function(){"use strict";angular.module("udb.export").constant("ExportFormats",{OOXML:{type:"ooxml",extension:"xlsx",label:"Office Open XML (Excel)",description:"Het standaard formaat van Excel vanaf Microsoft Office 2007."},PDF:{type:"pdf",label:"Als PDF",extension:"pdf",description:"Druk snel en eenvoudig items uit de UiTdatabank af. Kies een Vlieg, UiT-, of UiTPAS-sjabloon.",customizable:!0},JSON:{type:"json",label:"Als json",extension:"json",description:"Exporteren naar event-ld om de informatie voor ontwikkelaars beschikbaar te maken."}})}(),function(){"use strict";function a(){return{templateUrl:"templates/export-modal-buttons.directive.html",restrict:"E"}}angular.module("udb.export").directive("udbExportModalButtons",a)}(),function(){"use strict";function a(){function a(a){var c="undefined"!=typeof a?a:b.queryString;b.queryString=c,b.onChange({query:c})}var b=this;b.queryString="",b.find=a}angular.module("udb.management").component("udbQuerySearchBar",{templateUrl:"templates/query-search-bar.html",controller:a,controllerAs:"qsb",bindings:{onChange:"&",searchLabel:"@",helpLink:"@",helpLabel:"@"}})}(),function(){"use strict";function a(){return{restrict:"A",require:"^form",link:function(a,b,c,d){var e=b[0].querySelector("[name]"),f=angular.element(e),g=f.attr("name");f.bind("blur",function(){var a=d[g].$invalid;b.toggleClass("has-error",a).toggleClass("has-success",!a)})}}}angular.module("udb.management").directive("udbFormGroup",a)}(),function(){"use strict";function a(a,b,c){function d(){function b(){c.go("split.manageLabels.list")}f.creating=!0,a.create(f.label.name,f.label.isVisible,f.label.isPrivate).then(b,e)["finally"](function(){f.creating=!1})}function e(a){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}var f=this;f.creating=!1,f.create=d,f.label={name:"",isPrivate:!1,isVisible:!0}}angular.module("udb.management.labels").controller("LabelCreatorController",a),a.$inject=["LabelManager","$uibModal","$state"]}(),function(){"use strict";function a(a,b,c,d){function e(){function b(a){j(a.uuid)}p.renaming=!0,a.copy(p.label).then(b,g)["finally"](function(){p.renaming=!1,p.saving=!1})}function f(){p.saving=!0;var a=[],b=p.originalLabel.name!==p.label.name;b?e():(p.originalLabel.isVisible!==p.label.isVisible&&a.push(n()),p.originalLabel.isPrivate!==p.label.isPrivate&&a.push(o()),d.all(a)["finally"](function(){p.saving=!1})["catch"](g))}function g(a){j(p.label.uuid);b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}function h(){var a=c.id;j(a)}function i(a){p.label=a,k(a),l(a),p.originalLabel=_.cloneDeep(p.label)}function j(b){p.loadingError=!1,p.label=!1,a.get(b).then(i,m)}function k(a){return"visible"===a.visibility?a.isVisible=!0:a.isVisible=!1,a}function l(a){return"public"===a.privacy?a.isPrivate=!1:a.isPrivate=!0,a}function m(){p.loadingError="Label niet gevonden!"}function n(){var b=p.label.isVisible;return b?a.makeVisible(p.label):a.makeInvisible(p.label)}function o(){var b=p.label.isPrivate;return b?a.makePrivate(p.label):a.makePublic(p.label)}var p=this;p.updateVisibility=n,p.updatePrivacy=o,p.saving=!1,p.renaming=!1,p.save=f,h()}angular.module("udb.management.labels").controller("LabelEditorController",a),a.$inject=["LabelManager","$uibModal","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findLabels(b,c,d,!1)},b.get=function(b){return a.getLabelById(b)},b.create=function(b,c,d){return a.createLabel(b,c,d)},b.copy=function(b){return a.createLabel(b.name,b.isVisible,b.isPrivate,b.uuid)},b["delete"]=function(b){return a.deleteLabel(b.uuid)},b.makeInvisible=function(b){return a.updateLabel(b.uuid,"MakeInvisible")},b.makeVisible=function(b){return a.updateLabel(b.uuid,"MakeVisible")},b.makePrivate=function(b){return a.updateLabel(b.uuid,"MakePrivate")},b.makePublic=function(b){return a.updateLabel(b.uuid,"MakePublic")}}angular.module("udb.management.labels").service("LabelManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(a){return""===i.query?!0:a.length>=k}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.labels").controller("LabelsListController",a),a.$inject=["SearchResultGenerator","rx","$scope","LabelManager"]}(),function(){"use strict";function a(a){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a){return void 0===a||-1===a.indexOf(";")}d.$validators.semicolonLabel=e}}}angular.module("udb.management.labels").directive("udbSemicolonLabelCheck",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueLabel=g}}}angular.module("udb.management.labels").directive("udbUniqueLabel",a),a.$inject=["LabelManager","$q"]}(),function(){"use strict";function a(a){return[{name:"Valideren",permission:a.AANBOD_MODEREREN,notificationCount:0,index:1,sref:"management.moderation.list",icon:"fa fa-flag"},{name:"Gebruikers",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:2,sref:"management.users.list",icon:"fa fa-user"},{name:"Rollen",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:3,sref:"split.manageRoles.list",icon:"fa fa-users"},{name:"Labels",permission:a.LABELS_BEHEREN,notificationCount:0,index:4,sref:"split.manageLabels.list",icon:"fa fa-tag"},{name:"Organisaties",permission:a.ORGANISATIES_BEHEREN,notificationCount:0,index:5,sref:"management.organizers.search",icon:"fab fa-slideshare"}]}angular.module("udb.management").factory("managementListItemDefaults",a),a.$inject=["RolePermission"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){var b="";return _.forEach(a,function(a){void 0!==a.constraints&&a.constraints.v3&&(b+=(b?" OR ":"")+a.constraints.v3)}),b=b?"("+b+")":"",c.find(b,10,0).then(function(a){return a.totalItems})}function h(b){var c=_.find(e,{permission:a.AANBOD_MODEREREN}),d=angular.copy(c);return d.notificationCount=b,d}function i(b){var c=d.defer(),e=_.filter(b,function(b){return _.includes(b.permissions,a.AANBOD_MODEREREN)});return e.length>0?g(e).then(h).then(function(a){c.resolve([a])}):c.resolve([]),c.promise}function j(b){var c=_.without(b,a.AANBOD_MODEREREN),f=_.filter(e,function(a){return _.includes(c,a.permission)});return d.resolve(f)}var k=b.getPermissions().then(j),l=c.getMyRoles().then(i);return d.all([k,l]).then(_.flatten)}angular.module("udb.management").factory("managementListItems",a),a.$inject=["RolePermission","authorizationService","ModerationService","$q","managementListItemDefaults","appConfig"]}(),function(){"use strict";function a(a,b,c,d){function e(a){p(a||{title:"Dit aanbod kon niet geladen worden."})}function f(){return"true"===r["continue"]}function g(){return r.offer.workflowStatus===c.READY_FOR_VALIDATION}function h(){return r.offer.workflowStatus===c.APPROVED}function i(){return r.offer.workflowStatus===c.REJECTED}function j(){r.error=!1,a.approve(r.offer).then(function(){q(c.APPROVED)})["catch"](p)}function k(){var a=d.open({templateUrl:"templates/reject-offer-confirm-modal.html",controller:"RejectOfferConfirmModalCtrl"});a.result.then(l)}function l(a){"DUPLICATE"===a?n():"INAPPROPRIATE"===a?o():m(a)}function m(b){r.error=!1,a.reject(r.offer,b).then(function(){q(c.REJECTED)})["catch"](p)}function n(){r.error=!1,a.flagAsDuplicate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function o(){r.error=!1,a.flagAsInappropriate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function p(a){r.error=a.title+(a.detail?" "+a.detail:"")}function q(a){r.offer.workflowStatus=a,window.parent.postMessage({source:"UDB",type:"OFFER_MODERATED",status:a},"*")}var r=this,s="nl";r.loading=!0,r.offer={},r.error=!1,r.isReadyForValidation=g,r.isApproved=h,r.isRejected=i,r.approve=j,r.askForRejectionReasons=k,r.continueValidation=f,a.getModerationOffer(r.offerId).then(function(a){a.updateTranslationState(),r.offer=b(a,s)})["catch"](e)["finally"](function(){r.loading=!1})}angular.module("udb.management.moderation").component("udbModerationOffer",{templateUrl:"templates/moderation-offer.html",controller:a,controllerAs:"moc",bindings:{"continue":"@",offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","OfferWorkflowStatus","$uibModal"]}(),function(){"use strict";function a(a,b,c,d){function e(a){f(a||{title:"Dit aanbod kon niet geladen worden."})}function f(a){g.error=a.title+(a.detail?" "+a.detail:"")}var g=this,h="nl";g.loading=!0,g.offer={},g.error=!1,g.uitId=_.get(d,"uitidUrl"),c.isGodUser().then(function(a){g.isGodUser=a}),a.getModerationOffer(g.offerId).then(function(a){a.updateTranslationState(),g.offer=b(a,h),_.isEmpty(g.offer.description)&&(g.offer.description="")})["catch"](e)["finally"](function(){g.loading=!1})}angular.module("udb.management.moderation").component("udbModerationSummary",{templateUrl:"templates/moderation-summary.html",controller:a,controllerAs:"moc",bindings:{offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","authorizationService","appConfig"]}(),function(){"use strict";function a(a,b,c){function d(){var d;return a.error=!1,a.response.type&&("OTHER"!==a.response.type||a.response.reason&&a.response.reason.length)?(d="OTHER"===a.response.type?a.response.reason:a.response.type,void b.close(c.resolve(d))):void(a.error="Gelieve een reden op te geven.")}function e(){b.dismiss()}a.cancel=e,a.reject=d,a.response={}}angular.module("udb.management.moderation").controller("RejectOfferConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","$q"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(b){return o=e.createObservableFunction(s,"queryChanged"),p=e.createObservableFunction(s,"pageChanged"),q=new d(a,o,p,t,b.constraints.v3),r=q.getSearchResult$(),r.safeApply(f,m).subscribe(),o.safeApply(f,function(){s.loading=!0}).subscribe(),p.subscribe(function(){h.scrollTop(0)}),g.resolve()}function k(a){var b=_.filter(a,function(a){var b=_.filter(a.permissions,function(a){return a===c.AANBOD_MODEREREN});return b.length>0});return b.length?(s.roles=b,s.selectedRole=s.roles[0],g.resolve(s.selectedRole)):g.reject({title:"Er is huidig geen moderator rol gekoppeld aan jouw gebruiker."})}function l(a){s.queryChanged(a.constraints.v3)}function m(a){var b=a.error;b?(n(b),s.searchResult={}):s.searchResult=a,s.loading=!1}function n(a){s.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return s.errorMessage}}})}var o,p,q,r,s=this,t=10;s.roles=[],s.loading=!0,s.errorMessage=!1,s.selectedRole={},s.searchResult={},s.findModerationContent=l,a.getMyRoles().then(k).then(j)["catch"](n)["finally"](function(){s.loading=!1})}angular.module("udb.management.moderation").controller("ModerationListController",a),a.$inject=["ModerationService","$uibModal","RolePermission","SearchResultGenerator","rx","$scope","$q","$document","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.getMyRoles=function(){return a.getMyRoles()},f.find=function(b,c,d){return a.findToModerate(b,d,c)},f.getModerationOffer=function(b){return a.getOffer(new URL(b))},f.approve=function(b){return a.patchOffer(b["@id"],"Approve")},f.reject=function(b,c){return a.patchOffer(b["@id"],"Reject",c)},f.flagAsDuplicate=function(b){return a.patchOffer(b["@id"],"FlagAsDuplicate")},f.flagAsInappropriate=function(b){return a.patchOffer(b["@id"],"FlagAsInappropriate")}}angular.module("udb.management.moderation").service("ModerationService",a),a.$inject=["udbApi","OfferWorkflowStatus","jobLogger","BaseJob","$q"]}(),function(){"use strict";angular.module("udb.management.moderation").constant("OfferWorkflowStatus",{DRAFT:"DRAFT",READY_FOR_VALIDATION:"READY_FOR_VALIDATION",APPROVED:"APPROVED",REJECTED:"REJECTED",DELETED:"DELETED"})}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){g.saving=!1,g.error=!0}g.error=!1,g.saving=!0,b["delete"](c).then(function(){a.close(),d.$emit("organizationDeleted",c)})["catch"](e)}function f(){a.dismiss()}var g=this;g.organization=c,g.saving=!1,g.error=!1,g.cancelRemoval=f,g.deleteOrganization=e}angular.module("udb.management.organizers").controller("OrganizationDeleteModalController",a),a.$inject=["$uibModalInstance","OrganizerManager","organization","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"A",templateUrl:"templates/organization-search-item.html",bindToController:{organizationSearchItem:"=a}}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e(k)),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.organizers").controller("OrganizationSearchController",a),a.$inject=["SearchResultGenerator","rx","$scope","OrganizerManager"]}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){a.saving=!1,a.error=!0}a.error=!1,a.saving=!0,c.deleteRole(d).then(b.close)["catch"](e)}function f(){b.dismiss()}a.item=d,a.saving=!1,a.error=!1,a.cancelRemoval=f,a.deleteRole=e}angular.module("udb.management.roles").controller("RoleDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","RoleManager","item"]}(),function(){"use strict";angular.module("udb.management.roles").constant("RolePermission",{AANBOD_BEWERKEN:"AANBOD_BEWERKEN",AANBOD_MODEREREN:"AANBOD_MODEREREN",AANBOD_VERWIJDEREN:"AANBOD_VERWIJDEREN",AANBOD_HISTORIEK:"AANBOD_HISTORIEK",ORGANISATIES_BEWERKEN:"ORGANISATIES_BEWERKEN",ORGANISATIES_BEHEREN:"ORGANISATIES_BEHEREN",GEBRUIKERS_BEHEREN:"GEBRUIKERS_BEHEREN",LABELS_BEHEREN:"LABELS_BEHEREN",VOORZIENINGEN_BEWERKEN:"VOORZIENINGEN_BEWERKEN",PRODUCTIES_AANMAKEN:"PRODUCTIES_AANMAKEN",FILMS_AANMAKEN:"FILMS_AANMAKEN"})}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){j().then(function(a){return z.availablePermissions=a,A?i(A):e.resolve()})["catch"](y)["finally"](function(){z.loadedRole=!0,z.loadedRolePermissions=!0,z.loadedRoleUsers=!0,z.loadedRoleLabels=!0})}function i(b){return a.get(b).then(function(a){z.role=a,z.role.users=[],z.role.labels=[],z.role.permissions=_.filter(z.availablePermissions,function(b){return _.contains(a.permissions,b.key)})},function(a){return a.detail=a.title,a.title="De rol kon niet gevonden worden.",e.reject(a)}).then(function(){return k(b)}).then(function(){return l(b)})}function j(){function a(a){return _.map(a,function(a,b){return{key:b,name:a}})}var b=_.values(g);return f(b).then(a)}function k(b){return a.getRoleUsers(b).then(function(a){z.role.users=a},function(a){return a.detail=a.title,a.title="De leden van deze rol konden niet geladen worden.",e.reject(a)})}function l(b){return a.getRoleLabels(b).then(function(a){z.role.labels=a},function(a){return a.detail=a.title,a.title="De labels van deze rol konden niet geladen worden.",e.reject(a)})}function m(a){A=a.roleId,z.role.uuid=A}function n(){!z.role.uuid&&z.role.name&&a.create(z.role.name).then(m,y)["finally"](function(){z.saving=!1})}function o(){return _.has(z.role.constraints,"v3")&&null!==z.role.constraints.v3}function p(){z.saving=!0,a.createRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function q(){z.saving=!0,a.updateRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function r(){z.saving=!0,a.removeRoleConstraint(A).then(function(){z.editConstraint=!1,_.has(z.role.constraints,"v3")&&delete z.role.constraints.v3},y)["finally"](function(){z.saving=!1})}function s(){z.saving=!0,a.updateRoleName(A,z.role.name).then(function(){z.editName=!1},y)["finally"](function(){z.saving=!1})}function t(b){z.loadedRolePermissions=!1;var c=e.reject();_.find(z.role.permissions,{key:b.key})?(z.role.permissions=_.reject(z.role.permissions,{key:b.key}),c=a.removePermissionFromRole(b.key,A)):(z.role.permissions.push(b),c=a.addPermissionToRole(b.key,A)),c["catch"](y)["finally"](function(){z.loadedRolePermissions=!0})}function u(b){z.saving=!0,a.addLabelToRole(A,b.uuid).then(function(){z.role.labels.push(b)},y)["finally"](function(){z.saving=!1})}function v(b){z.saving=!0,a.removeLabelFromRole(A,b.uuid).then(function(){var a=z.role.labels.indexOf(b);z.role.labels.splice(a,1)},y)["finally"](function(){z.saving=!1})}function w(b){var c=_.pick(z.role,["uuid","name","constraint"]);z.saving=!0,a.removeUserFromRole(c,b).then(function(){var a=z.role.users.indexOf(b);z.role.users.splice(a,1)},y)["finally"](function(){z.saving=!1})}function x(){z.addingUser=!0;var c=!1;b.findUserWithEmail(z.email).then(function(a){var b=!1;return c=a,angular.forEach(z.role.users,function(c){c.uuid===a.uuid&&(b=!0)}),b?e.reject({title:"De gebruiker hangt al aan deze rol."}):a}).then(function(b){var c=_.pick(z.role,["uuid","name","constraint"]);return a.addUserToRole(b,c)}).then(function(){z.role.users.push(c),z.form.email.$setViewValue(""),z.form.email.$setPristine(!0),z.form.email.$render()})["catch"](y)["finally"](function(){z.addingUser=!1})}function y(a){z.errorMessage=a.title+(a.detail?" "+a.detail:"");c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return z.errorMessage}}})}var z=this,A=d.id;z.saving=!1,z.loadedRole=!1,z.loadedRolePermissions=!1,z.loadedRoleUsers=!1,z.loadedRoleLabels=!1,z.addingUser=!1,z.role={permissions:[],users:[],labels:[]},z.availablePermissions=[],z.errorMessage=!1,z.editName=!1,z.editConstraint=!1,z.addUser=x,z.addLabel=u,z.createRole=n,z.removeLabel=v,z.removeUser=w,z.updatePermission=t,z.updateName=s,z.createConstraint=p,z.updateConstraint=q,z.removeConstraint=r,z.constraintExists=o,h()}angular.module("udb.management.roles").controller("RoleFormController",a),a.$inject=["RoleManager","UserManager","$uibModal","$stateParams","$q","$translate","RolePermission"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findRoles(b,c,d)},b.get=function(b){return a.getRoleById(b)},b.getRolePermissions=function(b){return a.getRolePermissions(b)},b.getRoleUsers=function(b){return a.getRoleUsers(b)},b.create=function(b){return a.createRole(b)},b.addPermissionToRole=function(b,c){return a.addPermissionToRole(b,c)},b.removePermissionFromRole=function(b,c){return a.removePermissionFromRole(b,c)},b.addUserToRole=function(b,c){return a.addUserToRole(b.uuid,c.uuid)},b.updateRoleName=function(b,c){return a.updateRoleName(b,c)},b.createRoleConstraint=function(b,c){return a.createRoleConstraint(b,c)},b.updateRoleConstraint=function(b,c){return a.updateRoleConstraint(b,c)},b.removeRoleConstraint=function(b){return a.removeRoleConstraint(b)},b.addLabelToRole=function(b,c){return a.addLabelToRole(b,c)},b.getRoleLabels=function(b){return a.getRoleLabels(b)},b.removeLabelFromRole=function(b,c){return a.removeLabelFromRole(b,c)},b.removeUserFromRole=function(b,c){return a.removeUserFromRole(b.uuid,c.uuid)},b.deleteRole=function(b){return a.removeRole(b.uuid)}}angular.module("udb.management.roles").service("RoleManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(a){return""===m.query?!0:a.length>=o}function i(a){m.problem=a}function j(){m.problem=!1}function k(a){var b=a.error;b?(i(b),m.searchResult={}):(j(),m.searchResult=a),m.loading=!1}function l(a){var b=e.open({templateUrl:"templates/role-delete-confirm-modal.html",controller:"RoleDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});b.result.then(function(){f.reload()})}var m=this,n=10,o=3,p=b.createObservableFunction(m,"queryChanged"),q=p.filter(h),r=b.createObservableFunction(m,"pageChanged"),s=new a(d,q,r,n),t=s.getSearchResult$();m.openDeleteConfirmModal=l,m.loading=!1,m.query="",m.page=0,m.minQueryLength=o,p.safeApply(c,function(a){m.query=a}).subscribe(),t.safeApply(c,k).subscribe(),q.merge(r).safeApply(c,function(){m.loading=!0}).subscribe(),r.subscribe(function(){g.scrollTop(0)})}angular.module("udb.management.roles").controller("RolesListController",a),a.$inject=["SearchResultGenerator","rx","$scope","RoleManager","$uibModal","$state","$document"]}(),function(){"use strict";function a(a){function b(b){a.find(b,6,0).then(function(a){d(a.member)})["finally"](function(){e.refreshing=!1})}function c(a){e.refreshing=!0,d([]),b(a)}function d(a){e.availableLabels=a}var e=this;e.availableLabels=[],e.suggestLabels=c,e.minimumInputLength=2,e.findDelay=300,e.label=null}angular.module("udb.management.roles").component("udbSearchLabel",{templateUrl:"templates/search-label.html",controller:a,controllerAs:"select",bindings:{labelAdded:"&",labelRemoved:"&"}}),a.$inject=["LabelManager"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueRole=g}}}angular.module("udb.management.roles").directive("udbUniqueRole",a),a.$inject=["RoleManager","$q"]}(),function(){"use strict";function a(a){function b(a,b){return{query:a,offset:b}}function c(a){return function(b){return(b-1)*a}}var d=function(d,e,f,g,h){h=h||"",this.searchService=d,this.itemsPerPage=g,this.query$=e.debounce(300).startWith(h),this.offset$=f.map(c(g)).startWith(0),this.searchParameters$=a.Observable.combineLatest(this.query$,this.offset$,b)};return d.prototype.constructor=d,d.prototype.find=function(b){var c=this;return a.Observable.fromPromise(c.searchService.find(b.query,c.itemsPerPage,b.offset))["catch"](function(b){return a.Observable.just({error:b})})},d.prototype.getSearchResult$=function(){var a=this;return a.searchParameters$.flatMap(a.find.bind(a))},d}angular.module("udb.management").factory("SearchResultGenerator",a),a.$inject=["rx"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.resolve({"@context":"http://www.w3.org/ns/hydra/context.jsonld","@type":"PagedCollection",itemsPerPage:10,totalItems:0,member:[],firstPage:"http://du.de/items?page=1",lastPage:"http://du.de/items?page=1",nextPage:"http://du.de/items?page=1"})}}angular.module("udb.management").service("SearchService",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b,c,d){function e(b){a.findUserWithEmail(b).then(function(b){f(b),a.getRoles(b.uuid).then(g)})}function f(a){j.user=a}function g(a){j.roles=a}function h(a){return d.when(a.task.promise)}function i(a){return a.perform()["catch"](a.undo)}var j=this,k=c.email;e(k),j.deleteRole=function(a){var c={role:a,style:"list-group-item-danger",perform:_.once(function(){return b.removeUserFromRole(a,j.user).then(h)}),undo:function(){console.log("¯\\_(ツ)_/¯")}};j.queueAction(c)},j.queueAction=function(a){var b=j.actions?j.actions:[];j.getRoleAction(a.role)||(b.push(a),j.actions=b)},j.getRoleStyle=function(a){var b=j.getRoleAction(a);return b?b.style:null},j.getRoleAction=function(a){return _.find(j.actions,{role:{uuid:a.uuid}})},j.lookupRoles=function(a){return b.find(a,20).then(function(a){return _.reject(a.member,function(a){return _.find(j.roles,{uuid:a.uuid})})})},j.addRole=function(a){if(!_.find(j.roles,{uuid:a.uuid})){j.roles.push(a),j.roleLookupName="";var c={role:a,style:"list-group-item-success",perform:_.once(function(){return b.addUserToRole(j.user,a).then(h); -}),undo:function(){j.roles=_.reject(j.roles,{uuid:a.uuid})}};j.queueAction(c)}},j.save=function(){j.saving=!0;var a=_.map(j.actions,i);d.all(a).then(function(){e(k),j.saving=!1,j.actions=[]})},j.undoAction=function(a){var b=j.getRoleAction(a);b.undo(),j.actions=_.reject(j.actions,{role:{uuid:a.uuid}})}}angular.module("udb.management.users").controller("UserEditorController",a),a.$inject=["UserManager","RoleManager","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.findUserWithEmail=function(b){return a.findUserWithEmail(b)},b.getRoles=function(b){return a.getUserRoles(b)}}angular.module("udb.management.users").service("UserManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){e.status="problem",e.problem=a}function d(){e.status="idle",e.problem=!1}var e=this;e.status="idle",e.query="",e.problem="",e.handleChange=function(){"problem"===e.status&&d()},e.handleSubmit=function(){e.status="loading",a.findUserWithEmail(e.query).then(function(a){e.status="idle",b.path("/manage/users/"+a.email)},function(a){404===a.status?e.status="notFound":c(a.title)})}}angular.module("udb.management.users").controller("UsersListController",a),a.$inject=["UserManager","$location"]}(),function(){"use strict";function a(a,b,c,d){var e=this;e.createImage=function(a,b,f,g){function h(a){return a.split("/").pop()}function i(a){return l.indexOf(a)>=0}function j(a){e.getImage(a.data.imageId).then(k.resolve,k.reject)}var k=c.defer(),l=["png","jpeg","jpg","gif"];return i(h(a.type))?d.uploadMedia(a,b,f,g).then(j,k.reject):k.reject({data:{title:"The uploaded file is not an image."}}),k.promise},e.getImage=function(a){function b(b){var d=b;return d.id=a,c.resolve(d)}return d.getMedia(a).then(b)}}angular.module("udb.media").service("MediaManager",a),a.$inject=["jobLogger","appConfig","$q","udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(){f()&&c.go(g.destination.state,{id:a.id})}function f(){return!!_.get(a,"location.id")}var g=this;g.completeMigration=e;var h={description:d.instant("eventForm.step4.continue"),state:"split.eventEdit"};g.destination=b.destination||h,g.migrationReady=f}angular.module("udb.migration").component("udbEventMigrationFooter",{templateUrl:"templates/event-migration-footer.component.html",controller:a,controllerAs:"migration"}),a.$inject=["EventFormData","$stateParams","$state","$translate"]}(),function(){"use strict";function a(){function a(a){return!!_.get(a,"location.id")}var b=this,c={location:a};b.checkRequirements=function(a){var b=_(c).pick(function(b){return!b(a)}).keys();return b.value()}}angular.module("udb.migration").service("eventMigration",a)}(),function(){"use strict";function a(a){function b(b){a.translateAddress(c.offer,b,c.translatedAddresses[b])}var c=this;c.translatedAddresses={},c.originalAddress=_.get(c.offer.address,c.offer.mainLanguage,"")||_.get(c.offer.address,"nl","")||_.get(c.offer,"address",""),c.translatedAddresses=_.get(c.offer,"address"),_.forEach(c.activeLanguages,function(a,b){void 0===c.translatedAddresses[b]&&(c.translatedAddresses[b]={postalCode:c.originalAddress.postalCode,addressLocality:c.originalAddress.addressLocality,addressCountry:c.originalAddress.addressCountry})}),c.saveTranslatedAddress=b}angular.module("udb.offer-translate").component("offerTranslateAddress",{templateUrl:"templates/translate-address.html",controller:a,controllerAs:"tac",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"description",b,c.translatedDescriptions[b]).then(function(){})}var c=this;c.translatedDescriptions={},c.originalDescription=_.get(c.offer.description,c.offer.mainLanguage,"")||_.get(c.offer.description,"nl","")||_.get(c.offer,"description",""),c.originalDescription=_.isEmpty(c.originalDescription)?"":c.originalDescription,c.translatedDescriptions=_.get(c.offer,"description"),c.saveTranslatedDescription=b}angular.module("udb.offer-translate").component("offerTranslateDescription",{templateUrl:"templates/translate-description.html",controller:a,controllerAs:"ttd",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d){function e(b){d.mainLanguage=b;a.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController",resolve:{EventFormData:function(){return d}}})}function f(a,b){var d=null,e=new XMLHttpRequest;e.open("GET",a.contentUrl),e.responseType="blob",e.onload=function(){d=e.response,c.createImage(d,a.description,a.copyrightHolder,b).then(i,j)},e.send()}function g(b){a.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{EventFormData:function(){return d},mediaObject:function(){return b}}})}function h(b){a.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{EventFormData:function(){return d},image:function(){return b}}})}function i(a){function c(){d.addImage(a)}b.addImage(d,a).then(c,j)}function j(a){var b=a.data.title,c="Er ging iets mis bij het opslaan van de afbeelding.";switch(b){case"The uploaded file is not an image.":c="Het geüpload bestand is geen geldige afbeelding. Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.";break;case"The file size of the uploaded image is too big.":c="Het geüpload bestand is te groot."}k.saving=!1,k.error=c}var k=this;d.init(),k.eventFormData=d,k.offer.mediaObject&&(d.mediaObjects=k.offer.mediaObject||[]),d.name=k.offer.name,d.apiUrl=k.offer.apiUrl,d.mainLanguage=k.offer.mainLanguage,k.openUploadImageModal=e,k.removeImage=h,k.editImage=g,k.copyImage=f}angular.module("udb.offer-translate").component("offerTranslateImages",{templateUrl:"templates/translate-images.html",controller:a,controllerAs:"tic",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["$uibModal","eventCrud","MediaManager","EventFormData"]}(),function(){"use strict";function a(a){function b(){for(var b in e.offer.priceInfo)if(b>0){var c={};c[e.offer.mainLanguage]=e.originalTariffs[b-1],e.offer.priceInfo[b].name=_.merge(c,e.translatedTariffs[b-1])}a.updatePriceInfo(e.offer)}function c(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name[e.offer.mainLanguage]?e.offer.priceInfo[b].name[e.offer.mainLanguage]:e.offer.priceInfo[b].name);return a}function d(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name);return a}var e=this;e.translatedTariffs=[],e.originalTariffs=c(),e.translatedTariffs=d(),e.saveTranslatedTariffs=b}angular.module("udb.offer-translate").component("offerTranslateTariffs",{templateUrl:"templates/translate-tariffs.html",controller:a,controllerAs:"ttsc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["eventCrud"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"name",b,c.translatedNames[b]).then(function(){})}var c=this;c.translatedNames={},c.originalName=_.get(c.offer.name,c.offer.mainLanguage,null)||_.get(c.offer.name,"nl",null)||_.get(c.offer,"name",""),c.translatedNames=_.get(c.offer,"name"),c.saveTranslatedName=b}angular.module("udb.offer-translate").component("offerTranslateTitle",{templateUrl:"templates/translate-title.html",controller:a,controllerAs:"ttc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(b){a.language=f.use()||"nl",a.cachedOffer=b,a.apiUrl=b.apiUrl,a.mainLanguage=b.mainLanguage?b.mainLanguage:"nl",a.translatedOffer=d(b,a.language,!0),a.originalName=a.translatedOffer.name,a.offerType=b.url.split("/").shift(),"event"===a.offerType?(a.isEvent=!0,a.isPlace=!1):(a.isEvent=!1,a.isPlace=!0),_.forEach(a.cachedOffer.name,function(b,c){a.activeLanguages[c]&&(a.activeLanguages[c].active=!0)}),a.activeLanguages[a.mainLanguage].main=!0,a.loaded=!0}function i(){console.log("offer not found")}function j(a){a?c.getOffer(a).then(h):i()}function k(){var b=a.cachedOffer.id.toString(),c=b.split("/").pop();g.go("split.eventEdit",{id:c})}function l(){g.go("split.footer.dashboard")}a.apiUrl="",a.loaded=!1,a.mainLanguage="",a.languages=["nl","fr","en","de"],a.activeLanguages={nl:{active:!1,main:!1},fr:{active:!1,main:!1},en:{active:!1,main:!1},de:{active:!1,main:!1}},a.openEditPage=k,a.goToDashboard=l,e.when(b).then(j,i)}angular.module("udb.offer-translate").controller("OfferTranslateController",a),a.$inject=["$scope","offerId","udbApi","jsonLDLangFilter","$q","$translate","$state"]}(),function(){"use strict";function a(){return{templateUrl:"templates/offer-translate.html",restrict:"EA"}}angular.module("udb.offer-translate").directive("udbOfferTranslate",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){s.availableCountries=e.offerEditor.countries,s.defaultCountry=_.find(s.availableCountries,function(a){return a["default"]}),s.selectedCountry=s.defaultCountry,""!==s.address.addressCountry?s.selectedCountry={code:s.address.addressCountry,"default":!0}:s.selectedCountry=s.defaultCountry,s.address.addressCountry=s.selectedCountry.code,s.cities="BE"===s.selectedCountry.code?c:d,s.selectedCity="",s.requiredAddress=!1,s.address.addressLocality&&(s.hasAddress=!0,s.selectedCity=s.address.postalCode+" "+s.address.addressLocality,s.requiredAddress=!0)}function i(){s.streetHasErrors=!1,s.cityHasErrors=!1,s.zipValidateError=!1,s.zipHasErrors=!1,s.addressHasErrors=!1,s.addressRemovedError=!1,s.addressRemovedSuccess=!1}function j(){i(),s.requiredAddress?((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))):(""!==s.selectedCity&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),""!==s.address.streetAddress&&(""===s.selectedCity&&(s.cityHasErrors=!0),(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),"NL"===s.selectedCountry.code&&""!==s.address.postalCode&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),s.zipValidateError=!k(s.address.postalCode))),r()}function k(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function l(a){return function(b){var c=(a.length,a.match(/\w+/g)),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}}function m(a){return function(c){return new b(a,c.label)}}function n(a,b){"BE"===s.selectedCountry.code&&(s.address.postalCode=a.zip),s.address.addressLocality=a.name,s.cityAutocompleteTextField="",s.selectedCity=b,j()}function o(){s.address.postalCode="",s.address.addressLocality="",s.selectedCity="",s.cityAutocompleteTextField="",j()}function p(){"NL"===s.selectedCountry.code?s.cities=d:s.cities=c,s.address.addressCountry=s.selectedCountry.code,o()}function q(){s.address.streetAddress="",o(),g.removeOrganizerAddress(t).then(function(a){s.hasAddress=!1,s.addressRemovedSuccess=!0})["catch"](function(a){s.addressRemovedError=!0})}function r(){s.addressHasErrors=s.streetHasErrors||s.cityHasErrors||s.zipHasErrors||s.zipValidateError,s.onUpdate({error:s.addressHasErrors})}var s=this,t=f.id;s.streetHasErrors=!1,s.cityHasErrors=!1,s.addressHasErrors=!1,s.zipHasErrors=!1,s.zipValidateError=!1,s.validateAddress=j,s.filterCities=l,s.orderByLevenshteinDistance=m,s.selectCity=n,s.changeCitySelection=o,s.changeCountrySelection=p,s.clearAddressInfo=q,s.$onInit=h,a.$on("organizerAddressSubmit",function(){s.organizerAddressForm.$setSubmitted(),i(),j()})}angular.module("udb.organizers").component("udbOrganizerAddress",{templateUrl:"templates/organizer-address.html",controller:a,controllerAs:"oac",bindings:{address:"=",onUpdate:"&"}}),a.$inject=["$scope","Levenshtein","citiesBE","citiesNL","appConfig","$stateParams","OrganizerManager"]}(),function(){"use strict";function a(a,b){function c(){_.find(j.contact,{value:""})||_.find(j.contact,{value:void 0})||j.organizerContactWrapper.$invalid&&j.organizerContactWrapper.$dirty?j.contactHasErrors=!0:j.contactHasErrors=!1,i()}function d(){j.newContact={type:"",value:""}}function e(a){j.newContact={type:a,value:""},j.isPristine=!0,j.addingContactEntry=!0}function f(){d(),j.addingContactEntry=!1,j.isPristine=!0}function g(){c(),j.contactHasErrors||(j.contact.push(j.newContact),d(),j.addingContactEntry=!1,j.isPristine=!0,i())}function h(a){j.contact.splice(a,1),c()}function i(){j.onUpdate({error:j.contactHasErrors})}var j=this;j.newContact={},j.addingContactEntry=!1,j.isPristine=!0,j.validateContact=c,j.addOrganizerContactEntry=e,j.cancelOrganizerContactEntry=f,j.addOrganizerContactInfo=g,j.deleteOrganizerContactInfo=h,j.sendUpdate=i,j.contactUrlRegex=(new b).regex.url,a.$on("organizerContactSubmit",function(){j.organizerContactWrapper.$setSubmitted()}),a.$watch(function(){return j.newContact},function(a){a&&a.value&&""!==a.value&&(j.isPristine=!1)},!0)}angular.module("udb.organizers").component("udbOrganizerContact",{templateUrl:"templates/organizer-contact.html",controller:a,controllerAs:"occ",bindings:{contact:"=",onUpdate:"&"}}),a.$inject=["$scope","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(b){a.get(b).then(h),f.getOrganizerPermissions(b).then(function(a){u.permissions=a.permissions})}function h(a){u.organizer=a}function i(b){u.labelSaving=!0,l(),a.addLabelToOrganizer(v,b.name)["catch"](r)["finally"](function(){u.labelSaving=!1,k()})}function j(b){u.labelSaving=!0,l(),k(),a.deleteLabelFromOrganizer(v,b.name)["catch"](q)["finally"](function(){u.labelSaving=!1})}function k(){a.removeOrganizerFromCache(v)}function l(){u.labelResponse="",u.labelsError=""}function m(){return-1!==w.indexOf("manage")}function n(){d.path("/manage/organizations")}function o(){p(u.organizer)}function p(a){var c=b.open({templateUrl:"templates/organization-delete.modal.html",controller:"OrganizationDeleteModalController",controllerAs:"odc",resolve:{organization:function(){return a}}});c.result.then(n)}function q(a){g(v),u.labelResponse="unlabelError",u.labelsError=a.title}function r(a){u.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return u.errorMessage}}})}function s(){return u.organizer&&!u.loadingError}function t(){return-1!==u.permissions.indexOf("Organisaties bewerken")}var u=this,v=c.id,w=e.current.name;u.labelSaving=!1,u.addLabel=i,u.deleteLabel=j,u.labelResponse="",u.labelsError="",u.deleteOrganization=o,u.isManageState=m,u.finishedLoading=s,u.canEdit=t,u.permissions=[],g(v)}angular.module("udb.organizers").controller("OrganizerDetailController",a),a.$inject=["OrganizerManager","$uibModal","$stateParams","$location","$state","udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){x.organizer={mainLanguage:A,website:"http://",name:"",address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},x.showAddressComponent=!0}function k(b){a.removeOrganizerFromCache(b),a.get(b).then(l,function(){x.loadingError=!0})["finally"](function(){x.showAddressComponent=!0})}function l(a){_.isEmpty(a.address)&&(a.address={streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""}),x.organizer=a,B=_.cloneDeep(a),x.originalName=B.name,null!==x.organizer.contactPoint&&(_.forEach(x.organizer.contactPoint,function(a,b){_.forEach(a,function(a){x.contact.push({type:b,value:a})})}),C=_.cloneDeep(x.contact))}function m(){return x.showWebsiteValidation=!0,x.organizerForm.website.$valid?void b.findOrganizersWebsite(x.organizer.website).then(function(a){x.urlError=!1,a.totalItems>0?a.member[0].name===x.originalName?(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1):(x.organizersWebsiteFound=!0,x.showWebsiteValidation=!1):(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1)},function(){x.websiteError=!0,x.showWebsiteValidation=!1})["finally"](function(){r()}):(x.showWebsiteValidation=!1,void(x.urlError=!0))}function n(){x.organizerForm.name.$valid?x.nameError=!1:x.nameError=!0,r()}function o(a){x.addressError=a,r()}function p(a){x.contactError=a,r()}function q(){return x.showValidation=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError?(x.hasErrors=!0,x.disableSubmit=!0,f.$broadcast("organizerAddressSubmit"),void f.$broadcast("organizerContactSubmit")):void(x.isNew?t():s())}function r(){D=!_.isEqual(x.organizer.website,B.website),E=!_.isEqual(x.organizer.name,B.name),F=!_.isEqual(x.organizer.address,B.address)&&!_.isEmpty(x.organizer.address.streetAddress),G=!_.isEqual(x.contact,C),D||E||F||G?x.disableSubmit=!1:x.disableSubmit=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError||(x.hasErrors=!1)}function s(){var b=[];D&&b.push(a.updateOrganizerWebsite(y,x.organizer.website)),E&&b.push(a.updateOrganizerName(y,x.organizer.name,A)),F&&b.push(a.updateOrganizerAddress(y,x.organizer.address,A)),G&&b.push(a.updateOrganizerContact(y,x.contact)),b.push(a.removeOrganizerFromCache(y)),e.all(b).then(function(){v()})["catch"](function(){x.hasErrors=!0,x.saveError=!0})}function t(){var b=_.clone(x.organizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,h.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&a.addLabelToOrganizer(b.data.organizerId,c),x.organizer.id=b.data.organizerId,v()},function(){x.hasErrors=!0,x.saveError=!0})}function u(){w()?c.go("management.organizers.search",{},{reload:!0}):c.go("split.footer.dashboard",{},{reload:!0})}function v(){a.removeOrganizerFromCache(x.organizer.id),c.go("split.organizerDetail",{id:x.organizer.id},{reload:!0})}function w(){return-1!==z.indexOf("manage")}var x=this,y=d.id,z=c.current.name,A=g.use()||"nl";x.language=A,x.showAddressComponent=!1,x.isNew=!0,x.loadingError=!1,x.contact=[],x.showWebsiteValidation=!1,x.urlError=!1,x.websiteError=!1,x.nameError=!1,x.addressError=!1,x.contactError=!1,x.hasErrors=!1,x.disableSubmit=!0,x.saveError=!1,x.validateWebsite=m,x.validateName=n,x.validateAddress=o,x.validateContact=p,x.checkChanges=r,x.validateOrganizer=q,x.cancel=u,x.isManageState=w;var B={},C=[],D=!1,E=!1,F=!1,G=!1;y?(x.isNew=!1,k(y)):j()}a.$inject=["OrganizerManager","udbOrganizers","$state","$stateParams","$q","$scope","$translate","eventCrud","appConfig"],angular.module("udb.organizers").controller("OrganizerFormController",a)}(),function(){"use strict";function a(a){var b=this;b["delete"]=function(b){return a.deleteOrganization(b)},b.find=function(b,c,d){return a.findOrganisations(d,c,null,b)},b.get=function(b){return a.getOrganizerById(b)},b.addLabelToOrganizer=function(b,c){return a.addLabelToOrganizer(b,c)},b.deleteLabelFromOrganizer=function(b,c){return a.deleteLabelFromOrganizer(b,c)},b.removeOrganizerFromCache=function(b){return a.removeItemFromCache(b)},b.updateOrganizerWebsite=function(b,c){return a.updateOrganizerWebsite(b,c)},b.updateOrganizerName=function(b,c,d){return a.updateOrganizerName(b,c,d)},b.updateOrganizerAddress=function(b,c,d){return a.updateOrganizerAddress(b,c,d)},b.removeOrganizerAddress=function(b){return a.removeOrganizerAddress(b)},b.updateOrganizerContact=function(b,c,d){return a.updateOrganizerContact(b,c,d)}}angular.module("udb.organizers").service("OrganizerManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/place-detail.html",restrict:"EA",controller:PlaceDetail}}angular.module("udb.place-detail").directive("udbPlaceDetail",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(b){var c=b[0],d=b[1];n.getPermissions().then(function(b){a.isGodUser=_.filter(b,function(a){return a===m.GEBRUIKERS_BEHEREN}).length>0,a.isGodUser?a.permissions={editing:!0,duplication:!0}:c?a.permissions={editing:!d.isExpired(),duplication:!0}:a.permissions={editing:!1,duplication:!1},p()})}function p(){a.isGodUser?a.tabs=[{id:"data"},{id:"history"},{id:"publication"}]:a.tabs=[{id:"data"},{id:"publication"}]}function q(b){B=b,a.place=e(b,A,!0),a.placeIdIsInvalid=!1,"object"==typeof a.place.description&&(a.place.description=a.place.description[A],void 0===a.place.description&&(a.place.description="")),a.finishedLoading=!0,b.typicalAgeRange.indexOf("-")===b.typicalAgeRange.length-1?a.ageRange=b.typicalAgeRange.slice(0,-1)+"+":a.ageRange=b.typicalAgeRange}function r(b){a.placeIdIsInvalid=!0}function s(a){function b(a,b){var c=g.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return b}}});c.result.then(z.goToDashboard)}f.findEventsAtPlace(a.apiUrl).then(function(c){b(a,c)})}function t(b){a.placeHistory=b}function u(b){var c=_.find(B.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?i.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):j.label(B,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.place.labels=angular.copy(B.labels)})}function v(){a.labelResponse="",a.labelsError=""}function w(b){a.place.labels=angular.copy(B.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function x(a){v(),j.unlabel(B,a.name)["catch"](w)}var y="data",z=this,A=l.use()||"nl";a.isOmdApp=!!_.get(k,"omdSpecific",!1),h.when(b,function(b){a.placeId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(q,r),h.all([e,d]).then(o)}),a.placeIdIsInvalid=!1,a.labelAdded=u,a.labelRemoved=x,a.labelResponse="",a.labelsError="",a.finishedLoading=!1,a.placeHistory=void 0,a.deletePlace=function(){s(a.place)},a.language=A;var B;a.placeLocation=function(a){return a.address.addressLocality?a.address.addressLocality:""},a.isTabActive=function(a){return a===y},a.makeTabActive=function(b){if(y=b,"history"===b&&!a.placeHistory){var d=a.placeId.split("/").pop();c.getHistory(d,"place").then(t)}},a.openEditPage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeEdit",{id:c})},a.openTranslatePage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeTranslate",{id:c})},z.goToDashboard=function(){d.go("split.footer.dashboard")},a.translateType=function(a){var b=l.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}}angular.module("udb.place-detail").controller("PlaceDetailController",a),a.$inject=["$scope","placeId","udbApi","$state","jsonLDLangFilter","eventCrud","$uibModal","$q","$window","offerLabeller","appConfig","$translate","RolePermission","authorizationService"]}(),function(){"use strict";function a(a,b){function c(a,b){g[a]=b}function d(a){_.each(a.member,function(a){var b=a["@id"],d=b.split("/").pop();c(d,b)})}function e(b){var c=g[b];return c?a.resolve(c):f(b)}function f(d){function e(a){if(1===a.totalItems){var b=a.member[0]["@id"];c(d,b),f.resolve(b)}else f.reject("Unable to determine the exact offer for this uuid.")}var f=a.defer(),g='id:"'+d+'"',h=0,i=!0;return b.findOffers(g,h,i).then(e)["catch"](f.reject),f.promise}var g={};this.get=e,this.add=c,this.addPagedCollection=d}angular.module("udb.router").service("offerLocator",a),a.$inject=["$q","udbApi"]}(),function(){"use strict";function a(a,b){var c=function(){b.close()},d=function(){b.dismiss("cancel")};a.cancel=d,a.confirm=c}angular.module("udb.saved-searches").controller("DeleteSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b){var c=function(){var c=a.queryName;a.wasSubmitted=!0,c&&b.close(c)},d=function(){b.dismiss("cancel")};a.cancel=d,a.ok=c,a.queryName="",a.wasSubmitted=!1}angular.module("udb.saved-searches").controller("SaveSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b){function c(c,e,f,g){c.saveSearch=function(){var e=b.open({templateUrl:"templates/save-search-modal.html",controller:"SaveSearchModalController"});e.result.then(function(b){a.createSavedSearch(b,c.queryString)["catch"](d)})}}function d(){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het opslaan van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})}var e={link:c,templateUrl:"templates/save-search.directive.html",restrict:"AE",scope:{queryString:"=udbQueryString"}};return e}angular.module("udb.saved-searches").directive("udbSaveSearch",a),a.$inject=["savedSearchesService","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){e.$emit("savedSearchesChanged",i)}var i=[],j=this;j.createSavedSearch=function(b,c){return f.createSavedSearch(b,c).then(function(){return i.push({name:b,query:c}),h(),a.resolve()})},j.getSavedSearches=function(){return f.getSavedSearches().then(function(b){var c=b.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=g.instant(b);return c!==b&&(a.name=c),a});return i=c,a.resolve(c)})},j.deleteSavedSearch=function(b){return f.deleteSavedSearch(b).then(function(){return _.remove(i,{id:b}),h(),a.resolve()})}}angular.module("udb.saved-searches").service("savedSearchesService",a),a.$inject=["$q","$http","$cookies","appConfig","$rootScope","udbApi","$translate"]}(),function(){"use strict";function a(a,b,c,d){a.savedSearches=[],a.editorOptions={mode:"solr",lineWrapping:!0,readOnly:!0},a.codemirrorLoaded=function(a){a.on("focus",function(){a.execCommand("selectAll")}),a.on("blur",function(){a.setCursor(0,0,!0)})};var e=b.getSavedSearches();e.then(function(b){a.savedSearches=b}),d.$on("savedSearchesChanged",function(b,c){a.savedSearches=c}),this.encodeURI=function(a){return encodeURIComponent(a)},a.encodeURI=this.encodeURI,this.deleteSavedSearch=function(a){var d=c.open({templateUrl:"templates/delete-search-modal.html",controller:"DeleteSearchModalController"});d.result.then(function(){var d=b.deleteSavedSearch(a);d["catch"](function(){c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het verwijderen van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})})})},a.deleteSavedSearch=this.deleteSavedSearch}angular.module("udb.saved-searches").controller("SavedSearchesListController",a),a.$inject=["$scope","savedSearchesService","$uibModal","$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-link.directive.html"};return a}angular.module("udb.event-form").directive("udbEventLink",a)}(),function(){"use strict";function a(a,b){function c(a){m.labels=f(_.get(a,"labels.currentValue",m.labels))}function d(a){m.currentLabel="",m.labelAdded({label:a}),m.labels.push(a)}function e(a){m.currentLabel="",m.labelRemoved({label:a}),m.labels=_.without(m.labels,a)}function f(a){return _.map(m.labels,function(a){return _.isString(a)?{name:a}:a})}function g(a){return a>=m.minimumInputLength&&a<=m.maxInputLength}function h(a){return m.regex.test(a)}function i(a){if(h(a)){var b=_.find(m.labels,function(b){return b.name.toUpperCase()===a.toUpperCase()});if(!b&&m.areLengthCriteriaMet(a.length)&&m.areContentCriteriaMet(a))return{name:a}}}function j(b){return a.getSuggestions(b,6).then(function(a){return a.push({name:b}),l(a)})}function k(a){return h(a)?(l([]),j(a)):void l([])}function l(a){return m.availableLabels=_.chain(a).filter(function(a){return h(a.name)}).reject(function(a){return _.find(m.labels,{name:a.name})}).uniq(function(a){return a.name.toUpperCase()}).value(),m.availableLabels}var m=this;m.availableLabels=[],m.suggestLabels=k,m.createLabel=i,m.areLengthCriteriaMet=g,m.areContentCriteriaMet=h,m.labels=f(m.labels),m.hiddenLabels=["new-entry-form","ook voor jongeren","ook voor kinderen"],m.minimumInputLength=2,m.maxInputLength=50,m.currentLabel="",m.onSelect=d,m.onRemove=e,m.$onChanges=c,m.regex=/^([a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]{1}[a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ_-\s]+)$/}angular.module("udb.search").component("udbLabelSelect",{templateUrl:"templates/label-select.html",controller:a,controllerAs:"select",bindings:{labels:"<",labelAdded:"&",labelRemoved:"&"}}),a.$inject=["offerLabeller","$q"]}(),function(){"use strict";function a(a,b){var c=this;c.changeFacilities=function(){b.open({templateUrl:"templates/search-facilities-modal.html",controller:"SearchFacilitiesModalController",resolve:{offer:function(){return c.offer},facilities:function(){return"place"===c.offerType?_.pick(a,"place"):_.omit(a,"place")}}})}}angular.module("udb.search").component("udbOfferAccessibilityInfo",{templateUrl:"templates/offer-accessibility-info.component.html",controller:a,bindings:{offerType:"<",offer:"="}}),a.$inject=["facilities","$uibModal"]}(),function(){"use strict";function a(a,b){return{templateUrl:"templates/query-editor-daterangepicker.directive.html",restrict:"E",link:function(c,d,e){var f={startOpened:!1,endOpened:!1,dateFormat:"dd/MM/yyyy"};a(["datepicker.CURRENT","datepicker.CLEAR","datepicker.CLOSE"]).then(function(a){b.currentText=a["datepicker.CURRENT"],b.clearText=a["datepicker.CLEAR"],b.closeText=a["datepicker.CLOSE"]}),f.openStart=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!0,f.endOpened=!1},f.openEnd=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!1,f.endOpened=!0},c.drp=f}}}function b(){return{restrict:"EAC",require:"ngModel",link:function(a,b,c,d){d.$formatters.shift()}}}angular.module("udb.search").directive("udbQueryEditorDaterangepicker",a),a.$inject=["$translate","uibDatepickerPopupConfig"],angular.module("udb.search").directive("datepickerPopup",b)}(),function(){"use strict";function a(a){function b(){var b;return b=d()?a.$parent.field:a.rootGroup}function c(){var b;return b=d()&&0===a.$index?"AND":a.$index?"OR":"FIRST"}function d(){var b=a.$parent;return"group"===b.field.type}function e(){var b=a.rootGroup;return b.nodes.length>1}a.addField=function(c){a.qe.addField(b(),c)},a.removeField=function(c){a.qe.removeField(b(),c,a.rootGroup)},a.addSubGroup=function(c){var e=a.rootGroup,f=_.uniqueId(),g=b();g.treeGroupId=f,d()&&(c=_.findIndex(e.nodes,function(a){return a.treeGroupId===f})),a.qe.addSubGroup(e,c)},a.isSubGroup=d,a.getOperatorClass=c,a.canRemoveField=e}angular.module("udb.search").controller("QueryEditorFieldController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor-field.directive.html",restrict:"E",controller:"QueryEditorFieldController"}}angular.module("udb.search").directive("udbQueryEditorField",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){var k=this;k.fieldOptions=_.filter(a,"editable");var l=_.chain(k.fieldOptions).map(function(a){return a.group}).uniq().value();_.forEach(k.fieldOptions,function(a){var b="queryFieldLabel."+a.name,c="queryFieldGroup."+a.group;g([b,c]).then(function(d){a.label=d[b],a.groupIndex=_.indexOf(l,a.group),a.groupLabel=d[c]})}),k.getDefaultQueryTree=function(){return{type:"root",nodes:[{type:"group",operator:"OR",nodes:[{name:"title",field:"name.\\*",term:"",fieldType:"tokenized-string",transformer:"+"}]}]}},k.groupedQueryTree=f.getQueryTree()||k.getDefaultQueryTree(),k.transformers={},k.termOptions=_.groupBy(c,function(a){return"category_"+a.domain+"_name"; -}),k.termOptions.locationtype=j,k.termOptions.nisRegions=d,k.termOptions.category_eventtype_name=i,_.forEach(a,function(a){"choice"===a.type&&(k.termOptions[a.name]=a.options),k.transformers[a.name]=e[a.type]}),k.updateQueryString=function(){f.setQueryTree(k.groupedQueryTree),h.$emit("searchSubmitted"),k.stopEditing()},k.stopEditing=function(){h.$emit("stopEditingQuery")},k.addField=function(a,b){var c=b+1,d={field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"};a.nodes.splice(c,0,d),a.nodes.length&&(a.type="group")},k.removeField=function(a,b,c){c.nodes.length>1&&a.nodes.splice(b,1),k.cleanUpGroups()},k.cleanUpGroups=function(){k.removeEmptyGroups(),k.unwrapSubGroups()},k.unwrapSubGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){var b=a.nodes[0];if(b.nodes){var c=b.nodes;a.nodes.splice(0,1),_.forEach(c,function(b,c){a.nodes.splice(c,0,b)})}})},k.removeEmptyGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){_.remove(a.nodes,function(a){return a.nodes&&0===a.nodes.length})})},k.toggleExcludeGroup=function(a){a.excluded=!a.excluded},k.canRemoveGroup=function(){return!k.hasSingleGroup()},k.removeGroup=function(a){if(k.canRemoveGroup()){var b=k.groupedQueryTree,c=b.nodes[a];k.canRemoveGroup()&&c&&b.nodes.splice(a,1)}},k.resetGroups=function(){k.groupedQueryTree=k.getDefaultQueryTree()},k.addGroup=function(){var a=k.groupedQueryTree,b={type:"group",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.push(b)},k.addSubGroup=function(a,b){var c={type:"group",operator:"AND",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.splice(b+1,0,c)},k.fieldTypeSelected=function(b){var c=b.name,d=_.find(a,function(a){return a.name===c});d&&(b.field=d.field),b.fieldType!==d.type&&("date-range"===d.type?(b.lowerBound=moment().startOf("day").toDate(),b.upperBound=moment().endOf("day").toDate(),b.inclusive=!0):(b.term="",b.lowerBound=void 0,b.upperBound=void 0,b.inclusive=void 0),"check"===d.type&&(b.term=d.name),"number"===d.type&&(b.inclusive=!0),b.transformer&&_.contains(e[d.type],b.transformer)||(b.transformer=_.first(e[d.type])),b.fieldType=d.type)},k.hasSingleGroup=function(){return 1===k.groupedQueryTree.nodes.length}}angular.module("udb.search").controller("QueryEditorController",a),a.$inject=["queryFields","LuceneQueryBuilder","taxonomyTerms","sapi3CitiesBE","fieldTypeTransformers","searchHelper","$translate","$rootScope","eventTypes","placeTypes"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor.directive.html",restrict:"EA",controllerAs:"qe",controller:"QueryEditorController"}}angular.module("udb.search").directive("udbQueryEditor",a)}(),function(){"use strict";function a(a,b,c,d,e){return{templateUrl:"templates/search-bar.directive.html",restrict:"E",link:function(f,g,h){function i(a){return a.map(function(a){if(0===a.indexOf("Expected "))return d.instant("search.advancedQueryBuilder.syntaxError");var b=" is not a valid search field";if(-1!==a.indexOf(b)){var c=a.split(b)[0];return d.instant("search.advancedQueryBuilder.invalidField",{field:c})}return a})}function j(a){l.savedSearches=_.take(a,5)}var k,l={queryString:"",hasErrors:!1,errors:[],isEditing:!1,savedSearches:[]};l.editQuery=function(){b.$emit("startEditingQuery"),l.isEditing=!0,k=c.open({templateUrl:"templates/query-editor-modal.html",controller:"QueryEditorController",controllerAs:"qe",size:"lg"})},l.find=function(c){var d="undefined"!=typeof c?c:l.queryString;l.queryString=d,a.setQueryString(d),b.$emit("searchSubmitted")},l.queryChanged=function(){a.clearQueryTree()},f.sb=l,l.updateQuery=function(a,b){l.queryString=b.queryString,b.errors&&b.errors.length?(f.sb.hasErrors=!0,f.sb.errors=i(b.errors)):(f.sb.hasErrors=!1,f.sb.errors=[])},e.getSavedSearches().then(j);var m=b.$on("savedSearchesChanged",function(a,b){j(b)}),n=b.$on("stopEditingQuery",function(){f.sb.isEditing=!1,k&&k.dismiss()}),o=b.$on("searchQueryChanged",l.updateQuery);f.$on("$destroy",m),f.$on("$destroy",n),f.$on("$destroy",o)}}}angular.module("udb.search").directive("udbSearchBar",a),a.$inject=["searchHelper","$rootScope","$uibModal","$translate","savedSearchesService"]}(),function(){"use strict";angular.module("udb.search").value("eventTypes",[{label:"Begeleide uitstap of rondleiding",id:"0.7.0.0.0"},{label:"Beurs",id:"0.6.0.0.0"},{label:"Concert",id:"0.50.4.0.0"},{label:"Lessenreeks",id:"0.3.1.0.0"},{label:"Cursus met open sessies",id:"0.3.1.0.1"},{label:"Dansvoorstelling",id:"0.54.0.0.0"},{label:"Eet- of drankfestijn",id:"1.50.0.0.0"},{label:"Festival",id:"0.5.0.0.0"},{label:"Film",id:"0.50.6.0.0"},{label:"Kamp of vakantie",id:"0.57.0.0.0"},{label:"Festiviteit",id:"0.28.0.0.0"},{label:"Lezing of congres",id:"0.3.2.0.0"},{label:"Markt, braderie of kermis",id:"0.37.0.0.0"},{label:"Opendeurdag",id:"0.12.0.0.0"},{label:"Party of fuif",id:"0.49.0.0.0"},{label:"Fiets- of wandelroute",id:"0.17.0.0.0"},{label:"Spel of quiz",id:"0.50.21.0.0"},{label:"Sportactiviteit",id:"0.59.0.0.0"},{label:"Sportwedstrijd bekijken",id:"0.19.0.0.0"},{label:"Tentoonstelling",id:"0.0.0.0.0"},{label:"Theatervoorstelling",id:"0.55.0.0.0"}])}(),function(){"use strict";function a(){return function(a,b){var c={EUR:{symbol:"",thousand:".",decimal:",",format:"%s%v",precision:2}},d=c[b];return d||(d=c.EUR),accounting.formatMoney(a,d)}}angular.module("udb.search").filter("currency",a)}(),function(){"use strict";function a(){return function(a,b){var c=_.filter(a,function(a){return"undefined"!=typeof a?"schema:ImageObject"===a["@type"]&&(a.inLanguage===b||angular.isUndefined(a.inLanguage)):void 0});return c}}angular.module("udb.search").filter("imagesByLanguage",a)}(),function(){"use strict";function a(){return function(a,b,d){var e=_.cloneDeep(a);return e=c(e,b,d)}}function b(a){return 2===a.length}function c(a,d,e){return a=_.each(a,function(f,g){if(_.isObject(f)){var h=Object.keys(f);if(h.length>0&&h.every(b)){if(f[d])a[g]=f[d];else if(e){var i=h[0],j=f[i];a[g]=j}}else f=c(f,d,e)}})}angular.module("udb.search").filter("jsonLDLang",a)}(),function(){"use strict";angular.module("udb.search").value("placeTypes",[{label:"Archeologische site",id:"3CuHvenJ+EGkcvhXLg9Ykg"},{label:"Bibliotheek of documentatiecentrum",id:"kI7uAyn2uUu9VV6Z3uWZTA"},{label:"Bioscoop",id:"BtVNd33sR0WntjALVbyp3w"},{label:"Cultuur- of ontmoetingscentrum",id:"Yf4aZBfsUEu2NsQqsprngw"},{label:"Discotheek",id:"YVBc8KVdrU6XfTNvhMYUpg"},{label:"Horeca",id:"ekdc4ATGoUitCa0e6me6xA"},{label:"Jeugdhuis of jeugdcentrum",id:"JCjA0i5COUmdjMwcyjNAFA"},{label:"Monument",id:"0.14.0.0.0"},{label:"Museum of galerij",id:"GnPFp9uvOUyqhOckIFMKmg"},{label:"Natuur, park of tuin",id:"0.15.0.0.0"},{label:"Openbare ruimte",id:"0.8.0.0.0"},{label:"Recreatiedomein of centrum",id:"0.53.0.0.0"},{label:"School of onderwijscentrum",id:"rJRFUqmd6EiqTD4c7HS90w"},{label:"Sportcentrum",id:"eBwaUAAhw0ur0Z02i5ttnw"},{label:"Thema of pretpark",id:"0.41.0.0.0"},{label:"Winkel",id:"VRC6HX0Wa063sq98G5ciqw"},{label:"Speeltuin",id:"wwjRVmExI0w6xfQwT1KWpx"},{label:"Zaal of expohal",id:"OyaPaf64AEmEAYXHeLMAtA"}])}(),function(){"use strict";angular.module("udb.search").value("fieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],termNis:["=","!"],number:["=","><","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a),c=b.field===j,d="";switch(b.transformer){case"!":d="!";break;case"-":d="-";break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b.field=d+(c?"":b.field+":"),b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=moment(d).format()),e instanceof Date&&(e=moment(e).format()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";if(a.right)d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d);else{var f=a.field&&a.left.field===j&&a.left.prefix;d=f?a.field+":("+k(a.left)+")":l(a.left,b+1,c)}return d}var g="",h=k(a);if(a.field!==j&&null!==a.field){var i="";_.contains(["!","+","-"],a.transformer)&&(i=a.transformer),g+=i+a.field+":"}return g+=h,c+=g};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type){var h=b.name,i="(!"+b.name+")";a.term!==h&&a.term!==i&&(a.invalid=!0)}if("tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var j=moment(a.lowerBound),k=moment(a.upperBound);j.isValid()&&k.isValid()?j.isSame(k,"day")?a.transformer="=":a.transformer="><":(!j.isValid()&&k.isValid()&&(a.transformer="<"),!k.isValid()&&j.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("LuceneQueryBuilder",a),a.$inject=["LuceneQueryParser","QueryTreeValidator","QueryTreeTranslator","queryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").constant("queryFieldTranslations",{sapi2:{TYPE:"type",CDBID:"cdbid",LOCATION_ID:"location_id",ORGANISER_ID:"organiser_id",TITLE:"title",KEYWORDS:"keywords",CITY:"city",ORGANISER_KEYWORDS:"organiser_keywords",ZIPCODE:"zipcode",COUNTRY:"country",CATEGORY_NAME:"category_name",AGEFROM:"agefrom",DETAIL_LANG:"detail_lang",PRICE:"price",STARTDATE:"startdate",ENDDATE:"enddate",ORGANISER_LABEL:"organiser_label",LOCATION_NAME:"location_name",LOCATION_LABELS:"location_labels",EXTERNALID:"externalid",LASTUPDATED:"lastupdated",CREATIONDATE:"creationdate",CREATEDBY:"createdby",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"category_eventtype_name",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"category_theme_name",CATEGORY_FACILITY_NAME:"category_facility_name",CATEGORY_TARGETAUDIENCE_NAME:"category_targetaudience_name",CATEGORY_FLANDERSREGION_NAME:"category_flandersregion_name",AVAILABLEFROM:"availablefrom"},en:{TEXT:"text",KEYWORDS:"label",PHYSICAL_GIS:"geo",CATEGORY_NAME:"category",DETAIL_LANG:"translation",ORGANISER_LABEL:"organiser",LOCATION_LABEL:"location",CREATIONDATE:"created",CATEGORY_EVENTTYPE_NAME:"eventtype",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"theme",CATEGORY_FACILITY_NAME:"facility",CATEGORY_TARGETAUDIENCE_NAME:"targetaudience",CATEGORY_FLANDERSREGION_NAME:"region",AVAILABLEFROM:"available",LOCATION_ID:"locationid",ORGANISER_ID:"organizationid",DATE:"date"},fr:{LOCATION_LABEL:"location",TITLE:"titre"},nl:{TYPE:"type",TEXT:"tekst",LOCATION_ID:"locatieid",ORGANISER_ID:"organisatieid",TITLE:"titel",KEYWORDS:"label",CITY:"stad",ORGANISER_KEYWORDS:"organisatielabel",ZIPCODE:"postcode",COUNTRY:"land",CATEGORY_NAME:"categorie",AGEFROM:"leeftijd",DETAIL_LANG:"vertaling",PRICE:"prijs",DATE:"datum",STARTDATE:"startdatum",ENDDATE:"einddatum",ORGANISER_LABEL:"organisatienaam",LOCATION_LABEL:"locatienaam",EXTERNALID:"externalid",LASTUPDATED:"laatst_aangepast",CREATIONDATE:"gecreëerd",CREATEDBY:"gecreëerd_door",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"type",LOCATIONTYPE:"locatietype",OFFERTYPE:"aanbodtype",CATEGORY_THEME_NAME:"thema",CATEGORY_FACILITY_NAME:"voorzieningen",CATEGORY_TARGETAUDIENCE_NAME:"doelgroep",CATEGORY_FLANDERSREGION_NAME:"gemeente",AVAILABLEFROM:"datum_beschikbaar"}})}(),function(){"use strict";angular.module("udb.search").value("queryFields",[{name:"cdbid",field:"id",type:"string",group:"what",editable:!0},{name:"offertype",field:"_type",type:"choice",group:"what",editable:!0,options:["event","place"]},{name:"keywords",field:"labels",type:"string",group:"what",editable:!0},{name:"title",field:"name.\\*",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"locationtype",field:"terms.id",type:"term",group:"what",editable:!0},{name:"category_theme_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"text",field:"",type:"tokenized-string",group:"what",editable:!0},{name:"city",field:"address.\\*.addressLocality",type:"string",group:"where",editable:!0},{name:"zipcode",field:"address.\\*.postalCode",type:"string",group:"where",editable:!0},{name:"location_id",field:"location.id",type:"string",group:"where",editable:!0},{name:"country",field:"address.\\*.addressCountry",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",field:"location.name.\\*",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",field:"location.labels",type:"string",group:"where",editable:!0},{name:"nisRegions",field:"regions",type:"termNis",group:"where",editable:!0},{name:"date",field:"dateRange",type:"date-range",group:"when",editable:!0},{name:"permanent",field:"calendarType",type:"check",group:"when",editable:!0},{name:"lastupdated",field:"modified",type:"date-range",group:"input-information",editable:!0},{name:"creationdate",field:"created",type:"date-range",group:"input-information",editable:!0},{name:"createdby",field:"creator",type:"string",group:"input-information",editable:!0},{name:"availablefrom",field:"availableRange",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",field:"languages",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",field:"organizer.labels",type:"string",group:"other",editable:!0},{name:"organiser_id",field:"organizer.id",type:"string",group:"other",editable:!0},{name:"agefrom",field:"typicalAgeRange",type:"number",group:"other",editable:!0},{name:"attendance_mode",field:"attendanceMode",type:"choice",group:"other",editable:!0,options:["online","offline","mixed"]},{name:"price",field:"price",type:"number",group:"other",editable:!0},{name:"status",field:"status",type:"choice",group:"other",editable:!0,options:["Available","Unavailable","TemporarilyUnavailable"]},{name:"booking_availability",field:"bookingAvailability",type:"choice",group:"other",editable:!0,options:["available","unavailable"]},{name:"organiser_label",field:"organizer.name.\\*",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",field:"terms.id",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",field:"audienceType",type:"choice",group:"other",editable:!0,options:["everyone","members","education"]},{field:"calendarType",type:"string"},{field:"workflowStatus",type:"choice",options:["DRAFT","READY_FOR_VALIDATION","APPROVED","REJECTED","DELETED"]},{field:"name.nl",type:"tokenized-string"},{field:"name.fr",type:"tokenized-string"},{field:"name.de",type:"tokenized-string"},{field:"name.en",type:"tokenized-string"},{field:"description.nl",type:"tokenized-string"},{field:"description.fr",type:"tokenized-string"},{field:"description.de",type:"tokenized-string"},{field:"description.en",type:"tokenized-string"},{field:"terms.label",type:"string"},{field:"mediaObjectsCount",type:"number"},{field:"videosCount",type:"number"},{field:"address.\\*.streetAddress",type:"string"},{field:"location.id",type:"string"},{field:"location.name.nl",type:"tokenized-string"},{field:"location.name.fr",type:"tokenized-string"},{field:"location.name.de",type:"tokenized-string"},{field:"location.name.en",type:"tokenized-string"},{field:"location.terms.id",type:"string"},{field:"organizer.id",type:"string"},{field:"organizer.name.nl",type:"tokenized-string"},{field:"organizer.name.fr",type:"tokenized-string"},{field:"organizer.name.de",type:"tokenized-string"},{field:"organizer.name.en",type:"tokenized-string"},{field:"allAges",type:"string"},{field:"contributors",type:"string"},{name:"startdate",field:"dateRange",type:"date-range"},{name:"enddate",field:"dateRange",type:"date-range"}])}(),function(){"use strict";function a(a,b){var c=function(c,d){var e=_.findKey(a[d],function(a){return a===c}),f=void 0===e?void 0:_.find(b,{name:e.toLowerCase()});return void 0===f?c:f.field},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"sapi2"),a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("QueryTreeTranslator",a),a.$inject=["queryFieldTranslations","queryFields"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"field"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){var b=a.split(".");return b.pop(),b.join(".")}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==o&&o!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("QueryTreeValidator",a),a.$inject=["queryFields"]}(),function(){"use strict";angular.module("udb.search").value("sapi2FieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],number:["=","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+":"+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a);switch(b.transformer){case"!":b.field="!"+b.field;break;case"-":b.field="-"+b.field;break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=d.toISOString()),e instanceof Date&&(e=e.toISOString()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";return a.right?(d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d)):d=l(a.left,b+1,c),d}var f="",g=k(a);if(a.field!==j&&null!==a.field){var h="";_.contains(["!","+","-"],a.transformer)&&(h=a.transformer),f+=h+a.field+":"}return f+=g,c+=f};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type&&(_.contains(["TRUE","FALSE"],a.term.toUpperCase())?a.term=a.term.toUpperCase():a.invalid=!0),"tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var h=moment(a.lowerBound),i=moment(a.upperBound);h.isValid()&&i.isValid()?h.isSame(i,"day")?a.transformer="=":a.transformer="><":(!h.isValid()&&i.isValid()&&(a.transformer="<"),!i.isValid()&&h.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("sapi2QueryBuilder",a),a.$inject=["LuceneQueryParser","sapi2QueryTreeValidator","sapi2QueryTreeTranslator","sapi2QueryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").value("sapi2QueryFields",[{name:"cdbid",type:"string",group:"what",editable:!0},{name:"keywords",type:"string",group:"what",editable:!0},{name:"title",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",type:"term",group:"what",editable:!0},{name:"category_theme_name",type:"term",group:"what",editable:!0},{name:"city",type:"string",group:"where",editable:!0},{name:"zipcode",type:"string",group:"where",editable:!0},{name:"country",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",type:"string",group:"where",editable:!0},{name:"category_flandersregion_name",type:"term",group:"where",editable:!0},{name:"startdate",type:"date-range",group:"when",editable:!0},{name:"enddate",type:"date-range",group:"when",editable:!0},{name:"permanent",type:"check",group:"when",editable:!0},{name:"lastupdated",type:"date-range",group:"input-information",editable:!0},{name:"lastupdatedby",type:"string",group:"input-information",editable:!0},{name:"creationdate",type:"date-range",group:"input-information",editable:!0},{name:"createdby",type:"string",group:"input-information",editable:!0},{name:"availablefrom",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",type:"string",group:"other",editable:!0},{name:"agefrom",type:"number",group:"other",editable:!0},{name:"price",type:"number",group:"other",editable:!0},{name:"organiser_label",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",type:"term",group:"other",editable:!0},{name:"category_publicscope_name",type:"term",group:"other",editable:!0},{name:"like_count", -type:"number"},{name:"recommend_count",type:"number"},{name:"attend_count",type:"number"},{name:"comment_count",type:"number"},{name:"category_name",type:"term"},{name:"externalid",type:"string"},{name:"private",type:"check"},{name:"physical_gis",type:"string"}])}(),function(){"use strict";function a(a){var b=a,c=function(a,c){var d=a,e=_.findKey(b[c],function(b){return b===a});return e&&(d=e.toLowerCase()),d},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("sapi2QueryTreeTranslator",a),a.$inject=["queryFieldTranslations"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"name"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){return a.split(".")[0]}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==n&&n!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("sapi2QueryTreeValidator",a),a.$inject=["sapi2QueryFields"]}(),function(){"use strict";function a(a,b){var c=null,d=null;this.clearQueryTree=function(){d=null},this.setQueryString=function(b,e){var f=!1;c&&c.queryString===b||(f=a.createQuery(b),a.isValid(f),this.setQuery(f),d=null),c&&!f&&e&&this.setQuery(c)},this.setQueryTree=function(b){var c=a.unparseGroupedTree(b),e=a.createQuery(c);a.isValid(e),this.setQuery(e),d=b},this.setQuery=function(a){c=a,b.$emit("searchQueryChanged",a)},this.getQuery=function(){return c},this.getQueryTree=function(){return angular.copy(d)}}angular.module("udb.search").service("searchHelper",a),a.$inject=["LuceneQueryBuilder","$rootScope"]}(),function(){"use strict";function a(a){var b={ALL:{name:"all",icon:"fas fa-check-square"},NONE:{name:"none",icon:"far fa-square"},SOME:{name:"some",icon:"fas fa-minus-square"}},c=function(c,d){this.pageSize=c||30,this.events=[],this.totalItems=0,this.currentPage=d||1,this.loading=!0,this.lastQuery=null,this.eventProperties={description:{name:a.instant("search.description"),visible:!1},labels:{name:a.instant("search.labels"),visible:!1},image:{name:a.instant("search.picture"),visible:!1}},this.eventSpecifics=[{id:"input",name:a.instant("search.inputInformation")}],this.activeSpecific=this.eventSpecifics[0],this.selectedOffers=[],this.selectionState=b.NONE,this.querySelected=!1};return c.prototype={enableSpecifics:function(a){this.eventSpecifics=_.uniq(_.union(this.eventSpecifics,a),"id")},toggleSelection:function(){var a=this.selectionState;a===b.SOME||a===b.ALL?(this.deselectPageItems(),this.querySelected&&(this.deselectAll(),this.querySelected=!1)):this.selectPageItems()},selectQuery:function(){this.querySelected=!0,this.selectPageItems()},updateSelectionState:function(){var a=this.selectedOffers,c=_.filter(this.events,function(b){return _.contains(a,b)});c.length===this.pageSize?this.selectionState=b.ALL:c.length>0?this.selectionState=b.SOME:this.selectionState=b.NONE},toggleSelect:function(a){if(!this.querySelected){var b=_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]});if(b)this.selectedOffers=_.filter(this.selectedOffers,function(b){return b["@id"]!==a["@id"]});else{var c=_.find(this.events,function(b){return b["@id"]===a["@id"]});this.selectedOffers.push(c)}this.updateSelectionState()}},deselectAll:function(){this.selectedOffers=[],this.selectionState=b.NONE},deselectPageItems:function(){var a=this.selectedOffers;_.forEach(this.events,function(b){_.remove(a,function(a){return a["@id"]===b["@id"]})}),this.selectionState=b.NONE},selectPageItems:function(){var a=this.events,c=this.selectedOffers;_.each(a,function(a){c.push(a)}),this.selectedOffers=_.uniq(c),this.selectionState=b.ALL},isOfferSelected:function(a){return!!_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]})},setResults:function(a){var b=this;b.pageSize=a.itemsPerPage||30,b.events=a.member||[],b.totalItems=a.totalItems||0,b.loading=!1,this.querySelected&&this.selectPageItems(),this.updateSelectionState()},queryChanged:function(a){this.loading=!0,this.selectedOffers=[],this.querySelected=!1,this.lastQuery&&this.lastQuery!==a&&(this.currentPage=1),this.lastQuery=a},activateSpecific:function(a){this.activeSpecific=a},isShowingProperties:function(){var a=_.find(this.eventProperties,function(a){return a.visible});return!!a}},c}angular.module("udb.search").factory("SearchResultViewer",a),a.$inject=["$translate"]}(),function(){"use strict";angular.module("udb.search").constant("EventTranslationState",{ALL:{name:"all",icon:"fa-circle"},NONE:{name:"none",icon:"fa-circle-o"},SOME:{name:"some",icon:"fa-dot-circle-o"}})}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event.directive.html"};return a}angular.module("udb.search").directive("udbEvent",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l){function m(a){var b=k.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}function n(a){var d=a.facilities.sort(function(a,b){return a.label.localeCompare(b.label)});return a.facilities=d,v=a,v.updateTranslationState(),b.event=c(v,x,!0),b.offerType=b.event.url.split("/").shift(),b.translatedOfferType=m(b.event.type.label),w.offerExpired="event"===b.offerType?a.isExpired():!1,w.hasFutureAvailableFrom=a.hasFutureAvailableFrom(),w.fetching=!1,p(),v}function o(a){return a&&"event"===b.event.url.split("/").shift()?h.resolve(a):h.reject()}function p(){b.$watch(function(){return v.labels},function(a){b.event.labels=angular.copy(a)})}function q(a,b,c){var d=w.activeLanguage,f=c||a;b&&b!==v[a][d]&&e.translateProperty(v,f,d,b).then(v.updateTranslationState(v))}function r(){w.labelResponse="",w.labelsError=""}function s(a){b.event.labels=angular.copy(v.labels),w.labelResponse="unlabelError",w.labelsError=a.title}function t(a){r(),f.unlabel(v,a.name)["catch"](s)}function u(a){return b.event.location&&(b.event.location=c(b.event.location,x)),h.resolve(a)}var v,w=this,x=k.use()||"nl";w.translation=!1,w.activeLanguage=x,w.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],w.uitId=_.get(i,"uitidUrl"),w.labelRemoved=t,l.isGodUser().then(function(a){w.isGodUser=a}),w.init=function(){if(!b.event.title){if(w.fetching=!0,b.event.name){var c=a.formatJsonLDEntity(b.event);return void n(c)}return a.getOffer(b.event["@id"]).then(function(a){n(a)})}w.fetching=!1},h.when(w.init()).then(u).then(o)["finally"](function(){w.editable=!0}),w.hasActiveTranslation=function(){var a=v;return a&&a.translationState[w.activeLanguage]!==d.NONE},w.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return v&&a&&(b=v.translationState[a].icon),b},w.translate=function(){w.applyPropertyChanges("name"),w.applyPropertyChanges("description")},w.toggleLanguage=function(a){a===w.activeLanguage?w.stopTranslating():(w.activeLanguage=a,w.translation=c(v,w.activeLanguage))},w.hasPropertyChanged=function(a){var b=w.activeLanguage,c=w.translation;return w.translation&&v[a][b]!==c[a]},w.undoPropertyChanges=function(a){var b=w.activeLanguage,c=w.translation;c&&(c[a]=v[a][b])},w.applyPropertyChanges=function(a){var b=w.translation[a];q(a,b,a)},w.stopTranslating=function(){w.translation=void 0,w.activeLanguage=x},w.labelAdded=function(a){var c=_.find(v.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(v.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):(w.addedLabel=a.name,f.label(v,a.name).then(function(){w.labelResponse="success",b.event.labels=angular.copy(v.labels)})["catch"](function(){w.labelResponse="error"}))},w.showConcludedButton=function(){var a=_.get(i,"concludedButton.toggle",!1);if(!a)return!1;var c=_.get(i,"calendarHighlight.date"),d=moment(c).endOf("day");return"event"===b.offerType&&d=h;if(i)l("EVENT-EXPORT.TOO-MANY-ITEMS",{limit:h}).then(function(a){c.alert(a)});else if(f&&f.queryString.length&&m.isValid(f)){e.open({templateUrl:"templates/event-export-modal.html",controller:"EventExportController",controllerAs:"exporter",size:"lg"})}else l("EVENT-EXPORT.QUERY-IS-MISSING").then(function(a){c.alert(a)})}function t(a,b){w(b)}a.resultViewer=new f(30,q()),a.realQuery=!1,a.activeQuery=!1,a.queryEditorShown=!1,a.currentPage=q(),a.language=l.use()||"nl";var u=[{id:"accessibility",name:"Toegankelijkheidsinformatie",permission:n.editFacilities}];o.getPermissions().then(function(b){var c=_.filter(u,function(a){return!_.has(a,"permission")||_.contains(b,a.permission)});a.resultViewer.enableSpecifics(c)});var v=function(c){var e=(a.resultViewer.currentPage-1)*a.resultViewer.pageSize,f="string"==typeof c?c:c.queryString,g=a.resultViewer.currentPage>1?String(a.resultViewer.currentPage):null;d.search({query:p().queryString||null,page:g}),a.resultViewer.loading=!0,b.findOffers(f,e).then(function(c){c.member&&(c=b.reformatJsonLDData(c)),h.addPagedCollection(c),a.resultViewer.setResults(c)})},w=function(b){if(a.activeQuery=b,m.isValid(b)){var c=m.unparse(b);a.resultViewer.queryChanged(c),v(c),c!==b.originalQueryString?a.realQuery=c:a.realQuery=!1}},x=function(c){var d=a.resultViewer.selectedOffers;_.each(d,function(a){var d;d=b.getOffer(new URL(a["@id"])),d.then(function(a){a.label(c)})}),_.each(c,function(a){g.labelOffersById(d,a)})},y=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-label-modal.html",controller:"OfferLabelModalCtrl",controllerAs:"lmc"});d.result.then(x)},z=function(){var b=a.resultViewer.querySelected;b?r():y()},A=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-languages-modal.html",controller:"OfferLanguagesModalCtrl",controllerAs:"lmc"});d.result.then(x)};a.exportEvents=s,a.label=z,a.addLanguageIcons=A,a.startEditing=function(){a.queryEditorShown=!0},a.stopEditing=function(){a.queryEditorShown=!1};var B=1===a.currentPage;a.pageChanged=function(){var b=a.currentPage;B?(a.resultViewer.currentPage=b,v(a.activeQuery),c.scroll(0,0)):(a.currentPage=a.resultViewer.currentPage,B=!0)};var C=_.once(function(){var b=j.$on("searchQueryChanged",t),c=j.$on("startEditingQuery",a.startEditing),d=j.$on("stopEditingQuery",a.stopEditing);a.$on("$destroy",c),a.$on("$destroy",b),a.$on("$destroy",d)});C()}angular.module("udb.search").controller("SearchController",a),a.$inject=["$scope","udbApi","$window","$location","$uibModal","SearchResultViewer","offerLabeller","offerLocator","searchHelper","$rootScope","eventExporter","$translate","LuceneQueryBuilder","authorization","authorizationService"]}(),function(){"use strict";function a(){return{templateUrl:"templates/search.html",restrict:"EA",controller:"SearchController"}}angular.module("udb.search").directive("udbSearch",a)}(),function(){"use strict";function a(a,b,c){function d(){a.all([b.getEventCardSystems(n.id),b.findOrganisationsCardSystems(m.id)]).then(h,e)}function e(a){400===a.status&&(l.uitpasUnavailableType="already_has_ticketsales"),404===a.status&&(l.uitpasUnavailableType="not_found")}function f(){l.uitpasUnavailableType=void 0}function g(){l.availableCardSystems=void 0,f(),j(),d()}function h(a){var b=a[0],c=a[1];l.availableCardSystems=_.map(c,function(a){return _.assign(a,{assignedDistributionKey:i(b,a),active:!!_.find(b,{id:a.id})})})}function i(a,b){var c=_.find(a,{id:b.id});return _.first(!c||_.isEmpty(c.distributionKeys)?b.distributionKeys:c.distributionKeys)}function j(){l.persistingCardSystems=!1}function k(a){return a.assignedDistributionKey?l.distributionKeyAssigned(a):b.addEventCardSystem(n.id,a.id)}var l=this,m=l.organisation,n=l.offerData;l.$onInit=d,l.refresh=g,l.distributionKeyAssigned=function(d){if(!d.assignedDistributionKey)throw"card system distribution key is missing";return l.persistingCardSystems=!0,b.addEventCardSystemDistributionKey(n.id,d.id,d.assignedDistributionKey.id).then(function(){return c.$emit("uitpasDataSaved"),j(),a.resolve()})},l.activeCardSystemsChanged=function(a){function d(b){a.active=!a.active,e(b)}function f(){c.$emit("uitpasDataSaved")}l.persistingCardSystems=!0;var g=a.active?k(a):b.removeEventCardSystem(n.id,a.id);g.then(f,d)["finally"](j)}}angular.module("udb.uitpas").component("cardSystemSelector",{templateUrl:"templates/card-systems.html",controller:a,controllerAs:"cardSystemSelector",bindings:{organisation:"<",offerData:"<"}}),a.$inject=["$q","udbUitpasApi","$rootScope"]}(),function(){"use strict";function a(a,b,c){function d(b){b?(a.showUitpasInfo=_.get(g,"organizer.isUitpas",!1)&&c.isEvent,g.showCardSystems=g.price&&!!g.price.length):(g.showCardSystems=!1,a.showUitpasInfo=!1)}function e(){g.eventFormData=c,d(g.organizer),g.listeners=[b.$on("eventFormSaved",g.showCardSystemsIfPriceIsSelected),b.$on("eventOrganizerSelected",g.updateOrganizer),b.$on("eventOrganizerDeleted",g.updateOrganizer),b.$on("uitpasDataSaved",g.markUitpasDataAsCompleted)]}function f(){_.invoke(g.listeners,"call")}var g=this;a.showUitpasInfo=!1,a.uitpasCssClass="state-incomplete",g.listeners=[],g.showCardSystems=!1,g.$onInit=e,g.$onDestroy=f,g.showCardSystemsIfPriceIsSelected=function(a,b){g.showCardSystems=b.priceInfo&&!!b.priceInfo.length},g.markUitpasDataAsCompleted=function(){a.uitpasCssClass="state-complete"},g.updateOrganizer=function(a,b){g.organizer=b,d(b)}}angular.module("udb.uitpas").component("uitpasInfo",{templateUrl:"templates/uitpasInfo.html",controller:a,controllerAs:"upic",bindings:{organizer:"<",price:"<"}}),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";angular.module("udb.uitpas").constant("DefaultUitpasLabels",{PASPARTOE:"Paspartoe",UITPAS:"UiTPAS",UITPAS_GENT:"UiTPAS Gent",UITPAS_OOSTENDE:"UiTPAS Oostende",UITPAS_REGIO_AALST:"UiTPAS Regio Aalst",UITPAS_DENDER:"UiTPAS Dender",UITPAS_ZUIDWEST:"UiTPAS Zuidwest",UITPAS_MECHELEN:"UiTPAS Mechelen",UITPAS_KEMPEN:"UiTPAS Kempen",UITPAS_MAASMECHELEN:"UiTPAS Maasmechelen",UITPAS_LEUVEN:"UiTPAS Leuven",UITPAS_LIER:"UiTPAS Lier","UITPAS_HEIST-OP-DEN-BERG":"UiTPAS Heist-op-den-Berg",UITPAS_MEETJESLAND:"UiTPAS Meetjesland",UITPAS_WESTHOEK:"UiTPAS Westhoek"})}(),function(){"use strict";function a(a){var b=this;b.organisation=a.organisation,b.query=a.query}angular.module("udb.uitpas").controller("OrganisationSuggestionController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/organisation-suggestion.directive.html",controller:"OrganisationSuggestionController",controllerAs:"os",scope:{organisation:"<",query:"<"},restrict:"A"}}angular.module("udb.uitpas").directive("uitpasOrganisationSuggestion",a)}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){return"object"==typeof a.distributionKeys&&(a.distributionKeys=_.values(a.distributionKeys)),a}function h(b){var c="object"==typeof b.data?_.values(b.data):b.data;return a.resolve(_.map(c,g))}function i(b){return a.resolve(b.data)}function j(b,c,d){function g(g){return f().add(c,"seconds").isAfter(d)?a.reject(g):e(function(){return j(b,c,d)},c)}return b()["catch"](g)}var k=_.get(c,"uitpasUrl"),l=_.get(c,"uitpasMaxDelay",8),m={headers:{"Content-Type":"application/json",Authorization:"Bearer "+d.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}};this.getEventCardSystems=function(a){function c(){return b.get(k+"events/"+a+"/cardSystems/",m)}var d=f().add(l,"s");return j(c,2,d).then(h)},this.getTicketSales=function(c,d){function e(){return b.get(k+"events/"+c,m)}function g(a){return a.data.hasTicketSales}var h=a.defer(),i=f().add(l,"s");return d.isUitpas?h.resolve(j(e,2,i).then(g)):h.resolve(!1),h.promise},this.findOrganisationsCardSystems=function(a){return b.get(k+"organizers/"+a+"/cardSystems/",m).then(h)},this.addEventCardSystem=function(a,c){return b.put(k+"events/"+a+"/cardSystems/"+c,null,m).then(i)},this.removeEventCardSystem=function(a,c){return b["delete"](k+"events/"+a+"/cardSystems/"+c,m).then(i)},this.addEventCardSystemDistributionKey=function(a,c,d){return b.put(k+"events/"+a+"/cardSystems/"+c+"/distributionKey/"+d,null,m).then(i)}}angular.module("udb.uitpas").service("udbUitpasApi",a),a.$inject=["$q","$http","appConfig","uitidAuth","$timeout","moment"]}(),function(){"use strict";function a(){var a;this.useLabels=function(b){a=b},this.$get=["DefaultUitpasLabels",function(b){return a?a:b}]}angular.module("udb.uitpas").provider("UitpasLabels",a)}(),function(){angular.module("udb.core").run(["$templateCache",function(a){"use strict";a.put("templates/calendar-summary.directive.html",'\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n'),a.put("templates/image-detail.directive.html",'\n \n \n \n \n
    \n
  • \n
    \n \n {{::translateImageDetail(\'alt_image\', {index: $index}) }}\n \n
    \n
    \n \n

    {{image.description}}

    \n

    © {{image.copyrightHolder}}

    \n
    \n
    \n
  • \n
\n \n \n\n'),a.put("templates/udb.workflow-status.directive.html",'\n \n \n \n \n {{::cm.status | translate }}\n {{cm.event.availableFrom | date: \'dd/MM/yyyy\'}}\n \n \n

 

\n \n\n\n \n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n
\n \n\n'),a.put("templates/unexpected-error-modal.html",'\n\n\n'),a.put("templates/event-cultuurkuur.html",'
\n
\n

\n
\n
\n

\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n

Bekijk je evenement op cultuurkuur.be en voeg de juiste onderwijsniveaus toe zodat leerkrachten je vinden.

\n Doorgaan\n
\n
\n
\n
\n
\n

\n
\n
\n
\n'),a.put("templates/dashboard-item.directive.html",'\n \n \n \n \n Online op \n Publicatie afgewezen \n
\n \n \n \n - \n \n \n \n\n\n\n \n
\n \n \n
    \n
  • \n \n
  • \n
  • \n
  • \n \n
  • \n
\n
\n
\n \n
\n \n
\n \n
\n
\n\n'),a.put("templates/dashboard-organizer-item.directive.html",'\n \n \n \n
\n \n \n ,\n \n \n\n\n\n \n
\n \n
\n
\n\n'),a.put("templates/event-delete-confirm-modal.html",'\n\n'), +}),undo:function(){j.roles=_.reject(j.roles,{uuid:a.uuid})}};j.queueAction(c)}},j.save=function(){j.saving=!0;var a=_.map(j.actions,i);d.all(a).then(function(){e(k),j.saving=!1,j.actions=[]})},j.undoAction=function(a){var b=j.getRoleAction(a);b.undo(),j.actions=_.reject(j.actions,{role:{uuid:a.uuid}})}}angular.module("udb.management.users").controller("UserEditorController",a),a.$inject=["UserManager","RoleManager","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.findUserWithEmail=function(b){return a.findUserWithEmail(b)},b.getRoles=function(b){return a.getUserRoles(b)}}angular.module("udb.management.users").service("UserManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){e.status="problem",e.problem=a}function d(){e.status="idle",e.problem=!1}var e=this;e.status="idle",e.query="",e.problem="",e.handleChange=function(){"problem"===e.status&&d()},e.handleSubmit=function(){e.status="loading",a.findUserWithEmail(e.query).then(function(a){e.status="idle",b.path("/manage/users/"+a.email)},function(a){404===a.status?e.status="notFound":c(a.title)})}}angular.module("udb.management.users").controller("UsersListController",a),a.$inject=["UserManager","$location"]}(),function(){"use strict";function a(a,b,c,d){var e=this;e.createImage=function(a,b,f,g){function h(a){return a.split("/").pop()}function i(a){return l.indexOf(a)>=0}function j(a){e.getImage(a.data.imageId).then(k.resolve,k.reject)}var k=c.defer(),l=["png","jpeg","jpg","gif"];return i(h(a.type))?d.uploadMedia(a,b,f,g).then(j,k.reject):k.reject({data:{title:"The uploaded file is not an image."}}),k.promise},e.getImage=function(a){function b(b){var d=b;return d.id=a,c.resolve(d)}return d.getMedia(a).then(b)}}angular.module("udb.media").service("MediaManager",a),a.$inject=["jobLogger","appConfig","$q","udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(){f()&&c.go(g.destination.state,{id:a.id})}function f(){return!!_.get(a,"location.id")}var g=this;g.completeMigration=e;var h={description:d.instant("eventForm.step4.continue"),state:"split.eventEdit"};g.destination=b.destination||h,g.migrationReady=f}angular.module("udb.migration").component("udbEventMigrationFooter",{templateUrl:"templates/event-migration-footer.component.html",controller:a,controllerAs:"migration"}),a.$inject=["EventFormData","$stateParams","$state","$translate"]}(),function(){"use strict";function a(){function a(a){return!!_.get(a,"location.id")}var b=this,c={location:a};b.checkRequirements=function(a){var b=_(c).pick(function(b){return!b(a)}).keys();return b.value()}}angular.module("udb.migration").service("eventMigration",a)}(),function(){"use strict";function a(a){function b(b){a.translateAddress(c.offer,b,c.translatedAddresses[b])}var c=this;c.translatedAddresses={},c.originalAddress=_.get(c.offer.address,c.offer.mainLanguage,"")||_.get(c.offer.address,"nl","")||_.get(c.offer,"address",""),c.translatedAddresses=_.get(c.offer,"address"),_.forEach(c.activeLanguages,function(a,b){void 0===c.translatedAddresses[b]&&(c.translatedAddresses[b]={postalCode:c.originalAddress.postalCode,addressLocality:c.originalAddress.addressLocality,addressCountry:c.originalAddress.addressCountry})}),c.saveTranslatedAddress=b}angular.module("udb.offer-translate").component("offerTranslateAddress",{templateUrl:"templates/translate-address.html",controller:a,controllerAs:"tac",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"description",b,c.translatedDescriptions[b]).then(function(){})}var c=this;c.translatedDescriptions={},c.originalDescription=_.get(c.offer.description,c.offer.mainLanguage,"")||_.get(c.offer.description,"nl","")||_.get(c.offer,"description",""),c.originalDescription=_.isEmpty(c.originalDescription)?"":c.originalDescription,c.translatedDescriptions=_.get(c.offer,"description"),c.saveTranslatedDescription=b}angular.module("udb.offer-translate").component("offerTranslateDescription",{templateUrl:"templates/translate-description.html",controller:a,controllerAs:"ttd",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d){function e(b){d.mainLanguage=b;a.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController",resolve:{EventFormData:function(){return d}}})}function f(a,b){var d=null,e=new XMLHttpRequest;e.open("GET",a.contentUrl),e.responseType="blob",e.onload=function(){d=e.response,c.createImage(d,a.description,a.copyrightHolder,b).then(i,j)},e.send()}function g(b){a.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{EventFormData:function(){return d},mediaObject:function(){return b}}})}function h(b){a.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{EventFormData:function(){return d},image:function(){return b}}})}function i(a){function c(){d.addImage(a)}b.addImage(d,a).then(c,j)}function j(a){var b=a.data.title,c="Er ging iets mis bij het opslaan van de afbeelding.";switch(b){case"The uploaded file is not an image.":c="Het geüpload bestand is geen geldige afbeelding. Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.";break;case"The file size of the uploaded image is too big.":c="Het geüpload bestand is te groot."}k.saving=!1,k.error=c}var k=this;d.init(),k.eventFormData=d,k.offer.mediaObject&&(d.mediaObjects=k.offer.mediaObject||[]),d.name=k.offer.name,d.apiUrl=k.offer.apiUrl,d.mainLanguage=k.offer.mainLanguage,k.openUploadImageModal=e,k.removeImage=h,k.editImage=g,k.copyImage=f}angular.module("udb.offer-translate").component("offerTranslateImages",{templateUrl:"templates/translate-images.html",controller:a,controllerAs:"tic",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["$uibModal","eventCrud","MediaManager","EventFormData"]}(),function(){"use strict";function a(a){function b(){for(var b in e.offer.priceInfo)if(b>0){var c={};c[e.offer.mainLanguage]=e.originalTariffs[b-1],e.offer.priceInfo[b].name=_.merge(c,e.translatedTariffs[b-1])}a.updatePriceInfo(e.offer)}function c(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name[e.offer.mainLanguage]?e.offer.priceInfo[b].name[e.offer.mainLanguage]:e.offer.priceInfo[b].name);return a}function d(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name);return a}var e=this;e.translatedTariffs=[],e.originalTariffs=c(),e.translatedTariffs=d(),e.saveTranslatedTariffs=b}angular.module("udb.offer-translate").component("offerTranslateTariffs",{templateUrl:"templates/translate-tariffs.html",controller:a,controllerAs:"ttsc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["eventCrud"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"name",b,c.translatedNames[b]).then(function(){})}var c=this;c.translatedNames={},c.originalName=_.get(c.offer.name,c.offer.mainLanguage,null)||_.get(c.offer.name,"nl",null)||_.get(c.offer,"name",""),c.translatedNames=_.get(c.offer,"name"),c.saveTranslatedName=b}angular.module("udb.offer-translate").component("offerTranslateTitle",{templateUrl:"templates/translate-title.html",controller:a,controllerAs:"ttc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(b){a.language=f.use()||"nl",a.cachedOffer=b,a.apiUrl=b.apiUrl,a.mainLanguage=b.mainLanguage?b.mainLanguage:"nl",a.translatedOffer=d(b,a.language,!0),a.originalName=a.translatedOffer.name,a.offerType=b.url.split("/").shift(),"event"===a.offerType?(a.isEvent=!0,a.isPlace=!1):(a.isEvent=!1,a.isPlace=!0),_.forEach(a.cachedOffer.name,function(b,c){a.activeLanguages[c]&&(a.activeLanguages[c].active=!0)}),a.activeLanguages[a.mainLanguage].main=!0,a.loaded=!0}function i(){console.log("offer not found")}function j(a){a?c.getOffer(a).then(h):i()}function k(){var b=a.cachedOffer.id.toString(),c=b.split("/").pop();g.go("split.eventEdit",{id:c})}function l(){g.go("split.footer.dashboard")}a.apiUrl="",a.loaded=!1,a.mainLanguage="",a.languages=["nl","fr","en","de"],a.activeLanguages={nl:{active:!1,main:!1},fr:{active:!1,main:!1},en:{active:!1,main:!1},de:{active:!1,main:!1}},a.openEditPage=k,a.goToDashboard=l,e.when(b).then(j,i)}angular.module("udb.offer-translate").controller("OfferTranslateController",a),a.$inject=["$scope","offerId","udbApi","jsonLDLangFilter","$q","$translate","$state"]}(),function(){"use strict";function a(){return{templateUrl:"templates/offer-translate.html",restrict:"EA"}}angular.module("udb.offer-translate").directive("udbOfferTranslate",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){s.availableCountries=e.offerEditor.countries,s.defaultCountry=_.find(s.availableCountries,function(a){return a["default"]}),s.selectedCountry=s.defaultCountry,""!==s.address.addressCountry?s.selectedCountry={code:s.address.addressCountry,"default":!0}:s.selectedCountry=s.defaultCountry,s.address.addressCountry=s.selectedCountry.code,s.cities="BE"===s.selectedCountry.code?c:d,s.selectedCity="",s.requiredAddress=!1,s.address.addressLocality&&(s.hasAddress=!0,s.selectedCity=s.address.postalCode+" "+s.address.addressLocality,s.requiredAddress=!0)}function i(){s.streetHasErrors=!1,s.cityHasErrors=!1,s.zipValidateError=!1,s.zipHasErrors=!1,s.addressHasErrors=!1,s.addressRemovedError=!1,s.addressRemovedSuccess=!1}function j(){i(),s.requiredAddress?((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))):(""!==s.selectedCity&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),""!==s.address.streetAddress&&(""===s.selectedCity&&(s.cityHasErrors=!0),(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),"NL"===s.selectedCountry.code&&""!==s.address.postalCode&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),s.zipValidateError=!k(s.address.postalCode))),r()}function k(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function l(a){return function(b){var c=(a.length,a.match(/\w+/g)),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}}function m(a){return function(c){return new b(a,c.label)}}function n(a,b){"BE"===s.selectedCountry.code&&(s.address.postalCode=a.zip),s.address.addressLocality=a.name,s.cityAutocompleteTextField="",s.selectedCity=b,j()}function o(){s.address.postalCode="",s.address.addressLocality="",s.selectedCity="",s.cityAutocompleteTextField="",j()}function p(){"NL"===s.selectedCountry.code?s.cities=d:s.cities=c,s.address.addressCountry=s.selectedCountry.code,o()}function q(){s.address.streetAddress="",o(),g.removeOrganizerAddress(t).then(function(a){s.hasAddress=!1,s.addressRemovedSuccess=!0})["catch"](function(a){s.addressRemovedError=!0})}function r(){s.addressHasErrors=s.streetHasErrors||s.cityHasErrors||s.zipHasErrors||s.zipValidateError,s.onUpdate({error:s.addressHasErrors})}var s=this,t=f.id;s.streetHasErrors=!1,s.cityHasErrors=!1,s.addressHasErrors=!1,s.zipHasErrors=!1,s.zipValidateError=!1,s.validateAddress=j,s.filterCities=l,s.orderByLevenshteinDistance=m,s.selectCity=n,s.changeCitySelection=o,s.changeCountrySelection=p,s.clearAddressInfo=q,s.$onInit=h,a.$on("organizerAddressSubmit",function(){s.organizerAddressForm.$setSubmitted(),i(),j()})}angular.module("udb.organizers").component("udbOrganizerAddress",{templateUrl:"templates/organizer-address.html",controller:a,controllerAs:"oac",bindings:{address:"=",onUpdate:"&"}}),a.$inject=["$scope","Levenshtein","citiesBE","citiesNL","appConfig","$stateParams","OrganizerManager"]}(),function(){"use strict";function a(a,b){function c(){_.find(j.contact,{value:""})||_.find(j.contact,{value:void 0})||j.organizerContactWrapper.$invalid&&j.organizerContactWrapper.$dirty?j.contactHasErrors=!0:j.contactHasErrors=!1,i()}function d(){j.newContact={type:"",value:""}}function e(a){j.newContact={type:a,value:""},j.isPristine=!0,j.addingContactEntry=!0}function f(){d(),j.addingContactEntry=!1,j.isPristine=!0}function g(){c(),j.contactHasErrors||(j.contact.push(j.newContact),d(),j.addingContactEntry=!1,j.isPristine=!0,i())}function h(a){j.contact.splice(a,1),c()}function i(){j.onUpdate({error:j.contactHasErrors})}var j=this;j.newContact={},j.addingContactEntry=!1,j.isPristine=!0,j.validateContact=c,j.addOrganizerContactEntry=e,j.cancelOrganizerContactEntry=f,j.addOrganizerContactInfo=g,j.deleteOrganizerContactInfo=h,j.sendUpdate=i,j.contactUrlRegex=(new b).regex.url,a.$on("organizerContactSubmit",function(){j.organizerContactWrapper.$setSubmitted()}),a.$watch(function(){return j.newContact},function(a){a&&a.value&&""!==a.value&&(j.isPristine=!1)},!0)}angular.module("udb.organizers").component("udbOrganizerContact",{templateUrl:"templates/organizer-contact.html",controller:a,controllerAs:"occ",bindings:{contact:"=",onUpdate:"&"}}),a.$inject=["$scope","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(b){a.get(b).then(h),f.getOrganizerPermissions(b).then(function(a){u.permissions=a.permissions})}function h(a){u.organizer=a}function i(b){u.labelSaving=!0,l(),a.addLabelToOrganizer(v,b.name)["catch"](r)["finally"](function(){u.labelSaving=!1,k()})}function j(b){u.labelSaving=!0,l(),k(),a.deleteLabelFromOrganizer(v,b.name)["catch"](q)["finally"](function(){u.labelSaving=!1})}function k(){a.removeOrganizerFromCache(v)}function l(){u.labelResponse="",u.labelsError=""}function m(){return-1!==w.indexOf("manage")}function n(){d.path("/manage/organizations")}function o(){p(u.organizer)}function p(a){var c=b.open({templateUrl:"templates/organization-delete.modal.html",controller:"OrganizationDeleteModalController",controllerAs:"odc",resolve:{organization:function(){return a}}});c.result.then(n)}function q(a){g(v),u.labelResponse="unlabelError",u.labelsError=a.title}function r(a){u.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return u.errorMessage}}})}function s(){return u.organizer&&!u.loadingError}function t(){return-1!==u.permissions.indexOf("Organisaties bewerken")}var u=this,v=c.id,w=e.current.name;u.labelSaving=!1,u.addLabel=i,u.deleteLabel=j,u.labelResponse="",u.labelsError="",u.deleteOrganization=o,u.isManageState=m,u.finishedLoading=s,u.canEdit=t,u.permissions=[],g(v)}angular.module("udb.organizers").controller("OrganizerDetailController",a),a.$inject=["OrganizerManager","$uibModal","$stateParams","$location","$state","udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){x.organizer={mainLanguage:A,website:"http://",name:"",address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},x.showAddressComponent=!0}function k(b){a.removeOrganizerFromCache(b),a.get(b).then(l,function(){x.loadingError=!0})["finally"](function(){x.showAddressComponent=!0})}function l(a){_.isEmpty(a.address)&&(a.address={streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""}),x.organizer=a,B=_.cloneDeep(a),x.originalName=B.name,null!==x.organizer.contactPoint&&(_.forEach(x.organizer.contactPoint,function(a,b){_.forEach(a,function(a){x.contact.push({type:b,value:a})})}),C=_.cloneDeep(x.contact))}function m(){return x.showWebsiteValidation=!0,x.organizerForm.website.$valid?void b.findOrganizersWebsite(x.organizer.website).then(function(a){x.urlError=!1,a.totalItems>0?a.member[0].name===x.originalName?(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1):(x.organizersWebsiteFound=!0,x.showWebsiteValidation=!1):(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1)},function(){x.websiteError=!0,x.showWebsiteValidation=!1})["finally"](function(){r()}):(x.showWebsiteValidation=!1,void(x.urlError=!0))}function n(){x.organizerForm.name.$valid?x.nameError=!1:x.nameError=!0,r()}function o(a){x.addressError=a,r()}function p(a){x.contactError=a,r()}function q(){return x.showValidation=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError?(x.hasErrors=!0,x.disableSubmit=!0,f.$broadcast("organizerAddressSubmit"),void f.$broadcast("organizerContactSubmit")):void(x.isNew?t():s())}function r(){D=!_.isEqual(x.organizer.website,B.website),E=!_.isEqual(x.organizer.name,B.name),F=!_.isEqual(x.organizer.address,B.address)&&!_.isEmpty(x.organizer.address.streetAddress),G=!_.isEqual(x.contact,C),D||E||F||G?x.disableSubmit=!1:x.disableSubmit=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError||(x.hasErrors=!1)}function s(){var b=[];D&&b.push(a.updateOrganizerWebsite(y,x.organizer.website)),E&&b.push(a.updateOrganizerName(y,x.organizer.name,A)),F&&b.push(a.updateOrganizerAddress(y,x.organizer.address,A)),G&&b.push(a.updateOrganizerContact(y,x.contact)),b.push(a.removeOrganizerFromCache(y)),e.all(b).then(function(){v()})["catch"](function(){x.hasErrors=!0,x.saveError=!0})}function t(){var b=_.clone(x.organizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,h.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&a.addLabelToOrganizer(b.data.organizerId,c),x.organizer.id=b.data.organizerId,v()},function(){x.hasErrors=!0,x.saveError=!0})}function u(){w()?c.go("management.organizers.search",{},{reload:!0}):c.go("split.footer.dashboard",{},{reload:!0})}function v(){a.removeOrganizerFromCache(x.organizer.id),c.go("split.organizerDetail",{id:x.organizer.id},{reload:!0})}function w(){return-1!==z.indexOf("manage")}var x=this,y=d.id,z=c.current.name,A=g.use()||"nl";x.language=A,x.showAddressComponent=!1,x.isNew=!0,x.loadingError=!1,x.contact=[],x.showWebsiteValidation=!1,x.urlError=!1,x.websiteError=!1,x.nameError=!1,x.addressError=!1,x.contactError=!1,x.hasErrors=!1,x.disableSubmit=!0,x.saveError=!1,x.validateWebsite=m,x.validateName=n,x.validateAddress=o,x.validateContact=p,x.checkChanges=r,x.validateOrganizer=q,x.cancel=u,x.isManageState=w;var B={},C=[],D=!1,E=!1,F=!1,G=!1;y?(x.isNew=!1,k(y)):j()}a.$inject=["OrganizerManager","udbOrganizers","$state","$stateParams","$q","$scope","$translate","eventCrud","appConfig"],angular.module("udb.organizers").controller("OrganizerFormController",a)}(),function(){"use strict";function a(a){var b=this;b["delete"]=function(b){return a.deleteOrganization(b)},b.find=function(b,c,d){return a.findOrganisations(d,c,null,b)},b.get=function(b){return a.getOrganizerById(b)},b.addLabelToOrganizer=function(b,c){return a.addLabelToOrganizer(b,c)},b.deleteLabelFromOrganizer=function(b,c){return a.deleteLabelFromOrganizer(b,c)},b.removeOrganizerFromCache=function(b){return a.removeItemFromCache(b)},b.updateOrganizerWebsite=function(b,c){return a.updateOrganizerWebsite(b,c)},b.updateOrganizerName=function(b,c,d){return a.updateOrganizerName(b,c,d)},b.updateOrganizerAddress=function(b,c,d){return a.updateOrganizerAddress(b,c,d)},b.removeOrganizerAddress=function(b){return a.removeOrganizerAddress(b)},b.updateOrganizerContact=function(b,c,d){return a.updateOrganizerContact(b,c,d)}}angular.module("udb.organizers").service("OrganizerManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/place-detail.html",restrict:"EA",controller:PlaceDetail}}angular.module("udb.place-detail").directive("udbPlaceDetail",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(b){var c=b[0],d=b[1];n.getPermissions().then(function(b){a.isGodUser=_.filter(b,function(a){return a===m.GEBRUIKERS_BEHEREN}).length>0,a.isGodUser?a.permissions={editing:!0,duplication:!0}:c?a.permissions={editing:!d.isExpired(),duplication:!0}:a.permissions={editing:!1,duplication:!1},p()})}function p(){a.isGodUser?a.tabs=[{id:"data"},{id:"history"},{id:"publication"}]:a.tabs=[{id:"data"},{id:"publication"}]}function q(b){B=b,a.place=e(b,A,!0),a.placeIdIsInvalid=!1,"object"==typeof a.place.description&&(a.place.description=a.place.description[A],void 0===a.place.description&&(a.place.description="")),a.finishedLoading=!0,b.typicalAgeRange.indexOf("-")===b.typicalAgeRange.length-1?a.ageRange=b.typicalAgeRange.slice(0,-1)+"+":a.ageRange=b.typicalAgeRange}function r(b){a.placeIdIsInvalid=!0}function s(a){function b(a,b){var c=g.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return b}}});c.result.then(z.goToDashboard)}f.findEventsAtPlace(a.apiUrl).then(function(c){b(a,c)})}function t(b){a.placeHistory=b}function u(b){var c=_.find(B.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?i.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):j.label(B,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.place.labels=angular.copy(B.labels)})}function v(){a.labelResponse="",a.labelsError=""}function w(b){a.place.labels=angular.copy(B.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function x(a){v(),j.unlabel(B,a.name)["catch"](w)}var y="data",z=this,A=l.use()||"nl";a.isOmdApp=!!_.get(k,"omdSpecific",!1),h.when(b,function(b){a.placeId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(q,r),h.all([e,d]).then(o)}),a.placeIdIsInvalid=!1,a.labelAdded=u,a.labelRemoved=x,a.labelResponse="",a.labelsError="",a.finishedLoading=!1,a.placeHistory=void 0,a.deletePlace=function(){s(a.place)},a.language=A;var B;a.placeLocation=function(a){return a.address.addressLocality?a.address.addressLocality:""},a.isTabActive=function(a){return a===y},a.makeTabActive=function(b){if(y=b,"history"===b&&!a.placeHistory){var d=a.placeId.split("/").pop();c.getHistory(d,"place").then(t)}},a.openEditPage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeEdit",{id:c})},a.openTranslatePage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeTranslate",{id:c})},z.goToDashboard=function(){d.go("split.footer.dashboard")},a.translateType=function(a){var b=l.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}}angular.module("udb.place-detail").controller("PlaceDetailController",a),a.$inject=["$scope","placeId","udbApi","$state","jsonLDLangFilter","eventCrud","$uibModal","$q","$window","offerLabeller","appConfig","$translate","RolePermission","authorizationService"]}(),function(){"use strict";function a(a,b){function c(a,b){g[a]=b}function d(a){_.each(a.member,function(a){var b=a["@id"],d=b.split("/").pop();c(d,b)})}function e(b){var c=g[b];return c?a.resolve(c):f(b)}function f(d){function e(a){if(1===a.totalItems){var b=a.member[0]["@id"];c(d,b),f.resolve(b)}else f.reject("Unable to determine the exact offer for this uuid.")}var f=a.defer(),g='id:"'+d+'"',h=0,i=!0;return b.findOffers(g,h,i).then(e)["catch"](f.reject),f.promise}var g={};this.get=e,this.add=c,this.addPagedCollection=d}angular.module("udb.router").service("offerLocator",a),a.$inject=["$q","udbApi"]}(),function(){"use strict";function a(a,b){var c=function(){b.close()},d=function(){b.dismiss("cancel")};a.cancel=d,a.confirm=c}angular.module("udb.saved-searches").controller("DeleteSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b){var c=function(){var c=a.queryName;a.wasSubmitted=!0,c&&b.close(c)},d=function(){b.dismiss("cancel")},e=function(b){return b===a.activeTabId},f=function(b){a.activeTabId=b};a.cancel=d,a.ok=c,a.isTabActive=e,a.makeTabActive=f,a.queryName="",a.activeTabId="new",a.wasSubmitted=!1}angular.module("udb.saved-searches").controller("SaveSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b){function c(c,e,f,g){c.saveSearch=function(){var e=b.open({templateUrl:"templates/save-search-modal.html",controller:"SaveSearchModalController"});e.result.then(function(b){a.createSavedSearch(b,c.queryString)["catch"](d)})}}function d(){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het opslaan van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})}var e={link:c,templateUrl:"templates/save-search.directive.html",restrict:"AE",scope:{queryString:"=udbQueryString"}};return e}angular.module("udb.saved-searches").directive("udbSaveSearch",a),a.$inject=["savedSearchesService","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){e.$emit("savedSearchesChanged",i)}var i=[],j=this;j.createSavedSearch=function(b,c){return f.createSavedSearch(b,c).then(function(){return i.push({name:b,query:c}),h(),a.resolve()})},j.getSavedSearches=function(){return f.getSavedSearches().then(function(b){var c=b.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=g.instant(b);return c!==b&&(a.name=c),a});return i=c,a.resolve(c)})},j.deleteSavedSearch=function(b){return f.deleteSavedSearch(b).then(function(){return _.remove(i,{id:b}),h(),a.resolve()})}}angular.module("udb.saved-searches").service("savedSearchesService",a),a.$inject=["$q","$http","$cookies","appConfig","$rootScope","udbApi","$translate"]}(),function(){"use strict";function a(a,b,c,d){a.savedSearches=[],a.editorOptions={mode:"solr",lineWrapping:!0,readOnly:!0},a.codemirrorLoaded=function(a){a.on("focus",function(){a.execCommand("selectAll")}),a.on("blur",function(){a.setCursor(0,0,!0)})};var e=b.getSavedSearches();e.then(function(b){a.savedSearches=b}),d.$on("savedSearchesChanged",function(b,c){a.savedSearches=c}),this.encodeURI=function(a){return encodeURIComponent(a)},a.encodeURI=this.encodeURI,this.deleteSavedSearch=function(a){var d=c.open({templateUrl:"templates/delete-search-modal.html",controller:"DeleteSearchModalController"});d.result.then(function(){var d=b.deleteSavedSearch(a);d["catch"](function(){c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het verwijderen van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})})})},a.deleteSavedSearch=this.deleteSavedSearch}angular.module("udb.saved-searches").controller("SavedSearchesListController",a),a.$inject=["$scope","savedSearchesService","$uibModal","$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-link.directive.html"};return a}angular.module("udb.event-form").directive("udbEventLink",a)}(),function(){"use strict";function a(a,b){function c(a){m.labels=f(_.get(a,"labels.currentValue",m.labels))}function d(a){m.currentLabel="",m.labelAdded({label:a}),m.labels.push(a)}function e(a){m.currentLabel="",m.labelRemoved({label:a}),m.labels=_.without(m.labels,a)}function f(a){return _.map(m.labels,function(a){return _.isString(a)?{name:a}:a})}function g(a){return a>=m.minimumInputLength&&a<=m.maxInputLength}function h(a){return m.regex.test(a)}function i(a){if(h(a)){var b=_.find(m.labels,function(b){return b.name.toUpperCase()===a.toUpperCase()});if(!b&&m.areLengthCriteriaMet(a.length)&&m.areContentCriteriaMet(a))return{name:a}}}function j(b){return a.getSuggestions(b,6).then(function(a){return a.push({name:b}),l(a)})}function k(a){return h(a)?(l([]),j(a)):void l([])}function l(a){return m.availableLabels=_.chain(a).filter(function(a){return h(a.name)}).reject(function(a){return _.find(m.labels,{name:a.name})}).uniq(function(a){return a.name.toUpperCase()}).value(),m.availableLabels}var m=this;m.availableLabels=[],m.suggestLabels=k,m.createLabel=i,m.areLengthCriteriaMet=g,m.areContentCriteriaMet=h,m.labels=f(m.labels),m.hiddenLabels=["new-entry-form","ook voor jongeren","ook voor kinderen"],m.minimumInputLength=2,m.maxInputLength=50,m.currentLabel="",m.onSelect=d,m.onRemove=e,m.$onChanges=c,m.regex=/^([a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]{1}[a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ_-\s]+)$/}angular.module("udb.search").component("udbLabelSelect",{templateUrl:"templates/label-select.html",controller:a,controllerAs:"select",bindings:{labels:"<",labelAdded:"&",labelRemoved:"&"}}),a.$inject=["offerLabeller","$q"]}(),function(){"use strict";function a(a,b){var c=this;c.changeFacilities=function(){b.open({templateUrl:"templates/search-facilities-modal.html",controller:"SearchFacilitiesModalController",resolve:{offer:function(){return c.offer},facilities:function(){return"place"===c.offerType?_.pick(a,"place"):_.omit(a,"place")}}})}}angular.module("udb.search").component("udbOfferAccessibilityInfo",{templateUrl:"templates/offer-accessibility-info.component.html",controller:a,bindings:{offerType:"<",offer:"="}}),a.$inject=["facilities","$uibModal"]}(),function(){"use strict";function a(a,b){return{templateUrl:"templates/query-editor-daterangepicker.directive.html",restrict:"E",link:function(c,d,e){var f={startOpened:!1,endOpened:!1,dateFormat:"dd/MM/yyyy"};a(["datepicker.CURRENT","datepicker.CLEAR","datepicker.CLOSE"]).then(function(a){b.currentText=a["datepicker.CURRENT"],b.clearText=a["datepicker.CLEAR"],b.closeText=a["datepicker.CLOSE"]}),f.openStart=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!0,f.endOpened=!1},f.openEnd=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!1,f.endOpened=!0},c.drp=f}}}function b(){return{restrict:"EAC",require:"ngModel",link:function(a,b,c,d){d.$formatters.shift()}}}angular.module("udb.search").directive("udbQueryEditorDaterangepicker",a),a.$inject=["$translate","uibDatepickerPopupConfig"],angular.module("udb.search").directive("datepickerPopup",b)}(),function(){"use strict";function a(a){function b(){var b;return b=d()?a.$parent.field:a.rootGroup}function c(){var b;return b=d()&&0===a.$index?"AND":a.$index?"OR":"FIRST"}function d(){var b=a.$parent;return"group"===b.field.type}function e(){var b=a.rootGroup;return b.nodes.length>1}a.addField=function(c){a.qe.addField(b(),c)},a.removeField=function(c){a.qe.removeField(b(),c,a.rootGroup)},a.addSubGroup=function(c){var e=a.rootGroup,f=_.uniqueId(),g=b();g.treeGroupId=f,d()&&(c=_.findIndex(e.nodes,function(a){return a.treeGroupId===f})),a.qe.addSubGroup(e,c)},a.isSubGroup=d,a.getOperatorClass=c,a.canRemoveField=e}angular.module("udb.search").controller("QueryEditorFieldController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor-field.directive.html",restrict:"E",controller:"QueryEditorFieldController"}}angular.module("udb.search").directive("udbQueryEditorField",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){var k=this;k.fieldOptions=_.filter(a,"editable");var l=_.chain(k.fieldOptions).map(function(a){return a.group}).uniq().value();_.forEach(k.fieldOptions,function(a){var b="queryFieldLabel."+a.name,c="queryFieldGroup."+a.group;g([b,c]).then(function(d){a.label=d[b],a.groupIndex=_.indexOf(l,a.group),a.groupLabel=d[c]})}),k.getDefaultQueryTree=function(){return{type:"root",nodes:[{type:"group",operator:"OR",nodes:[{name:"title",field:"name.\\*",term:"",fieldType:"tokenized-string",transformer:"+"}]}]}},k.groupedQueryTree=f.getQueryTree()||k.getDefaultQueryTree(), +k.transformers={},k.termOptions=_.groupBy(c,function(a){return"category_"+a.domain+"_name"}),k.termOptions.locationtype=j,k.termOptions.nisRegions=d,k.termOptions.category_eventtype_name=i,_.forEach(a,function(a){"choice"===a.type&&(k.termOptions[a.name]=a.options),k.transformers[a.name]=e[a.type]}),k.updateQueryString=function(){f.setQueryTree(k.groupedQueryTree),h.$emit("searchSubmitted"),k.stopEditing()},k.stopEditing=function(){h.$emit("stopEditingQuery")},k.addField=function(a,b){var c=b+1,d={field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"};a.nodes.splice(c,0,d),a.nodes.length&&(a.type="group")},k.removeField=function(a,b,c){c.nodes.length>1&&a.nodes.splice(b,1),k.cleanUpGroups()},k.cleanUpGroups=function(){k.removeEmptyGroups(),k.unwrapSubGroups()},k.unwrapSubGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){var b=a.nodes[0];if(b.nodes){var c=b.nodes;a.nodes.splice(0,1),_.forEach(c,function(b,c){a.nodes.splice(c,0,b)})}})},k.removeEmptyGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){_.remove(a.nodes,function(a){return a.nodes&&0===a.nodes.length})})},k.toggleExcludeGroup=function(a){a.excluded=!a.excluded},k.canRemoveGroup=function(){return!k.hasSingleGroup()},k.removeGroup=function(a){if(k.canRemoveGroup()){var b=k.groupedQueryTree,c=b.nodes[a];k.canRemoveGroup()&&c&&b.nodes.splice(a,1)}},k.resetGroups=function(){k.groupedQueryTree=k.getDefaultQueryTree()},k.addGroup=function(){var a=k.groupedQueryTree,b={type:"group",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.push(b)},k.addSubGroup=function(a,b){var c={type:"group",operator:"AND",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.splice(b+1,0,c)},k.fieldTypeSelected=function(b){var c=b.name,d=_.find(a,function(a){return a.name===c});d&&(b.field=d.field),b.fieldType!==d.type&&("date-range"===d.type?(b.lowerBound=moment().startOf("day").toDate(),b.upperBound=moment().endOf("day").toDate(),b.inclusive=!0):(b.term="",b.lowerBound=void 0,b.upperBound=void 0,b.inclusive=void 0),"check"===d.type&&(b.term=d.name),"number"===d.type&&(b.inclusive=!0),b.transformer&&_.contains(e[d.type],b.transformer)||(b.transformer=_.first(e[d.type])),b.fieldType=d.type)},k.hasSingleGroup=function(){return 1===k.groupedQueryTree.nodes.length}}angular.module("udb.search").controller("QueryEditorController",a),a.$inject=["queryFields","LuceneQueryBuilder","taxonomyTerms","sapi3CitiesBE","fieldTypeTransformers","searchHelper","$translate","$rootScope","eventTypes","placeTypes"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor.directive.html",restrict:"EA",controllerAs:"qe",controller:"QueryEditorController"}}angular.module("udb.search").directive("udbQueryEditor",a)}(),function(){"use strict";function a(a,b,c,d,e){return{templateUrl:"templates/search-bar.directive.html",restrict:"E",link:function(f,g,h){function i(a){return a.map(function(a){if(0===a.indexOf("Expected "))return d.instant("search.advancedQueryBuilder.syntaxError");var b=" is not a valid search field";if(-1!==a.indexOf(b)){var c=a.split(b)[0];return d.instant("search.advancedQueryBuilder.invalidField",{field:c})}return a})}function j(a){l.savedSearches=_.take(a,5)}var k,l={queryString:"",hasErrors:!1,errors:[],isEditing:!1,savedSearches:[]};l.editQuery=function(){b.$emit("startEditingQuery"),l.isEditing=!0,k=c.open({templateUrl:"templates/query-editor-modal.html",controller:"QueryEditorController",controllerAs:"qe",size:"lg"})},l.find=function(c){var d="undefined"!=typeof c?c:l.queryString;l.queryString=d,a.setQueryString(d),b.$emit("searchSubmitted")},l.queryChanged=function(){a.clearQueryTree()},f.sb=l,l.updateQuery=function(a,b){l.queryString=b.queryString,b.errors&&b.errors.length?(f.sb.hasErrors=!0,f.sb.errors=i(b.errors)):(f.sb.hasErrors=!1,f.sb.errors=[])},e.getSavedSearches().then(j);var m=b.$on("savedSearchesChanged",function(a,b){j(b)}),n=b.$on("stopEditingQuery",function(){f.sb.isEditing=!1,k&&k.dismiss()}),o=b.$on("searchQueryChanged",l.updateQuery);f.$on("$destroy",m),f.$on("$destroy",n),f.$on("$destroy",o)}}}angular.module("udb.search").directive("udbSearchBar",a),a.$inject=["searchHelper","$rootScope","$uibModal","$translate","savedSearchesService"]}(),function(){"use strict";angular.module("udb.search").value("eventTypes",[{label:"Begeleide uitstap of rondleiding",id:"0.7.0.0.0"},{label:"Beurs",id:"0.6.0.0.0"},{label:"Concert",id:"0.50.4.0.0"},{label:"Lessenreeks",id:"0.3.1.0.0"},{label:"Cursus met open sessies",id:"0.3.1.0.1"},{label:"Dansvoorstelling",id:"0.54.0.0.0"},{label:"Eet- of drankfestijn",id:"1.50.0.0.0"},{label:"Festival",id:"0.5.0.0.0"},{label:"Film",id:"0.50.6.0.0"},{label:"Kamp of vakantie",id:"0.57.0.0.0"},{label:"Festiviteit",id:"0.28.0.0.0"},{label:"Lezing of congres",id:"0.3.2.0.0"},{label:"Markt, braderie of kermis",id:"0.37.0.0.0"},{label:"Opendeurdag",id:"0.12.0.0.0"},{label:"Party of fuif",id:"0.49.0.0.0"},{label:"Fiets- of wandelroute",id:"0.17.0.0.0"},{label:"Spel of quiz",id:"0.50.21.0.0"},{label:"Sportactiviteit",id:"0.59.0.0.0"},{label:"Sportwedstrijd bekijken",id:"0.19.0.0.0"},{label:"Tentoonstelling",id:"0.0.0.0.0"},{label:"Theatervoorstelling",id:"0.55.0.0.0"}])}(),function(){"use strict";function a(){return function(a,b){var c={EUR:{symbol:"",thousand:".",decimal:",",format:"%s%v",precision:2}},d=c[b];return d||(d=c.EUR),accounting.formatMoney(a,d)}}angular.module("udb.search").filter("currency",a)}(),function(){"use strict";function a(){return function(a,b){var c=_.filter(a,function(a){return"undefined"!=typeof a?"schema:ImageObject"===a["@type"]&&(a.inLanguage===b||angular.isUndefined(a.inLanguage)):void 0});return c}}angular.module("udb.search").filter("imagesByLanguage",a)}(),function(){"use strict";function a(){return function(a,b,d){var e=_.cloneDeep(a);return e=c(e,b,d)}}function b(a){return 2===a.length}function c(a,d,e){return a=_.each(a,function(f,g){if(_.isObject(f)){var h=Object.keys(f);if(h.length>0&&h.every(b)){if(f[d])a[g]=f[d];else if(e){var i=h[0],j=f[i];a[g]=j}}else f=c(f,d,e)}})}angular.module("udb.search").filter("jsonLDLang",a)}(),function(){"use strict";angular.module("udb.search").value("placeTypes",[{label:"Archeologische site",id:"3CuHvenJ+EGkcvhXLg9Ykg"},{label:"Bibliotheek of documentatiecentrum",id:"kI7uAyn2uUu9VV6Z3uWZTA"},{label:"Bioscoop",id:"BtVNd33sR0WntjALVbyp3w"},{label:"Cultuur- of ontmoetingscentrum",id:"Yf4aZBfsUEu2NsQqsprngw"},{label:"Discotheek",id:"YVBc8KVdrU6XfTNvhMYUpg"},{label:"Horeca",id:"ekdc4ATGoUitCa0e6me6xA"},{label:"Jeugdhuis of jeugdcentrum",id:"JCjA0i5COUmdjMwcyjNAFA"},{label:"Monument",id:"0.14.0.0.0"},{label:"Museum of galerij",id:"GnPFp9uvOUyqhOckIFMKmg"},{label:"Natuur, park of tuin",id:"0.15.0.0.0"},{label:"Openbare ruimte",id:"0.8.0.0.0"},{label:"Recreatiedomein of centrum",id:"0.53.0.0.0"},{label:"School of onderwijscentrum",id:"rJRFUqmd6EiqTD4c7HS90w"},{label:"Sportcentrum",id:"eBwaUAAhw0ur0Z02i5ttnw"},{label:"Thema of pretpark",id:"0.41.0.0.0"},{label:"Winkel",id:"VRC6HX0Wa063sq98G5ciqw"},{label:"Speeltuin",id:"wwjRVmExI0w6xfQwT1KWpx"},{label:"Zaal of expohal",id:"OyaPaf64AEmEAYXHeLMAtA"}])}(),function(){"use strict";angular.module("udb.search").value("fieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],termNis:["=","!"],number:["=","><","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a),c=b.field===j,d="";switch(b.transformer){case"!":d="!";break;case"-":d="-";break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b.field=d+(c?"":b.field+":"),b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=moment(d).format()),e instanceof Date&&(e=moment(e).format()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";if(a.right)d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d);else{var f=a.field&&a.left.field===j&&a.left.prefix;d=f?a.field+":("+k(a.left)+")":l(a.left,b+1,c)}return d}var g="",h=k(a);if(a.field!==j&&null!==a.field){var i="";_.contains(["!","+","-"],a.transformer)&&(i=a.transformer),g+=i+a.field+":"}return g+=h,c+=g};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type){var h=b.name,i="(!"+b.name+")";a.term!==h&&a.term!==i&&(a.invalid=!0)}if("tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var j=moment(a.lowerBound),k=moment(a.upperBound);j.isValid()&&k.isValid()?j.isSame(k,"day")?a.transformer="=":a.transformer="><":(!j.isValid()&&k.isValid()&&(a.transformer="<"),!k.isValid()&&j.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("LuceneQueryBuilder",a),a.$inject=["LuceneQueryParser","QueryTreeValidator","QueryTreeTranslator","queryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").constant("queryFieldTranslations",{sapi2:{TYPE:"type",CDBID:"cdbid",LOCATION_ID:"location_id",ORGANISER_ID:"organiser_id",TITLE:"title",KEYWORDS:"keywords",CITY:"city",ORGANISER_KEYWORDS:"organiser_keywords",ZIPCODE:"zipcode",COUNTRY:"country",CATEGORY_NAME:"category_name",AGEFROM:"agefrom",DETAIL_LANG:"detail_lang",PRICE:"price",STARTDATE:"startdate",ENDDATE:"enddate",ORGANISER_LABEL:"organiser_label",LOCATION_NAME:"location_name",LOCATION_LABELS:"location_labels",EXTERNALID:"externalid",LASTUPDATED:"lastupdated",CREATIONDATE:"creationdate",CREATEDBY:"createdby",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"category_eventtype_name",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"category_theme_name",CATEGORY_FACILITY_NAME:"category_facility_name",CATEGORY_TARGETAUDIENCE_NAME:"category_targetaudience_name",CATEGORY_FLANDERSREGION_NAME:"category_flandersregion_name",AVAILABLEFROM:"availablefrom"},en:{TEXT:"text",KEYWORDS:"label",PHYSICAL_GIS:"geo",CATEGORY_NAME:"category",DETAIL_LANG:"translation",ORGANISER_LABEL:"organiser",LOCATION_LABEL:"location",CREATIONDATE:"created",CATEGORY_EVENTTYPE_NAME:"eventtype",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"theme",CATEGORY_FACILITY_NAME:"facility",CATEGORY_TARGETAUDIENCE_NAME:"targetaudience",CATEGORY_FLANDERSREGION_NAME:"region",AVAILABLEFROM:"available",LOCATION_ID:"locationid",ORGANISER_ID:"organizationid",DATE:"date"},fr:{LOCATION_LABEL:"location",TITLE:"titre"},nl:{TYPE:"type",TEXT:"tekst",LOCATION_ID:"locatieid",ORGANISER_ID:"organisatieid",TITLE:"titel",KEYWORDS:"label",CITY:"stad",ORGANISER_KEYWORDS:"organisatielabel",ZIPCODE:"postcode",COUNTRY:"land",CATEGORY_NAME:"categorie",AGEFROM:"leeftijd",DETAIL_LANG:"vertaling",PRICE:"prijs",DATE:"datum",STARTDATE:"startdatum",ENDDATE:"einddatum",ORGANISER_LABEL:"organisatienaam",LOCATION_LABEL:"locatienaam",EXTERNALID:"externalid",LASTUPDATED:"laatst_aangepast",CREATIONDATE:"gecreëerd",CREATEDBY:"gecreëerd_door",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"type",LOCATIONTYPE:"locatietype",OFFERTYPE:"aanbodtype",CATEGORY_THEME_NAME:"thema",CATEGORY_FACILITY_NAME:"voorzieningen",CATEGORY_TARGETAUDIENCE_NAME:"doelgroep",CATEGORY_FLANDERSREGION_NAME:"gemeente",AVAILABLEFROM:"datum_beschikbaar"}})}(),function(){"use strict";angular.module("udb.search").value("queryFields",[{name:"cdbid",field:"id",type:"string",group:"what",editable:!0},{name:"offertype",field:"_type",type:"choice",group:"what",editable:!0,options:["event","place"]},{name:"keywords",field:"labels",type:"string",group:"what",editable:!0},{name:"title",field:"name.\\*",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"locationtype",field:"terms.id",type:"term",group:"what",editable:!0},{name:"category_theme_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"text",field:"",type:"tokenized-string",group:"what",editable:!0},{name:"city",field:"address.\\*.addressLocality",type:"string",group:"where",editable:!0},{name:"zipcode",field:"address.\\*.postalCode",type:"string",group:"where",editable:!0},{name:"location_id",field:"location.id",type:"string",group:"where",editable:!0},{name:"country",field:"address.\\*.addressCountry",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",field:"location.name.\\*",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",field:"location.labels",type:"string",group:"where",editable:!0},{name:"nisRegions",field:"regions",type:"termNis",group:"where",editable:!0},{name:"date",field:"dateRange",type:"date-range",group:"when",editable:!0},{name:"permanent",field:"calendarType",type:"check",group:"when",editable:!0},{name:"lastupdated",field:"modified",type:"date-range",group:"input-information",editable:!0},{name:"creationdate",field:"created",type:"date-range",group:"input-information",editable:!0},{name:"createdby",field:"creator",type:"string",group:"input-information",editable:!0},{name:"availablefrom",field:"availableRange",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",field:"languages",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",field:"organizer.labels",type:"string",group:"other",editable:!0},{name:"organiser_id",field:"organizer.id",type:"string",group:"other",editable:!0},{name:"agefrom",field:"typicalAgeRange",type:"number",group:"other",editable:!0},{name:"attendance_mode",field:"attendanceMode",type:"choice",group:"other",editable:!0,options:["online","offline","mixed"]},{name:"price",field:"price",type:"number",group:"other",editable:!0},{name:"status",field:"status",type:"choice",group:"other",editable:!0,options:["Available","Unavailable","TemporarilyUnavailable"]},{name:"booking_availability",field:"bookingAvailability",type:"choice",group:"other",editable:!0,options:["available","unavailable"]},{name:"organiser_label",field:"organizer.name.\\*",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",field:"terms.id",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",field:"audienceType",type:"choice",group:"other",editable:!0,options:["everyone","members","education"]},{field:"calendarType",type:"string"},{field:"workflowStatus",type:"choice",options:["DRAFT","READY_FOR_VALIDATION","APPROVED","REJECTED","DELETED"]},{field:"name.nl",type:"tokenized-string"},{field:"name.fr",type:"tokenized-string"},{field:"name.de",type:"tokenized-string"},{field:"name.en",type:"tokenized-string"},{field:"description.nl",type:"tokenized-string"},{field:"description.fr",type:"tokenized-string"},{field:"description.de",type:"tokenized-string"},{field:"description.en",type:"tokenized-string"},{field:"terms.label",type:"string"},{field:"mediaObjectsCount",type:"number"},{field:"videosCount",type:"number"},{field:"address.\\*.streetAddress",type:"string"},{field:"location.id",type:"string"},{field:"location.name.nl",type:"tokenized-string"},{field:"location.name.fr",type:"tokenized-string"},{field:"location.name.de",type:"tokenized-string"},{field:"location.name.en",type:"tokenized-string"},{field:"location.terms.id",type:"string"},{field:"organizer.id",type:"string"},{field:"organizer.name.nl",type:"tokenized-string"},{field:"organizer.name.fr",type:"tokenized-string"},{field:"organizer.name.de",type:"tokenized-string"},{field:"organizer.name.en",type:"tokenized-string"},{field:"allAges",type:"string"},{field:"contributors",type:"string"},{name:"startdate",field:"dateRange",type:"date-range"},{name:"enddate",field:"dateRange",type:"date-range"}])}(),function(){"use strict";function a(a,b){var c=function(c,d){var e=_.findKey(a[d],function(a){return a===c}),f=void 0===e?void 0:_.find(b,{name:e.toLowerCase()});return void 0===f?c:f.field},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"sapi2"),a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("QueryTreeTranslator",a),a.$inject=["queryFieldTranslations","queryFields"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"field"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){var b=a.split(".");return b.pop(),b.join(".")}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==o&&o!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("QueryTreeValidator",a),a.$inject=["queryFields"]}(),function(){"use strict";angular.module("udb.search").value("sapi2FieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],number:["=","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+":"+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a);switch(b.transformer){case"!":b.field="!"+b.field;break;case"-":b.field="-"+b.field;break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=d.toISOString()),e instanceof Date&&(e=e.toISOString()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";return a.right?(d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d)):d=l(a.left,b+1,c),d}var f="",g=k(a);if(a.field!==j&&null!==a.field){var h="";_.contains(["!","+","-"],a.transformer)&&(h=a.transformer),f+=h+a.field+":"}return f+=g,c+=f};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type&&(_.contains(["TRUE","FALSE"],a.term.toUpperCase())?a.term=a.term.toUpperCase():a.invalid=!0),"tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var h=moment(a.lowerBound),i=moment(a.upperBound);h.isValid()&&i.isValid()?h.isSame(i,"day")?a.transformer="=":a.transformer="><":(!h.isValid()&&i.isValid()&&(a.transformer="<"),!i.isValid()&&h.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("sapi2QueryBuilder",a),a.$inject=["LuceneQueryParser","sapi2QueryTreeValidator","sapi2QueryTreeTranslator","sapi2QueryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").value("sapi2QueryFields",[{name:"cdbid",type:"string",group:"what",editable:!0},{name:"keywords",type:"string",group:"what",editable:!0},{name:"title",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",type:"term",group:"what",editable:!0},{name:"category_theme_name",type:"term",group:"what",editable:!0},{name:"city",type:"string",group:"where",editable:!0},{name:"zipcode",type:"string",group:"where",editable:!0},{name:"country",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",type:"string",group:"where",editable:!0},{name:"category_flandersregion_name",type:"term",group:"where",editable:!0},{name:"startdate",type:"date-range",group:"when",editable:!0},{name:"enddate",type:"date-range",group:"when",editable:!0},{name:"permanent",type:"check",group:"when",editable:!0},{name:"lastupdated",type:"date-range",group:"input-information",editable:!0},{name:"lastupdatedby",type:"string",group:"input-information",editable:!0},{name:"creationdate",type:"date-range",group:"input-information",editable:!0},{name:"createdby",type:"string",group:"input-information",editable:!0},{name:"availablefrom",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",type:"string",group:"other",editable:!0},{name:"agefrom",type:"number",group:"other",editable:!0},{name:"price",type:"number",group:"other",editable:!0},{name:"organiser_label",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",type:"term",group:"other",editable:!0 +},{name:"category_publicscope_name",type:"term",group:"other",editable:!0},{name:"like_count",type:"number"},{name:"recommend_count",type:"number"},{name:"attend_count",type:"number"},{name:"comment_count",type:"number"},{name:"category_name",type:"term"},{name:"externalid",type:"string"},{name:"private",type:"check"},{name:"physical_gis",type:"string"}])}(),function(){"use strict";function a(a){var b=a,c=function(a,c){var d=a,e=_.findKey(b[c],function(b){return b===a});return e&&(d=e.toLowerCase()),d},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("sapi2QueryTreeTranslator",a),a.$inject=["queryFieldTranslations"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"name"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){return a.split(".")[0]}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==n&&n!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("sapi2QueryTreeValidator",a),a.$inject=["sapi2QueryFields"]}(),function(){"use strict";function a(a,b){var c=null,d=null;this.clearQueryTree=function(){d=null},this.setQueryString=function(b,e){var f=!1;c&&c.queryString===b||(f=a.createQuery(b),a.isValid(f),this.setQuery(f),d=null),c&&!f&&e&&this.setQuery(c)},this.setQueryTree=function(b){var c=a.unparseGroupedTree(b),e=a.createQuery(c);a.isValid(e),this.setQuery(e),d=b},this.setQuery=function(a){c=a,b.$emit("searchQueryChanged",a)},this.getQuery=function(){return c},this.getQueryTree=function(){return angular.copy(d)}}angular.module("udb.search").service("searchHelper",a),a.$inject=["LuceneQueryBuilder","$rootScope"]}(),function(){"use strict";function a(a){var b={ALL:{name:"all",icon:"fas fa-check-square"},NONE:{name:"none",icon:"far fa-square"},SOME:{name:"some",icon:"fas fa-minus-square"}},c=function(c,d){this.pageSize=c||30,this.events=[],this.totalItems=0,this.currentPage=d||1,this.loading=!0,this.lastQuery=null,this.eventProperties={description:{name:a.instant("search.description"),visible:!1},labels:{name:a.instant("search.labels"),visible:!1},image:{name:a.instant("search.picture"),visible:!1}},this.eventSpecifics=[{id:"input",name:a.instant("search.inputInformation")}],this.activeSpecific=this.eventSpecifics[0],this.selectedOffers=[],this.selectionState=b.NONE,this.querySelected=!1};return c.prototype={enableSpecifics:function(a){this.eventSpecifics=_.uniq(_.union(this.eventSpecifics,a),"id")},toggleSelection:function(){var a=this.selectionState;a===b.SOME||a===b.ALL?(this.deselectPageItems(),this.querySelected&&(this.deselectAll(),this.querySelected=!1)):this.selectPageItems()},selectQuery:function(){this.querySelected=!0,this.selectPageItems()},updateSelectionState:function(){var a=this.selectedOffers,c=_.filter(this.events,function(b){return _.contains(a,b)});c.length===this.pageSize?this.selectionState=b.ALL:c.length>0?this.selectionState=b.SOME:this.selectionState=b.NONE},toggleSelect:function(a){if(!this.querySelected){var b=_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]});if(b)this.selectedOffers=_.filter(this.selectedOffers,function(b){return b["@id"]!==a["@id"]});else{var c=_.find(this.events,function(b){return b["@id"]===a["@id"]});this.selectedOffers.push(c)}this.updateSelectionState()}},deselectAll:function(){this.selectedOffers=[],this.selectionState=b.NONE},deselectPageItems:function(){var a=this.selectedOffers;_.forEach(this.events,function(b){_.remove(a,function(a){return a["@id"]===b["@id"]})}),this.selectionState=b.NONE},selectPageItems:function(){var a=this.events,c=this.selectedOffers;_.each(a,function(a){c.push(a)}),this.selectedOffers=_.uniq(c),this.selectionState=b.ALL},isOfferSelected:function(a){return!!_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]})},setResults:function(a){var b=this;b.pageSize=a.itemsPerPage||30,b.events=a.member||[],b.totalItems=a.totalItems||0,b.loading=!1,this.querySelected&&this.selectPageItems(),this.updateSelectionState()},queryChanged:function(a){this.loading=!0,this.selectedOffers=[],this.querySelected=!1,this.lastQuery&&this.lastQuery!==a&&(this.currentPage=1),this.lastQuery=a},activateSpecific:function(a){this.activeSpecific=a},isShowingProperties:function(){var a=_.find(this.eventProperties,function(a){return a.visible});return!!a}},c}angular.module("udb.search").factory("SearchResultViewer",a),a.$inject=["$translate"]}(),function(){"use strict";angular.module("udb.search").constant("EventTranslationState",{ALL:{name:"all",icon:"fa-circle"},NONE:{name:"none",icon:"fa-circle-o"},SOME:{name:"some",icon:"fa-dot-circle-o"}})}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event.directive.html"};return a}angular.module("udb.search").directive("udbEvent",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l){function m(a){var b=k.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}function n(a){var d=a.facilities.sort(function(a,b){return a.label.localeCompare(b.label)});return a.facilities=d,v=a,v.updateTranslationState(),b.event=c(v,x,!0),b.offerType=b.event.url.split("/").shift(),b.translatedOfferType=m(b.event.type.label),w.offerExpired="event"===b.offerType?a.isExpired():!1,w.hasFutureAvailableFrom=a.hasFutureAvailableFrom(),w.fetching=!1,p(),v}function o(a){return a&&"event"===b.event.url.split("/").shift()?h.resolve(a):h.reject()}function p(){b.$watch(function(){return v.labels},function(a){b.event.labels=angular.copy(a)})}function q(a,b,c){var d=w.activeLanguage,f=c||a;b&&b!==v[a][d]&&e.translateProperty(v,f,d,b).then(v.updateTranslationState(v))}function r(){w.labelResponse="",w.labelsError=""}function s(a){b.event.labels=angular.copy(v.labels),w.labelResponse="unlabelError",w.labelsError=a.title}function t(a){r(),f.unlabel(v,a.name)["catch"](s)}function u(a){return b.event.location&&(b.event.location=c(b.event.location,x)),h.resolve(a)}var v,w=this,x=k.use()||"nl";w.translation=!1,w.activeLanguage=x,w.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],w.uitId=_.get(i,"uitidUrl"),w.labelRemoved=t,l.isGodUser().then(function(a){w.isGodUser=a}),w.init=function(){if(!b.event.title){if(w.fetching=!0,b.event.name){var c=a.formatJsonLDEntity(b.event);return void n(c)}return a.getOffer(b.event["@id"]).then(function(a){n(a)})}w.fetching=!1},h.when(w.init()).then(u).then(o)["finally"](function(){w.editable=!0}),w.hasActiveTranslation=function(){var a=v;return a&&a.translationState[w.activeLanguage]!==d.NONE},w.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return v&&a&&(b=v.translationState[a].icon),b},w.translate=function(){w.applyPropertyChanges("name"),w.applyPropertyChanges("description")},w.toggleLanguage=function(a){a===w.activeLanguage?w.stopTranslating():(w.activeLanguage=a,w.translation=c(v,w.activeLanguage))},w.hasPropertyChanged=function(a){var b=w.activeLanguage,c=w.translation;return w.translation&&v[a][b]!==c[a]},w.undoPropertyChanges=function(a){var b=w.activeLanguage,c=w.translation;c&&(c[a]=v[a][b])},w.applyPropertyChanges=function(a){var b=w.translation[a];q(a,b,a)},w.stopTranslating=function(){w.translation=void 0,w.activeLanguage=x},w.labelAdded=function(a){var c=_.find(v.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(v.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):(w.addedLabel=a.name,f.label(v,a.name).then(function(){w.labelResponse="success",b.event.labels=angular.copy(v.labels)})["catch"](function(){w.labelResponse="error"}))},w.showConcludedButton=function(){var a=_.get(i,"concludedButton.toggle",!1);if(!a)return!1;var c=_.get(i,"calendarHighlight.date"),d=moment(c).endOf("day");return"event"===b.offerType&&d=h;if(i)l("EVENT-EXPORT.TOO-MANY-ITEMS",{limit:h}).then(function(a){c.alert(a)});else if(f&&f.queryString.length&&m.isValid(f)){e.open({templateUrl:"templates/event-export-modal.html",controller:"EventExportController",controllerAs:"exporter",size:"lg"})}else l("EVENT-EXPORT.QUERY-IS-MISSING").then(function(a){c.alert(a)})}function t(a,b){w(b)}a.resultViewer=new f(30,q()),a.realQuery=!1,a.activeQuery=!1,a.queryEditorShown=!1,a.currentPage=q(),a.language=l.use()||"nl";var u=[{id:"accessibility",name:"Toegankelijkheidsinformatie",permission:n.editFacilities}];o.getPermissions().then(function(b){var c=_.filter(u,function(a){return!_.has(a,"permission")||_.contains(b,a.permission)});a.resultViewer.enableSpecifics(c)});var v=function(c){var e=(a.resultViewer.currentPage-1)*a.resultViewer.pageSize,f="string"==typeof c?c:c.queryString,g=a.resultViewer.currentPage>1?String(a.resultViewer.currentPage):null;d.search({query:p().queryString||null,page:g}),a.resultViewer.loading=!0,b.findOffers(f,e).then(function(c){c.member&&(c=b.reformatJsonLDData(c)),h.addPagedCollection(c),a.resultViewer.setResults(c)})},w=function(b){if(a.activeQuery=b,m.isValid(b)){var c=m.unparse(b);a.resultViewer.queryChanged(c),v(c),c!==b.originalQueryString?a.realQuery=c:a.realQuery=!1}},x=function(c){var d=a.resultViewer.selectedOffers;_.each(d,function(a){var d;d=b.getOffer(new URL(a["@id"])),d.then(function(a){a.label(c)})}),_.each(c,function(a){g.labelOffersById(d,a)})},y=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-label-modal.html",controller:"OfferLabelModalCtrl",controllerAs:"lmc"});d.result.then(x)},z=function(){var b=a.resultViewer.querySelected;b?r():y()},A=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-languages-modal.html",controller:"OfferLanguagesModalCtrl",controllerAs:"lmc"});d.result.then(x)};a.exportEvents=s,a.label=z,a.addLanguageIcons=A,a.startEditing=function(){a.queryEditorShown=!0},a.stopEditing=function(){a.queryEditorShown=!1};var B=1===a.currentPage;a.pageChanged=function(){var b=a.currentPage;B?(a.resultViewer.currentPage=b,v(a.activeQuery),c.scroll(0,0)):(a.currentPage=a.resultViewer.currentPage,B=!0)};var C=_.once(function(){var b=j.$on("searchQueryChanged",t),c=j.$on("startEditingQuery",a.startEditing),d=j.$on("stopEditingQuery",a.stopEditing);a.$on("$destroy",c),a.$on("$destroy",b),a.$on("$destroy",d)});C()}angular.module("udb.search").controller("SearchController",a),a.$inject=["$scope","udbApi","$window","$location","$uibModal","SearchResultViewer","offerLabeller","offerLocator","searchHelper","$rootScope","eventExporter","$translate","LuceneQueryBuilder","authorization","authorizationService"]}(),function(){"use strict";function a(){return{templateUrl:"templates/search.html",restrict:"EA",controller:"SearchController"}}angular.module("udb.search").directive("udbSearch",a)}(),function(){"use strict";function a(a,b,c){function d(){a.all([b.getEventCardSystems(n.id),b.findOrganisationsCardSystems(m.id)]).then(h,e)}function e(a){400===a.status&&(l.uitpasUnavailableType="already_has_ticketsales"),404===a.status&&(l.uitpasUnavailableType="not_found")}function f(){l.uitpasUnavailableType=void 0}function g(){l.availableCardSystems=void 0,f(),j(),d()}function h(a){var b=a[0],c=a[1];l.availableCardSystems=_.map(c,function(a){return _.assign(a,{assignedDistributionKey:i(b,a),active:!!_.find(b,{id:a.id})})})}function i(a,b){var c=_.find(a,{id:b.id});return _.first(!c||_.isEmpty(c.distributionKeys)?b.distributionKeys:c.distributionKeys)}function j(){l.persistingCardSystems=!1}function k(a){return a.assignedDistributionKey?l.distributionKeyAssigned(a):b.addEventCardSystem(n.id,a.id)}var l=this,m=l.organisation,n=l.offerData;l.$onInit=d,l.refresh=g,l.distributionKeyAssigned=function(d){if(!d.assignedDistributionKey)throw"card system distribution key is missing";return l.persistingCardSystems=!0,b.addEventCardSystemDistributionKey(n.id,d.id,d.assignedDistributionKey.id).then(function(){return c.$emit("uitpasDataSaved"),j(),a.resolve()})},l.activeCardSystemsChanged=function(a){function d(b){a.active=!a.active,e(b)}function f(){c.$emit("uitpasDataSaved")}l.persistingCardSystems=!0;var g=a.active?k(a):b.removeEventCardSystem(n.id,a.id);g.then(f,d)["finally"](j)}}angular.module("udb.uitpas").component("cardSystemSelector",{templateUrl:"templates/card-systems.html",controller:a,controllerAs:"cardSystemSelector",bindings:{organisation:"<",offerData:"<"}}),a.$inject=["$q","udbUitpasApi","$rootScope"]}(),function(){"use strict";function a(a,b,c){function d(b){b?(a.showUitpasInfo=_.get(g,"organizer.isUitpas",!1)&&c.isEvent,g.showCardSystems=g.price&&!!g.price.length):(g.showCardSystems=!1,a.showUitpasInfo=!1)}function e(){g.eventFormData=c,d(g.organizer),g.listeners=[b.$on("eventFormSaved",g.showCardSystemsIfPriceIsSelected),b.$on("eventOrganizerSelected",g.updateOrganizer),b.$on("eventOrganizerDeleted",g.updateOrganizer),b.$on("uitpasDataSaved",g.markUitpasDataAsCompleted)]}function f(){_.invoke(g.listeners,"call")}var g=this;a.showUitpasInfo=!1,a.uitpasCssClass="state-incomplete",g.listeners=[],g.showCardSystems=!1,g.$onInit=e,g.$onDestroy=f,g.showCardSystemsIfPriceIsSelected=function(a,b){g.showCardSystems=b.priceInfo&&!!b.priceInfo.length},g.markUitpasDataAsCompleted=function(){a.uitpasCssClass="state-complete"},g.updateOrganizer=function(a,b){g.organizer=b,d(b)}}angular.module("udb.uitpas").component("uitpasInfo",{templateUrl:"templates/uitpasInfo.html",controller:a,controllerAs:"upic",bindings:{organizer:"<",price:"<"}}),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";angular.module("udb.uitpas").constant("DefaultUitpasLabels",{PASPARTOE:"Paspartoe",UITPAS:"UiTPAS",UITPAS_GENT:"UiTPAS Gent",UITPAS_OOSTENDE:"UiTPAS Oostende",UITPAS_REGIO_AALST:"UiTPAS Regio Aalst",UITPAS_DENDER:"UiTPAS Dender",UITPAS_ZUIDWEST:"UiTPAS Zuidwest",UITPAS_MECHELEN:"UiTPAS Mechelen",UITPAS_KEMPEN:"UiTPAS Kempen",UITPAS_MAASMECHELEN:"UiTPAS Maasmechelen",UITPAS_LEUVEN:"UiTPAS Leuven",UITPAS_LIER:"UiTPAS Lier","UITPAS_HEIST-OP-DEN-BERG":"UiTPAS Heist-op-den-Berg",UITPAS_MEETJESLAND:"UiTPAS Meetjesland",UITPAS_WESTHOEK:"UiTPAS Westhoek"})}(),function(){"use strict";function a(a){var b=this;b.organisation=a.organisation,b.query=a.query}angular.module("udb.uitpas").controller("OrganisationSuggestionController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/organisation-suggestion.directive.html",controller:"OrganisationSuggestionController",controllerAs:"os",scope:{organisation:"<",query:"<"},restrict:"A"}}angular.module("udb.uitpas").directive("uitpasOrganisationSuggestion",a)}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){return"object"==typeof a.distributionKeys&&(a.distributionKeys=_.values(a.distributionKeys)),a}function h(b){var c="object"==typeof b.data?_.values(b.data):b.data;return a.resolve(_.map(c,g))}function i(b){return a.resolve(b.data)}function j(b,c,d){function g(g){return f().add(c,"seconds").isAfter(d)?a.reject(g):e(function(){return j(b,c,d)},c)}return b()["catch"](g)}var k=_.get(c,"uitpasUrl"),l=_.get(c,"uitpasMaxDelay",8),m={headers:{"Content-Type":"application/json",Authorization:"Bearer "+d.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}};this.getEventCardSystems=function(a){function c(){return b.get(k+"events/"+a+"/cardSystems/",m)}var d=f().add(l,"s");return j(c,2,d).then(h)},this.getTicketSales=function(c,d){function e(){return b.get(k+"events/"+c,m)}function g(a){return a.data.hasTicketSales}var h=a.defer(),i=f().add(l,"s");return d.isUitpas?h.resolve(j(e,2,i).then(g)):h.resolve(!1),h.promise},this.findOrganisationsCardSystems=function(a){return b.get(k+"organizers/"+a+"/cardSystems/",m).then(h)},this.addEventCardSystem=function(a,c){return b.put(k+"events/"+a+"/cardSystems/"+c,null,m).then(i)},this.removeEventCardSystem=function(a,c){return b["delete"](k+"events/"+a+"/cardSystems/"+c,m).then(i)},this.addEventCardSystemDistributionKey=function(a,c,d){return b.put(k+"events/"+a+"/cardSystems/"+c+"/distributionKey/"+d,null,m).then(i)}}angular.module("udb.uitpas").service("udbUitpasApi",a),a.$inject=["$q","$http","appConfig","uitidAuth","$timeout","moment"]}(),function(){"use strict";function a(){var a;this.useLabels=function(b){a=b},this.$get=["DefaultUitpasLabels",function(b){return a?a:b}]}angular.module("udb.uitpas").provider("UitpasLabels",a)}(),function(){angular.module("udb.core").run(["$templateCache",function(a){"use strict";a.put("templates/calendar-summary.directive.html",'\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n'),a.put("templates/image-detail.directive.html",'\n \n \n \n \n
    \n
  • \n
    \n \n {{::translateImageDetail(\'alt_image\', {index: $index}) }}\n \n
    \n
    \n \n

    {{image.description}}

    \n

    © {{image.copyrightHolder}}

    \n
    \n
    \n
  • \n
\n \n \n\n'),a.put("templates/udb.workflow-status.directive.html",'\n \n \n \n \n {{::cm.status | translate }}\n {{cm.event.availableFrom | date: \'dd/MM/yyyy\'}}\n \n \n

 

\n \n\n\n \n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n
\n \n\n'),a.put("templates/unexpected-error-modal.html",'\n\n\n'),a.put("templates/event-cultuurkuur.html",'
\n
\n

\n
\n
\n

\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n

Bekijk je evenement op cultuurkuur.be en voeg de juiste onderwijsniveaus toe zodat leerkrachten je vinden.

\n Doorgaan\n
\n
\n
\n
\n
\n

\n
\n
\n
\n'),a.put("templates/dashboard-item.directive.html",'\n \n \n \n \n Online op \n Publicatie afgewezen \n
\n \n \n \n - \n \n \n \n\n\n\n \n
\n \n \n
    \n
  • \n \n
  • \n
  • \n
  • \n \n
  • \n
\n
\n
\n \n
\n \n
\n \n
\n
\n\n'),a.put("templates/dashboard-organizer-item.directive.html",'\n \n \n \n
\n \n \n ,\n \n \n\n\n\n \n
\n \n
\n
\n\n'),a.put("templates/event-delete-confirm-modal.html",'\n\n'), a.put("templates/place-delete-confirm-modal.html",'\n\n'),a.put("templates/dashboard.html",'

\n \n

\n\n
\n \n
\n\n
\n \n
\n\n
\n\n
\n
\n\n
\n \n
\n\n
\n \n
\n\n
\n
\n

\n
\n

\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n \n \n
\n \n\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n
\n \n\n
\n
\n\n
\n
\n\n
\n'),a.put("templates/event-duplication-footer.component.html",'
\n \n \n \n
'),a.put("templates/event-duplication-step.component.html",'

\n\n\n\n\n'),a.put("templates/event-duplication.html",'
\n \n \n
\n'),a.put("templates/job-logo.directive.html",'
\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
\n'),a.put("templates/offer-label-modal.html",'\n\n\n'),a.put("templates/offer-languages-modal.html",'\n\n\n'),a.put("templates/base-job.template.html",'

\n \n \n \n \n

\n'),a.put("templates/failed-job.template.html",'

\n \n \n \n \n \n \n \n

\n'),a.put("templates/job-log.component.html",'
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n \n\n
\n
\n
\n
\n'),a.put("templates/booking-info-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n
  • \n\n
  • \n
  • {{::bookingInfo.email}}
  • \n
  • Van {{::bookingInfo.availabilityStarts | date}} tot {{::bookingInfo.availabilityEnds | date}}
  • \n
\n \n \n\n'),a.put("templates/contact-point-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
\n \n \n\n'),a.put("templates/event-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n
{{::event.name}}
{{::translateType(event.type.label)}}
Toegang\n

\n \n \n
\n \n \n

\n \n \n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n
\n
{{eventLocation(event)}}\n {{eventLocation(event)}}\n
\n \n {{::event.onlineUrl}}\n \n \n
\n \n \n Probleem bij het ophalen van de kalenderinformatie\n \n
\n

\n
\n
\n

\n
\n
\n {{::event.organizer.name}}\n {{::event.organizer.name}}\n
\n \n \n \n \n \n
{{priceInfo.name}}\n \n \n {{priceInfo.price | currency}} \n \n
\n
\n {{ageRange}}\n \n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n Auth0 client id: \n
\n
\n Auth0 client name: \n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/form-age.html",'
\n \n \n
\n \n \n {{ translateAgeRange(ageRange.label) }}\n {{ getAgeRangeLabel(ageRange) }}\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n
\n \n
\n
\n
\n'), a.put("templates/form-audience.html",'
\n
\n
\n \n
\n
\n
\n \n
\n\n
\n \n
\n\n\n
\n \n
\n
\n \n
\n \n
\n
\n
'),a.put("templates/form-calendar-datepicker.component.html",'

\n \n \n \n \n

'),a.put("templates/form-calendar-period.component.html",'
\n \n
\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n
\n
\n

\n
\n
\n
\n
\n'),a.put("templates/form-calendar-timepicker.component.html",'\n\n'),a.put("templates/form-event-calendar.component.html",'
\n
\n\n \n \n

\n \n

\n
\n\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n

\n
\n
\n
\n
\n \n \n &\n \n
\n
\n\n \n
\n
\n\n
\n \n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/form-place-calendar.component.html",'
\n
\n
\n
\n \n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/city-suggestion.html",'\n'),a.put("templates/event-form-image-edit.html",'\n'),a.put("templates/event-form-image-remove.html",'\n'),a.put("templates/event-form-image-upload.html",'\n'),a.put("templates/opening-hours-editor.modal.html",'\n\n\n'),a.put("templates/event-form-openinghours.html",'
\n
\n
\n

\n \n \n

\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n
\n
\n'),a.put("templates/event-form-organizer-modal.html",'\n\n\n\n'), a.put("templates/organizer-typeahead-template.html","{{match.model.name}}"),a.put("templates/event-form-place-modal.html",'\n\n\n'),a.put("templates/place-suggestion-popup.html",''),a.put("templates/place-suggestion.html",'
\n \n \n \n
\n'),a.put("templates/price-form-modal.html",'\n\n\n\n'),a.put("templates/priceInfo.html",'
\n
\n
\n \n \n
\n
\n\n
\n
\n \n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n \n \n
{{priceInfo.name[$ctrl.mainLanguage]}}\n \n Gratis\n \n \n {{priceInfo.price | currency:\'€\' }} \n \n
\n
\n
\n\n
\n
\n
\n'),a.put("templates/event-form-publish-modal.html",'\n\n\n'),a.put("templates/reservation-period.html",'
\n \n \n
\n
\n
\n
\n
\n

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n
'),a.put("templates/event-preview.directive.html",'
\n\n
\n
    \n
  • \n
\n

\n
\n\n
\n\n

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n \n \n \n \n
\n \n \n
\n
\n gratis\n \n \n \n \n \n niet ingevoerd\n
\n
\n
\n
\n\n
\n \n Ingevoerd door \n op \n \n \n
\n'),a.put("templates/event-suggestion.directive.html",''),a.put("templates/place-preview.directive.html",'
\n\n
\n
    \n
  • \n
\n

\n
\n\n
\n\n

\n\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n \n \n
\n \n \n \n \n
\n
\n
\n\n
\n \n Ingevoerd door \n op \n \n
\n'),a.put("templates/place-suggestion.directive.html",''),a.put("templates/suggestion-preview-modal.html",'\n\n\n'),a.put("templates/event-form-publish.html",'
\n
\n\n \n
\n \n \n \n \n \n \n \n
\n
\n \n Loading...\n
\n
\n'),a.put("templates/event-form-step1.html",'
\n \n
\n
\n
\n
\n

\n 1\n \n

\n
\n
\n
\n\n
\n
\n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n\n
\n

\n
\n\n
\n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n
\n\n
\n
\n \n \n
\n

\n
\n
\n\n
\n \n
\n
\n
\n

\n
\n
\n
    \n
  • \n \n
  • \n
\n
\n
\n
\n
\n\n

\n \n \n

\n
\n\n
\n'),a.put("templates/event-form-step2.html",'
\n \n
\n
\n
\n
\n

\n 2\n \n \n

\n
\n
\n
\n\n \n \n
\n
\n'),a.put("templates/event-form-step3.html",'
\n\n
\n
\n
\n
\n
\n

\n 3\n \n \n

\n
\n
\n \n
\n
\n
\n\n
\n
\n \n
\n
\n
\n \n
\n \n
\n
\n \n
\n
\n \n \n \n \n \n \n
\n \n
\n
\n
\n
\n \n \n
\n\n\n
\n
\n
\n \n
\n \n \n
\n\n
\n \n \n
\n \n
\n\n
\n
\n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n
\n
\n \n bv. 1104CA\n \n \n \n \n \n
\n
\n
\n \n \n
\n\n
\n \n \n \n \n
\n
\n\n \n
\n\n
\n'), a.put("templates/event-form-step4.html",'
\n\n \n
\n
\n
\n
\n

\n 4\n \n

\n
\n
\n
\n\n
\n
\n \n \n\n
\n \n
\n\n
\n

\n \n \n \n

\n
\n
\n
\n\n \n\n
\n \n
    \n
  • \n {{error}}\n
  • \n
\n
\n\n
\n
\n\n

\n \n \n \n

\n\n
\n\n \n\n \n
\n\n
\n
\n

\n

\n\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n
\n
\n\n

\n \n

\n \n\n
\n\n
\n'),a.put("templates/event-form-step5.html",'
\n \n
\n\n
\n
\n
\n

\n 5\n \n \n

\n \n
\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
\n

\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n\n

\n \n \n \n \n \n \n

\n

\n

\n

\n \n \n

\n
\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n
\n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n\n \n \n\n
\n
\n
\n \n \n \n
\n\n
\n
\n \n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n
\n \n
\n
\n
\n

\n \n
\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n
\n\n
\n\n
\n
\n\n \n
\n\n
\n\n
\n
\n \n

\n
\n\n
\n

\n
\n
\n
\n \n \n \n\n
\n
\n
©
\n
\n\n
\n \n \n \n
\n\n
\n
\n
\n
\n\n
\n \n
\n
\n\n
\n\n
\n\n
\n
\n'),a.put("templates/event-form.html",'
\n
\n

\n
\n\n \n \n \n \n \n\n \n
\n'),a.put("templates/event-export-modal.html",'\n\n
\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n
\n\n
\n\n\n'),a.put("templates/export-job.template.html",'

\n \n \n \n \n \n \n Downloaden\n \n

\n'),a.put("templates/export-modal-buttons.directive.html",'\n'),a.put("templates/query-search-bar.html",'\n'),a.put("templates/label-creator.html",'

Label toevoegen

\n\n
\n
\n
\n
\n
\n \n \n

Er bestaat al een label met deze naam.

\n

Een label naam is verplicht.

\n

Een label moet uit minstens 2 tekens bestaan.

\n

Een label mag maximum 255 tekens bevatten.

\n

Een label naam mag geen puntkomma bevatten.

\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n\n
\n
\n \n
\n
\n
\n'), a.put("templates/label-editor.html",'

Label bewerken

\n\n
\n \n
\n\n
\n
\n
\n
\n
\n \n \n

Een label naam is verplicht.

\n

Een label moet uit minstens 2 tekens bestaan.

\n

Een label mag maximum 255 tekens bevatten.

\n

Een label naam mag geen puntkomma bevatten.

\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n \n\n
\n \n
\n
\n'),a.put("templates/labels-list.html",'

Labels toevoegen

\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
NaamVerborgenVoorbehoudenUitgeslotenOpties
\n Bewerken\n
\n
\n \n
\n
\n
\n'),a.put("templates/moderation-offer.html",'

\n\n\n\n\n\n \n\n\n \n\n\n\n \n'),a.put("templates/moderation-summary.html",'
\n
\n
Moderatie aanbod "{{moc.offerId}}" wordt geladen.
\n\n
\n
\n
\n \n \n \n\n \n

\n
\n
\n\n

\n \n

\n\n
\n\n \n Alle info bekijken\n  \n \n Bewerken\n \n
\n
\n \n
Geen afbeelding
\n
\n
\n
\n
Toegevoegd door\n \n \n \n \n \n \n
\n
\n \n
\n
\n
\n'),a.put("templates/reject-offer-confirm-modal.html",'\n'),a.put("templates/moderation-list.html",'

Valideren

\n\n
\n \n
\n\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n \n

\n
\n
\n \n \n
\n
\n \n
\n
\n'),a.put("templates/organization-delete.modal.html",'\n\n'),a.put("templates/organization-search-item.html",'\n \n \n \n
\n \n \n \n \n \n \n
\n
\n \n \n
\n Bewerken\n \n \n
\n \n\n'),a.put("templates/organization-search.html",'

Organisaties

\n\n
\n
\n \n
\n
\n \n
\n \n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n
NaamAdresOpties
\n \n
\n
\n
\n
\n'),a.put("templates/role-delete-confirm-modal.html",'\n\n'),a.put("templates/role-form.html",'

Role bewerken

\n\n
\n \n
\n\n
\n
\n
\n
\n \n

\n Wijzigen

\n
\n
\n \n \n

Een role naam is verplicht.

\n

Een role mag maximum 255 tekens bevatten.

\n

Een role moet uit minstens 3 tekens bestaan.

\n\n
\n \n\n \n
\n
\n
\n
\n
\n \n

\n Wijzigen\n Verwijderen

\n
\n
\n
\n \n \n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n \n
\n
\n \n \n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
E-mailadresVerwijderen
Lidmaatschap verwijderen
\n
\n
\n Er hangen nog geen gebruikers aan deze rol. Voeg een gebruiker aan deze rol toe door zijn/haar e-mailadres hierboven in te geven.\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Toegevoegde labelsVerwijderen
Lidmaatschap verwijderenDit label is niet voorbehouden
\n
\n
\n Er hangen nog geen labels aan deze rol.\n
\n
\n
\n
\n
\n
\n
\n'),a.put("templates/roles-list.html",'

Rollen toevoegen

\n\n
\n
\n \n
\n
\n \n
\n \n
\n\n
\n
\n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
NaamOpties
\n
\n \n \n
\n
\n \n
\n
\n
\n'),a.put("templates/search-label.html",'\n {{$item.name}}\n \n
\n Suggesties laden\n
\n
\n \n
\n \n (nieuw label toevoegen)\n
\n
\n
\n'), a.put("templates/user-editor.html",'

Gebruiker bewerken

\n\n
\n \n
\n\n
\n
\n
\n E-mailadres\n
\n
\n \n
\n
\n
\n
\n Nick\n
\n
\n \n
\n
\n
\n
\n
\n
\n

Rollen

\n
\n
\n \n
\n

\n Er zijn nog geen rollen toegekend aan deze gebruiker.\n

\n
\n
    \n
  • \n \n \n \n
  • \n
\n \n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n'),a.put("templates/user-role-suggestion.html",''),a.put("templates/users-list.html",'

Gebruikers

\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n'),a.put("templates/event-migration-footer.component.html",'
\n \n
\n'),a.put("templates/event-migration.html",'
\n \n\n \n\n \n
\n\n'),a.put("templates/translate-address.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n \n \n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
'),a.put("templates/translate-description.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/translate-images.html",'
\n
\n
\n

Afbeelding(en)

\n
\n
\n
\n
\n

Origineel

\n
\n
\n
\n
\n
\n
\n\n
\n \n
\n\n
\n
\n
©
\n
\n\n
\n \n \n
\n \n \n
\n \n
\n\n\n
\n
\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n
\n
\n
\n
\n
\n \n \n \n\n
\n
\n
©
\n
\n\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n
'),a.put("templates/translate-tariffs.html",'
\n
\n
\n

{{$index+1}}

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/translate-title.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/offer-translate.html",'
\n

\n

\n
\n\n
\n\n \n\n
\n \n \n\n \n \n\n \n \n\n \n \n
\n\n \n\n
\n'),a.put("templates/organizer-address.html",'
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n \n \n \n \n \n
\n\n
\n
\n
\n \n \n
\n \n \n \n \n \n \n \n
\n
\n
\n \n \n

\n \n \n

\n
\n
\n
\n
\n \n bv. 1104CA\n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n Leegmaken\n

\n

\n

\n
\n
\n'),a.put("templates/organizer-contact.html",'
\n
\n

\n
\n
\n\n\n
\n
\n
    \n
  • \n {{contact.value}}\n \n
  • \n
\n
\n
\n\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n\n \n\n \n\n
\n
\n
\n
\n\n
\n
\n
    \n
  • \n
  • \n
  • \n
\n
\n
\n'),a.put("templates/organizer-detail.html",'
\n \n
\n\n

\n\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n
\n \n \n
\n \n \n \n \n
\n \n
\n
\n
\n \n\n
\n \n
\n\n
\n \n
\n
\n
\n'), -a.put("templates/organizer-form.html",'

\n\n
\n \n
\n\n
\n
\n
\n

\n Deze URL is al in gebruik door een andere organisatie.
\n Er ging iets mis met het controleren van de website.
\n Gelieve een website in te vullen.
\n Gelieve een naam in te vullen.
\n
\n Gelieve een geldig adres in te vullen.
\n Gelieve alle contactinfo correct in te vullen.
\n Er ging iets mis tijdens het opslaan.
\n

\n\n
\n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n

De officiële publieke naam van de organisatie.

\n
\n
\n
\n
\n\n \n \n\n \n Annuleren\n\n
\n \n
\n'),a.put("templates/place-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n\n
\n
\n
\n \n \n \n \n
\n
\n\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::place.name}}
{{::translateType(place.type.label)}}
\n
\n
{{::place.address.streetAddress}}
\n {{::place.address.postalCode}} {{::place.address.addressLocality}}
\n {{::place.address.addressCountry}}
\n \n \n

\n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n {{ageRange}}\n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/delete-search-modal.html",'\n\n\n'),a.put("templates/save-search-modal.html",'
\n \n\n \n
\n'),a.put("templates/save-search.directive.html",'

\n \n \n \n \n

\n'),a.put("templates/saved-searches-list.html",'
\n

\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n Query\n \n
\n

\n \n

\n

\n
\n \n \n \n
\n
\n'),a.put("templates/event-link.directive.html",'\n'),a.put("templates/label-select.html",'

\n\n
\n
\n \n
\n
\n\n
\n


\n

    \n
  • \n
  • \n
  • \n
\n
\n\n
    \n
  • \n {{label.name}} ×\n
  • \n
\n'),a.put("templates/offer-accessibility-info.component.html",'
\n
\n \n \n voorziening(en)\n \n
    \n
  • \n
\n
\n\n \n
\n\n
\n \n
'),a.put("templates/query-editor-daterangepicker.directive.html",'
\n

\n \n \n \n \n

\n\n tot\n\n

\n \n \n \n \n

\n
'),a.put("templates/query-editor-field.directive.html",'
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n tot\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n
\n'),a.put("templates/query-editor-modal.html",'\n\n\n'),a.put("templates/query-editor.directive.html",'
\n
\n\n
\n
\n
\n

\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n\n
\n \n
\n
\n
\n
\n\n \n
\n \n \n \n \n
\n
\n'),a.put("templates/search-bar.directive.html",'

Zoeken

\n\n\n\n\n
    \n
  • \n
\n'),a.put("templates/event.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n \n \n \n \n \n ,…,\n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Dit evenement is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{eventCtrl.addedLabel}}\' is niet gelukt.\n
\n
\n Het label \'{{eventCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'), +a.put("templates/organizer-form.html",'

\n\n
\n \n
\n\n
\n
\n
\n

\n Deze URL is al in gebruik door een andere organisatie.
\n Er ging iets mis met het controleren van de website.
\n Gelieve een website in te vullen.
\n Gelieve een naam in te vullen.
\n
\n Gelieve een geldig adres in te vullen.
\n Gelieve alle contactinfo correct in te vullen.
\n Er ging iets mis tijdens het opslaan.
\n

\n\n
\n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n

De officiële publieke naam van de organisatie.

\n
\n
\n
\n
\n\n \n \n\n \n Annuleren\n\n
\n \n
\n'),a.put("templates/place-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n\n
\n
\n
\n \n \n \n \n
\n
\n\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::place.name}}
{{::translateType(place.type.label)}}
\n
\n
{{::place.address.streetAddress}}
\n {{::place.address.postalCode}} {{::place.address.addressLocality}}
\n {{::place.address.addressCountry}}
\n \n \n

\n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n {{ageRange}}\n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/delete-search-modal.html",'\n\n\n'),a.put("templates/save-search-modal.html",'
\n\n \n\n \n\n \n
\n \n\n \n
\n\n
\n \n
\n\n\n
\n'),a.put("templates/save-search.directive.html",'

\n \n \n \n \n

\n'),a.put("templates/saved-searches-list.html",'
\n

\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n Query\n \n
\n

\n \n

\n

\n
\n \n \n \n
\n
\n'),a.put("templates/event-link.directive.html",'\n'),a.put("templates/label-select.html",'

\n\n
\n
\n \n
\n
\n\n
\n


\n

    \n
  • \n
  • \n
  • \n
\n
\n\n
    \n
  • \n {{label.name}} ×\n
  • \n
\n'),a.put("templates/offer-accessibility-info.component.html",'
\n
\n \n \n voorziening(en)\n \n
    \n
  • \n
\n
\n\n \n
\n\n
\n \n
'),a.put("templates/query-editor-daterangepicker.directive.html",'
\n

\n \n \n \n \n

\n\n tot\n\n

\n \n \n \n \n

\n
'),a.put("templates/query-editor-field.directive.html",'
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n tot\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n
\n'),a.put("templates/query-editor-modal.html",'\n\n\n'),a.put("templates/query-editor.directive.html",'
\n
\n\n
\n
\n
\n

\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n\n
\n \n
\n
\n
\n
\n\n \n
\n \n \n \n \n
\n
\n'),a.put("templates/search-bar.directive.html",'

Zoeken

\n\n\n\n\n
    \n
  • \n
\n'),a.put("templates/event.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n \n \n \n \n \n ,…,\n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Dit evenement is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{eventCtrl.addedLabel}}\' is niet gelukt.\n
\n
\n Het label \'{{eventCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'), a.put("templates/place.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n gratis\n \n \n \n niet ingevoerd\n
\n\n
\n \n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ placeCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ placeCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Deze plaats is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{placeCtrl.labelsError.name}}\' is niet gelukt.\n
\n
\n Het label \'{{placeCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/search-facilities-modal.html",'\n\n\n'),a.put("templates/search.html",'
\n
\n\n
\n
\n
\n \n
\n
\n
\n\n

\n Geen evenementen gevonden, probeer een andere zoekopdracht.\n

\n\n
\n
\n\n
\n
Wat
\n
Waar
\n
Wanneer
\n
\n \n
\n
\n\n
\n
\n \n \n\n \n \n \n \n
\n
\n\n
\n
\n \n \n \n \n \n\n \n
\n
\n
\n\n
\n \n \n\n \n \n
\n\n\n \n\n
\n \n uitgevoerde query: {{realQuery}}\n \n
\n
\n
\n
\n Zoeken…\n
\n
\n'),a.put("templates/card-systems.html",'
\n
\n \n \n Loading...\n \n \n Saving...\n \n\n
\n
\n
\n
\n \n
\n
\n\n\n
\n \n
\n
\n
\n\n \n
\n
'),a.put("templates/uitpasInfo.html",'
\n
\n
\n \n \n \n
\n
\n
\n

\n
\n\n
\n \n\n \n \n
\n
\n
\n
'),a.put("templates/organisation-suggestion.directive.html",'\nUiTPAS'),a.put("templates/organisation-uitpas-typeahead-template.html",'\n \n UiTPAS\n')}])}(); \ No newline at end of file diff --git a/src/saved-searches/components/save-search-modal.controller.js b/src/saved-searches/components/save-search-modal.controller.js index 3e1c12462..361b38020 100644 --- a/src/saved-searches/components/save-search-modal.controller.js +++ b/src/saved-searches/components/save-search-modal.controller.js @@ -27,8 +27,19 @@ function SaveSearchModalController($scope, $uibModalInstance) { $uibModalInstance.dismiss('cancel'); }; + var isTabActive = function (tabId) { + return tabId === $scope.activeTabId; + }; + + var makeTabActive = function (tabId) { + $scope.activeTabId = tabId; + }; + $scope.cancel = cancel; $scope.ok = ok; + $scope.isTabActive = isTabActive; + $scope.makeTabActive = makeTabActive; $scope.queryName = ''; + $scope.activeTabId = 'new'; $scope.wasSubmitted = false; } diff --git a/src/saved-searches/components/save-search-modal.html b/src/saved-searches/components/save-search-modal.html index a4f277ef8..8665938c8 100644 --- a/src/saved-searches/components/save-search-modal.html +++ b/src/saved-searches/components/save-search-modal.html @@ -1,18 +1,37 @@
-
- + + + +
From e97ed7ba1306cba0e43a008465d68de695d96960 Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 14:14:19 +0100 Subject: [PATCH 03/13] III-6019 - Add editSavedSearch to udb-api service --- src/core/udb-api.service.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/core/udb-api.service.js b/src/core/udb-api.service.js index 5e081e2fd..5a419352e 100644 --- a/src/core/udb-api.service.js +++ b/src/core/udb-api.service.js @@ -134,6 +134,12 @@ function UdbApi( .then(returnUnwrappedData); }; + this.editSavedSearch = function (searchId, name, query) { + return $http + .put(appConfig.baseUrl + 'saved-searches/v3/' + searchId, {name: name, query: query}, defaultApiConfig) + .then(returnUnwrappedData); + } + /** * @param {string} queryString - The query used to find offers. * @param {number} [start] - From which offset the result set should start. From 49ceb10d9aa9bda35537887ff79dd820f78ea1b2 Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:15:41 +0100 Subject: [PATCH 04/13] III-6019 - Add editSavedSearch to saved-searches.service --- src/saved-searches/udb.saved-searches.service.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/saved-searches/udb.saved-searches.service.js b/src/saved-searches/udb.saved-searches.service.js index 3cf046e4d..797dd6d7b 100644 --- a/src/saved-searches/udb.saved-searches.service.js +++ b/src/saved-searches/udb.saved-searches.service.js @@ -49,6 +49,16 @@ function SavedSearchesService($q, $http, $cookies, appConfig, $rootScope, udbApi }); }; + ss.editSavedSearch = function (searchId, name, query) { + return udbApi.editSavedSearch(searchId, name, query).then(function () { + var savedSearch = _.find(savedSearches, {id: searchId}); + savedSearch.query = query; + savedSearchesChanged(); + + return $q.resolve(); + }); + }; + function savedSearchesChanged () { $rootScope.$emit('savedSearchesChanged', savedSearches); } From a0b9e2df2cfbba2e346d69710a5909e109c5178e Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:16:58 +0100 Subject: [PATCH 05/13] III-6019 - do create / editSavedSearch according to submit action --- .../save-search-modal.controller.js | 24 ++++++++++++++++--- .../components/save-search-modal.html | 8 +++---- .../components/save-search.directive.js | 18 ++++++++++---- 3 files changed, 39 insertions(+), 11 deletions(-) diff --git a/src/saved-searches/components/save-search-modal.controller.js b/src/saved-searches/components/save-search-modal.controller.js index 0fc249798..8da3e2ef6 100644 --- a/src/saved-searches/components/save-search-modal.controller.js +++ b/src/saved-searches/components/save-search-modal.controller.js @@ -14,13 +14,19 @@ angular /* @ngInject */ function SaveSearchModalController($scope, udbApi, $q, $uibModalInstance, $translate) { - var ok = function () { + var ok = function (type) { var name = $scope.queryName; + var id = $scope.queryId; $scope.wasSubmitted = true; - if (name) { - $uibModalInstance.close(name); + if (type === 'existing') { + $uibModalInstance.close({id: id, name: name, type: type}); } + + if (type === 'new' && name) { + $uibModalInstance.close({name: name, type: type}); + } + }; var cancel = function () { @@ -53,12 +59,24 @@ function SaveSearchModalController($scope, udbApi, $q, $uibModalInstance, $trans $scope.savedSearches = savedSearches; }); + var setQueryName = function() { + var selectedSavedSearch = $scope.savedSearches.find(function(savedSearch) { + return savedSearch.id === $scope.queryId; + }); + + if (selectedSavedSearch) { + $scope.queryName = selectedSavedSearch.name; + } + }; + $scope.savedSearches = []; $scope.cancel = cancel; $scope.ok = ok; $scope.isTabActive = isTabActive; $scope.makeTabActive = makeTabActive; + $scope.setQueryName = setQueryName; $scope.queryName = ''; + $scope.queryId = ''; $scope.activeTabId = 'new'; $scope.wasSubmitted = false; } diff --git a/src/saved-searches/components/save-search-modal.html b/src/saved-searches/components/save-search-modal.html index 5da67637e..f910b5718 100644 --- a/src/saved-searches/components/save-search-modal.html +++ b/src/saved-searches/components/save-search-modal.html @@ -25,21 +25,21 @@
diff --git a/src/saved-searches/components/save-search.directive.js b/src/saved-searches/components/save-search.directive.js index 7b0eb5559..dc17682eb 100644 --- a/src/saved-searches/components/save-search.directive.js +++ b/src/saved-searches/components/save-search.directive.js @@ -29,10 +29,20 @@ function udbSaveSearch(savedSearchesService, $uibModal) { controller: 'SaveSearchModalController' }); - modal.result.then(function (name) { - savedSearchesService - .createSavedSearch(name, scope.queryString) - .catch(displayErrorModal); + modal.result.then(function (params) { + + if (params.type === 'new') { + savedSearchesService + .createSavedSearch(params.name, scope.queryString) + .catch(displayErrorModal); + } + + if (params.type === 'existing') { + savedSearchesService + .editSavedSearch(params.id, params.name, scope.queryString) + .catch(displayErrorModal); + } + }); }; } From 112ae4905575bca6663789d01cc519f067a5f978 Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:17:26 +0100 Subject: [PATCH 06/13] III-6019 - Added missing semicolon --- src/core/udb-api.service.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/udb-api.service.js b/src/core/udb-api.service.js index 5a419352e..a100b3b0c 100644 --- a/src/core/udb-api.service.js +++ b/src/core/udb-api.service.js @@ -138,7 +138,7 @@ function UdbApi( return $http .put(appConfig.baseUrl + 'saved-searches/v3/' + searchId, {name: name, query: query}, defaultApiConfig) .then(returnUnwrappedData); - } + }; /** * @param {string} queryString - The query used to find offers. From 113919690746239351f6a901a0e1ee99578ba0af Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:19:09 +0100 Subject: [PATCH 07/13] III-6019 - Add build files --- dist/udb3-angular.js | 66 +++++++++++++++++++++++++++++++++------- dist/udb3-angular.min.js | 20 ++++++------ 2 files changed, 65 insertions(+), 21 deletions(-) diff --git a/dist/udb3-angular.js b/dist/udb3-angular.js index e00e28736..d2f3fbbae 100644 --- a/dist/udb3-angular.js +++ b/dist/udb3-angular.js @@ -6581,6 +6581,12 @@ function UdbApi( .then(returnUnwrappedData); }; + this.editSavedSearch = function (searchId, name, query) { + return $http + .put(appConfig.baseUrl + 'saved-searches/v3/' + searchId, {name: name, query: query}, defaultApiConfig) + .then(returnUnwrappedData); + }; + /** * @param {string} queryString - The query used to find offers. * @param {number} [start] - From which offset the result set should start. @@ -23221,13 +23227,19 @@ angular /* @ngInject */ function SaveSearchModalController($scope, udbApi, $q, $uibModalInstance, $translate) { - var ok = function () { + var ok = function (type) { var name = $scope.queryName; + var id = $scope.queryId; $scope.wasSubmitted = true; - if (name) { - $uibModalInstance.close(name); + if (type === 'existing') { + $uibModalInstance.close({id: id, name: name, type: type}); + } + + if (type === 'new' && name) { + $uibModalInstance.close({name: name, type: type}); } + }; var cancel = function () { @@ -23260,12 +23272,24 @@ function SaveSearchModalController($scope, udbApi, $q, $uibModalInstance, $trans $scope.savedSearches = savedSearches; }); + var setQueryName = function() { + var selectedSavedSearch = $scope.savedSearches.find(function(savedSearch) { + return savedSearch.id === $scope.queryId; + }); + + if (selectedSavedSearch) { + $scope.queryName = selectedSavedSearch.name; + } + }; + $scope.savedSearches = []; $scope.cancel = cancel; $scope.ok = ok; $scope.isTabActive = isTabActive; $scope.makeTabActive = makeTabActive; + $scope.setQueryName = setQueryName; $scope.queryName = ''; + $scope.queryId = ''; $scope.activeTabId = 'new'; $scope.wasSubmitted = false; } @@ -23305,10 +23329,20 @@ function udbSaveSearch(savedSearchesService, $uibModal) { controller: 'SaveSearchModalController' }); - modal.result.then(function (name) { - savedSearchesService - .createSavedSearch(name, scope.queryString) - .catch(displayErrorModal); + modal.result.then(function (params) { + + if (params.type === 'new') { + savedSearchesService + .createSavedSearch(params.name, scope.queryString) + .catch(displayErrorModal); + } + + if (params.type === 'existing') { + savedSearchesService + .editSavedSearch(params.id, params.name, scope.queryString) + .catch(displayErrorModal); + } + }); }; } @@ -23384,6 +23418,16 @@ function SavedSearchesService($q, $http, $cookies, appConfig, $rootScope, udbApi }); }; + ss.editSavedSearch = function (searchId, name, query) { + return udbApi.editSavedSearch(searchId, name, query).then(function () { + var savedSearch = _.find(savedSearches, {id: searchId}); + savedSearch.query = query; + savedSearchesChanged(); + + return $q.resolve(); + }); + }; + function savedSearchesChanged () { $rootScope.$emit('savedSearchesChanged', savedSearches); } @@ -33002,21 +33046,21 @@ angular.module('udb.core').run(['$templateCache', function($templateCache) { "\n" + "
\n" + " \n" + - " \n" + + " \n" + "
\n" + "
\n" + "\n" + "
\n" + "
\n" + "

Bestaande zoekopdracht

\n" + - " \n" + " \n" + " \n" + "
\n" + " \n" + "
\n" + - " \n" + - " \n" + + " \n" + + " \n" + "
\n" + "\n" + "
\n" + diff --git a/dist/udb3-angular.min.js b/dist/udb3-angular.min.js index d3b4cf81b..f986abe99 100644 --- a/dist/udb3-angular.min.js +++ b/dist/udb3-angular.min.js @@ -19,19 +19,19 @@ name:"Tjalleberd",zip:""},{label:"Tjerkgaast",name:"Tjerkgaast",zip:""},{label:" maxSize:"Het bestand dat je probeert te uploaden is te groot. De maximum grootte is ",formatNotValidError:"Het geüpload bestand is geen geldige afbeelding.",extensionsAllowed:"Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.",sizeError:"Het geüpload bestand is te groot."}},offerStatus:{scheduled:"Gaat door",cancelled:"Geannuleerd",postponed:"Uitgesteld",open:"Open",temporarilyClosed:"Tijdelijk gesloten",permanentlyClosed:"Permanent gesloten"},bookingAvailability:{unavailable:"Volzet of uitverkocht"},calendar:{one_more_days:"Eén of meerdere dagen",or:"of",default_days:"Vaste dagen per week",start_label:"Start",end_label:"Einde",whole_day_label:"Hele dag",start_hour_label:"Beginuur",end_hour_label:"Einduur",add_days:"Dag(en) toevoegen",period:{title:"Start- en einddatum",from:"Van",till:"Tot",alert:"Geef zowel een begin- als einddatum in. De einddatum kan niet voor de begindatum vallen."},openingHours:{permanent_title:"24/24, 7/7",permanent_subtitle:"Elke dag, ieder uur",add_hours:"Uren toevoegen",opening_hours:"Openingsuren",change:"Wijzigen",days:"Dagen",from:"Van",till:"Tot",more_hours:"Meer openingstijden toevoegen",cancel:"Annuleren",save:"Opslaan"}},facilityLabel:{motor:"Voorzieningen voor personen met een motorische beperking",visual:"Voorzieningen voor personen met een visuele beperking",hearing:"Voorzieningen voor personen met een auditieve beperking",other:"Andere voorzieningen",place:"Voorzieningen op deze locatie",mental:"Voorzieningen voor personen met een verstandelijke beperking",neurodivers:"Voorzieningen voor neurodiverse personen"},audience:{entrance:"Toegang",everyone:"Voor iedereen",members:"Enkel voor leden",members_help:"Je item wordt enkel gepubliceerd op kanalen voor verenigingen en hun leden.",education:"Specifiek voor scholen",education_help:"Je item wordt enkel gepubliceerd op cultuureducatieve kanalen zoals cultuurkuur.be. Na het publiceren kan je nog specifieke informatie voor scholen toevoegen."},workflowStatus:{label:"Publicatiestatus",id:"ID",DRAFT:"Niet gepubliceerd",READY_FOR_VALIDATION:"Gepubliceerd",APPROVED:"Online vanaf",REJECTED:"Publicatie afgewezen",DELETED:"Niet gepubliceerd",rules:"Bekijk de regels",rejected_full:"Dit item werd afgewezen voor publicatie."},queryFieldGroup:{what:"Wat",where:"Waar",when:"Wanneer","input-information":"Invoerdersinformatie",translations:"Vertalingen",other:"Andere"},queryFieldLabel:{cdbid:"identificatiecode (CDBID)",offertype:"type (aanbod)",keywords:"label",title:"titel",category_eventtype_name:"type (activiteit)",locationtype:"type (locatie)",category_theme_name:"thema",text:"tekst",city:"gemeente (naam)",zipcode:"postcode",location_id:"locatie (id)",country:"land",location_name:"locatie (naam)",location_labels:"locatie (labels)",category_flandersregion_name:"regio / gemeente",nisRegions:"regio / gemeente",date:"datum",permanent:"permanent",lastupdated:"laatst aangepast",creationdate:"gecreëerd",createdby:"gecreëerd door",availablefrom:"datum beschikbaar",detail_lang:"vertaling",organiser_keywords:"label organisatie",organiser_id:"organisatie (id)",agefrom:"leeftijd",attendance_mode:"aanwezigheidsvorm",price:"prijs",status:"status",booking_availability:"tickets & plaatsen",organiser_label:"organisatie (naam)",category_facility_name:"voorzieningen",category_targetaudience_name:"doelgroep",startdate:"startdatum",enddate:"einddatum",lastupdatedby:"laatst aangepast door",category_publicscope_name:"publieksbereik"},"EVENT-EXPORT":{"QUERY-IS-MISSING":"Een export is pas mogelijk nadat je een zoekopdracht hebt uitgevoerd","TOO-MANY-ITEMS":"Een manuele export met meer dan {{limit}} items is niet mogelijk. Contacteer vragen@uitdatabank.be voor een oplossing op maat."},AANBOD_INVOEREN:"Aanbod invoeren",AANBOD_BEWERKEN:"Aanbod bewerken",AANBOD_MODEREREN:"Aanbod modereren",AANBOD_VERWIJDEREN:"Aanbod verwijderen",AANBOD_HISTORIEK:"Historiek raadplegen",ORGANISATIES_BEHEREN:"Organisaties beheren",GEBRUIKERS_BEHEREN:"Gebruikers beheren",LABELS_BEHEREN:"Labels beheren",VOORZIENINGEN_BEWERKEN:"Voorzieningen bewerken",ORGANISATIES_BEWERKEN:"Organisaties bewerken",PRODUCTIES_AANMAKEN:"Producties aanmaken",FILMS_AANMAKEN:"Films aanmaken","event type missing":'Koos je een type in stap 1?',"timestamp missing":'Koos je een datum in stap 2?',"start or end date missing":'Koos je een begin- en einddatum in stap 2?',"when missing":'Maakte je een keuze in stap 2?',"place missing for event":'Koos je een plaats in stap 3?',"location missing for place":'Koos je een locatie in stap 3?',"title is missing":'Gaf je je aanbod een titel in stap 4?',"age range is missing":'Gaf je je aanbod een leeftijdsgroep in stap 4?',UNIQUE_ORGANIZER_NOTICE:"Om organisaties in de UiTdatabank uniek bij te houden, vragen we elke organisatie een unieke & geldige hyperlink.",OPENING_HOURS_ERROR:{openAndClose:"Vul alle openings- en sluitingstijden in.",dayOfWeek:"Kies minstens één dag in elke rij die je toevoegde.",openIsBeforeClose:"Gelieve een sluitingstijd in te geven die later is dan de openingstijd."},TIME_SPAN_REQUIREMENTS:{timedWhenNotAllDay:"Een eind- en beginuur zijn verplicht wanneer een evenement niet de hele dag duurt.",startBeforeEndDay:"De einddatum kan niet voor de begindatum vallen.",startBeforeEnd:"Het einduur kan niet voor het beginuur vallen.",tooFarInFuture:"De gekozen einddatum en startdatum mogen niet verder dan 10 jaar in de toekomst liggen."},uitpas:{uitpasInfo:{uitpas:"UiTPAS",uitpas_alert:"Dit is een UiTPAS organisator. Selecteer een prijs om specifieke UiTPAS-informatie toe te voegen.",uitpas_info:"Dit is een UiTPAS activiteit.",cantChangePrice:"Voor dit evenement zijn al UiTPAS-tickets verkocht met de bestaande prijsinformatie. Je kan de prijsinformatie niet meer wijzigen.",cantChangeOrganiser:"Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen.",unavailable:"Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen."},cardSystems:{card_systems:"Kaartsystemen",choose:"--Selecteer een verdeelsleutel--",retry:"Opnieuw registreren",already_has_ticketsales:"Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen.",not_found:"Deze activiteit is nog niet gekend bij UiTPAS."}},images:{agreement:"Je staat op het punt (een) afbeelding(en) toe te voegen en openbaar te verspreiden. Je dient daartoe alle geldende auteurs- en portretrechten te respecteren, alsook alle andere toepasselijke wetgeving. Je kan daarvoor aansprakelijk worden gehouden, zoals vastgelegd in de",conditions:"algemene voorwaarden",conditions_url:"https://www.publiq.be/nl/gebruikersovereenkomst-uitdatabank",copyright_info:"Meer informatie over copyright",description:"Beschrijving",description_help:"Maximum 250 karakters",copyright:"Copyright",copyright_help:"Vermeld de naam van de rechtenhoudende fotograaf. Vul alleen de naam van je eigen vereniging of organisatie in als je zelf de rechten bezit (minimum 2 karakters).",cancel:"Annuleren",agree:"Akkoord",upload:{select_image:"Selecteer je foto",choose_file:"Kies bestand",max_filesize:"De maximale grootte van je afbeelding is {{maxFileSize}} en heeft als type .jpeg, .gif of .png",upload:"Opladen"},edit:{title:"Afbeelding info bewerken",description_help:"Een goede beschrijving van je afbeelding wordt gelezen door zoekmachines en gebruikers met een visuele beperking. (max. 250 karakters)",save_error:"Er ging iets mis bij het opslaan van de afbeelding.",update:"Bijwerken"},remove:{title:"Afbeeldingen verwijderen",sure:"Ben je zeker dat je deze afbeelding wil verwijderen?",save_error:"Er ging iets mis bij het verwijderen van de afbeelding."}},organizer:{modal:{title:"Nieuwe organisatie toevoegen",avoid_doubles:"Vermijd dubbel werk",unique_notice:"Om organisaties in de UiTdatabank uniek bij te houden, vragen we elke organisatie een unieke & geldige hyperlink.",website:"Website",alert_warning:"Dit adres is al gebruikt door de organisatie '{{organizerName}}'. Geef een unieke website of",alert_button:"gebruik {{organizerName}} als organisatie",name_help:"De officiële publieke naam van de organisatie.",name_required:"Gelieve een naam in te vullen",name_maxlength:"De naam van de organisatie kan maar 250 karakters bevatten.",add_confirm:'Ben je zeker dat je "{{newOrganizerName}}" wil toevoegen als organisatie? Dubbele invoer van organisaties is niet toegelaten.',doubles:"We vonden deze gelijkaardige items:",select:"Selecteren",your_input:"Jij voerde in:",still_enter:"Toch invoeren",save_error:"Er ging iets fout tijdens het opslaan van je organisatie.",address_error:"Gelieve een geldig adres in te vullen.",contact_error:"Gelieve alle contactinfo correct in te vullen.",close:"Sluiten",save:"Bewaren",label_name:"Naam"},address:{label_street:"Straat en nummer",help_street:"Gelieve straat en nummer in te geven.",help_zip:"Gelieve een postcode in te geven.",validate_zip:"Dit lijkt een ongeldige postcode. Een postcode bestaat uit 4 cijfers en 2 letters, zonder een spatie ertussen.",label_city:"Gemeente",label_residence:"Woonplaats",help_city:"Er was een probleem tijdens het ophalen van de steden.",error_city:"Gelieve een gemeente in te geven.",change:"Wijzigen",zip:"Postcode","delete":"Leegmaken",delete_success:"Adres succesvol verwijderd",delete_error:"Er liep iets fout tijdens het verwijderen van jouw adres"},contact:{title:"Contact",enter_url:"Geef een URL in",enter_email:"Geef een e-mailadres in",enter_phone:'Geef een telefoonnummer in, bv. 011 32 43 54',required:"Gelieve dit veld niet leeg te laten.",valid_url:"Gelieve een geldige url in te vullen.",valid_email:"Gelieve een geldig e-mailadres in te vullen.",valid_phone:"Gelieve een geldig telefoonnummer in te vullen.",cancel:"Annuleren",add:"Toevoegen",add_phone:"Telefoonnummer toevoegen",add_email:"E-mailadres toevoegen",add_url:"Andere website toevoegen"},manage:{edit:"Bewerken","delete":"Verwijderen",overview:"Terug naar overzicht",dashboard:"Terug naar dashboard",name:"Naam",description:"Beschrijving",educational_description:"Beschrijving Cultuurkuur",address:"Adres",website:"Website",phone:"Telefoonnummer",email:"E-mailadres",labels:"Labels",removed:"Deze organisatie is verwijderd."}},duplicate:{title:"Kopiëren en aanpassen",description:"Je staat op het punt een evenement te kopiëren. Kies een tijdstip voor dit evenement.",error:"Er ging iets mis tijdens het aanmaken van een kopie!"},dashboard:{welcome:"Welkom,",no_items:"Je hebt nog geen items toegevoegd.",add_activity:"Een activiteit of locatie toevoegen?",my_activities:"Mijn activiteiten en locaties",my_organizers:"Mijn organisaties",add:"Toevoegen",add_organizer:"Organisatie toevoegen",directive:{no_publish:"Niet gepubliceerd!",online:"Online op",edit:"Bewerken",example:"Voorbeeld","delete":"Verwijderen",expired_event:"Afgelopen evenement"},"delete":{sure:'Ben je zeker dat je "{{name}}" wil verwijderen?',error_location:'De locatie "{{name}}" kan niet verwijderd worden omdat er activiteiten gepland zijn.',error:"Er ging iets fout bij het verwijderen van de activiteit.",cancel:"Annuleren","delete":"Verwijderen"}},entry:{exported_documents:"Geëxporteerde documenten",notifications:"Meldingen",in_progress:"Bezig"},offerTypes:{Concert:"Concert",Theatervoorstelling:"Theatervoorstelling","Lezing of congres":"Lezing of congres",Dansvoorstelling:"Dansvoorstelling",Festival:"Festival",Film:"Film","Sportwedstrijd bekijken":"Sportwedstrijd bekijken","Cursus met open sessies":"Cursus met open sessies",Lessenreeks:"Lessenreeks","Sport en beweging":"Sport en beweging","Kamp of vakantie":"Kamp of vakantie","Begeleide uitstap of rondleiding":"Begeleide rondleiding",Route:"Route","Spel of quiz":"Spel of quiz","Party of fuif":"Party of fuif",Festiviteit:"Festiviteit","Congres of studiedag":"Congres of studiedag","Eet- of drankfestijn":"Eet- of drankfestijn","Thema of pretpark":"Thema of pretpark",Theater:"Theater","Jeugdhuis of jeugdcentrum":"Jeugdhuis of jeugdcentrum","Cultuur- of ontmoetingscentrum":"Cultuur- of ontmoetingscentrum",Discotheek:"Discotheek","Bibliotheek of documentatiecentrum":"Bibliotheek of documentatiecentrum",Bioscoop:"Bioscoop",Horeca:"Horeca","Openbare ruimte":"Openbare ruimte",Tentoonstelling:"Tentoonstelling","Markt, braderie of kermis":"Markt, braderie of kermis","Natuur, park of tuin":"Natuur, park of tuin",Beurs:"Beurs",Monument:"Monument",Opendeurdag:"Opendeurdag","Recreatiedomein of centrum":"Recreatiedomein of centrum","Park of tuin":"Park of tuin","Archeologische Site":"Archeologische Site","School of onderwijscentrum":"School of onderwijscentrum",Sportcentrum:"Sportcentrum",Winkel:"Winkel",Speeltuin:"Speeltuin","Museum of galerij":"Museum of galerij","Zaal of expohal":"Zaal of expohal"},offerThemes:{"Antiek en brocante":"Antiek en brocante",Architectuur:"Architectuur","Audiovisuele kunst":"Audiovisuele kunst",Beeldhouwkunst:"Beeldhouwkunst",Fotografie:"Fotografie",Grafiek:"Grafiek",Installatiekunst:"Installatiekunst",Schilderkunst:"Schilderkunst","Decoratieve kunst":"Decoratieve kunst",Design:"Design",Mode:"Mode","Meerdere kunstvormen":"Meerdere kunstvormen","Ballet en klassieke dans":"Ballet en klassieke dans","Volksdans en werelddans":"Volksdans en werelddans","Stijl en salondansen":"Stijl en salondansen","Moderne dans":"Moderne dans",Erfgoed:"Erfgoed","Actie- en avonturenfilm":"Actie- en avonturenfilm","Animatie en kinderfilms":"Animatie en kinderfilms","Documentaires en reportages":"Documentaires en reportages","Griezelfilm of horror":"Griezelfilm of horror","Historische film":"Historische film",Komedie:"Komedie",Kortfilm:"Kortfilm",Filmmusical:"Filmmusical",Drama:"Drama","Science fiction":"Science fiction",Cinefiel:"Cinefiel",Thriller:"Thriller","Meerdere filmgenres":"Meerdere filmgenres",Geschiedenis:"Geschiedenis","Gezondheid en wellness":"Gezondheid en wellness","Landbouw en platteland":"Landbouw en platteland","Milieu en natuur":"Milieu en natuur",Literatuur:"Literatuur","Poëzie":"Poëzie",Fictie:"Fictie","Non fictie":"Non fictie",Strips:"Strips","Klassieke muziek":"Klassieke muziek","Jazz en blues":"Jazz en blues","Pop en rock":"Pop en rock","Hiphop, r&b en rap":"Hiphop, r&b en rap","Dance muziek":"Dance muziek","Folk en wereldmuziek":"Folk en wereldmuziek",Amusementsmuziek:"Amusementsmuziek","Politiek en maatschappij":"Politiek en maatschappij",Creativiteit:"Creativiteit","Computer en techniek":"Computer en techniek",Opvoeding:"Opvoeding","Persoon en relaties":"Persoon en relaties","Interculturele vorming":"Interculturele vorming","Kunst en kunsteducatie":"Kunst en kunsteducatie","Gezondheid en zorg":"Gezondheid en zorg",Samenleving:"Samenleving","Bal en racketsport":"Bal en racketsport","Atletiek, wandelen en fietsen":"Atletiek, wandelen en fietsen","Zwemmen en watersport":"Zwemmen en watersport","Fitness, gymnastiek, dans en vechtsport":"Fitness, gymnastiek, dans en vechtsport","Outdoor en Adventure sport":"Outdoor en Adventure sport","Lucht en motorsport":"Lucht en motorsport",Volkssporten:"Volkssporten","Omnisport en andere":"Omnisport en andere","Tekst- en muziektheater":"Tekst- en muziektheater","Humor en comedy":"Humor en comedy",Musical:"Musical","Figuren en poppentheater":"Figuren en poppentheater","Opera en operette":"Opera en operette","Mime en bewegingstheater":"Mime en bewegingstheater",Wetenschap:"Wetenschap","Zingeving, filosofie en religie":"Zingeving, filosofie en religie","Thema onbepaald":"Thema onbepaald",Circus:"Circus",Voeding:"Voeding",Economie:"Economie",Avontuur:"Avontuur",Natuur:"Natuur",Sport:"Sport",Technologie:"Technologie",Koken:"Koken",Themakamp:"Themakamp","Taal en communicatie":"Taal"},offerThemesGroups:{Dans:"Dans","Kunst en erfgoed":"Kunst en erfgoed",Muziek:"Muziek",Sport:"Sport",Varia:"Varia"},weekdays:{monday:{label:"Ma",name:"Maandag"},tuesday:{label:"Di",name:"Dinsdag"},wednesday:{label:"Wo",name:"Woensdag"},thursday:{label:"Do",name:"Donderdag"},friday:{label:"Vr",name:"Vrijdag"},saturday:{label:"Za",name:"Zaterdag"},sunday:{label:"Zo",name:"Zondag"}},search:{search:"Zoeken",advanced:"Geavanceerd",label:"Labelen",languageIcons:"Taaliconen toevoegen",deselect:"Deselecteren",savedSearches:{savedSearches:"Bewaarde zoekopdrachten",items:{"Door mij ingevoerd":"Door mij ingevoerd"},mySearches:"Mijn zoekopdrachten",title:"Titel",viewResults:"Resultaten bekijken",yourSearch:"Jouw zoekopdracht",save:"Bewaren"},manage:"Beheren",oneResult:"1 resultaat",multipleResults:"{{count}} resultaten",description:"Beschrijving",labels:"Labels",picture:"Afbeelding",what:"Wat",where:"Waar",when:"Wanneer",inputInformation:"Invoer-informatie",noEventsFound:"Geen evenementen gevonden, probeer een andere zoekopdracht.",exportButton:"Activiteiten exporteren",modal:"Je selectie bevat geen activiteiten, probeer een andere zoekopdracht te exporteren.",advancedQueryBuilder:{title:"Geavanceerde zoekopdracht bouwer",header:{info:"Hier kan je complexe zoekopdrachten bouwen. Hulp nodig? Lees ",link:"onze handleiding"},group:"Groep ",include:"Insluiten",exclude:"Uitsluiten",addGroup:"Groep toevoegen",cancel:"Annuleren",search:"Zoeken",syntaxError:'Je query bevat een fout. Op deze pagina vind je meer informatie over hoe je een zoekopdracht kan samenstellen.',invalidField:'{{field}} is geen geldig zoekveld. Op deze pagina vind je meer informatie over hoe je een zoekopdracht kan samenstellen.'}}})}(),function(){"use strict";angular.module("udb.core").constant("udbFrenchTranslations",{BE:"Belgique",NL:"Pays-Bas",ZZ:"Lieu en concertation avec l'école",EN_ADJECTIVE:"Anglais",FR_ADJECTIVE:"Français",DE_ADJECTIVE:"Duitse",NL_ADJECTIVE:"Nederlandse",datepicker:{CURRENT:"Aujourd'hui",CLEAR:"Supprimer",CLOSE:"Fermer"},"=":"égale","><":"entre","+":"égale","!":"n'égale pas","-":"n'égale pas",">":"est plus grand ou égal","<":"est plus petit ou égal",">_DATE":"plus tard que","<_DATE":"plus tôt que","=_DATE":"égale","><_DATE":"entre",choix:{everyone:"tout le monde",members:"membres",education:"éducation",Available:"A lieu",Unavailable:"Annulé",TemporarilyUnavailable:"Reporté",available:"Disponible",unavailable:"Complet",online:"en ligne",offline:"hors ligne",mixed:"mixte (en ligne / hors ligne)",asc:"ascendant",desc:"descendant",today:"aujourd'hui",tomorrow:"demain",thisweekend:"ce week-end",nextweekend:"le week-end prochain",next7days:"les 7 jours suivants",next14days:"les 14 jours suivants",next30days:"les 30 jours suivants",next3months:"les 3 mois suivants",next6months:"les 6 mois suivants",next12months:"les 12 mois suivants",permanent:"permanent",event:"événement",place:"lieu",actor:"acteur",production:"production",nl:"néerlandais",fr:"français",en:"anglais",de:"allemand",AF:"Afghanistan",AX:"Îles Åland",AL:"Albanie",DZ:"Algérie",AS:"Samoa américaines",VI:"Îles Vierges des États-Unis",UM:"Îles mineures éloignées des États-Unis",AD:"Andorre",AO:"Angola",AI:"Anguilla",AQ:"Antarctique",AG:"Antigua-et-Barbuda",AR:"Argentine",AM:"Arménie",AW:"Aruba",AU:"Australie",AZ:"Azerbaïdjan",BS:"Bahamas",BH:"Bahreïn",BD:"Bangladesh",BB:"Barbade",BE:"Belgique",BZ:"Belize",BJ:"Bénin",BM:"Bermudes",BT:"Bhoutan",BO:"Bolivie",BA:"Bosnie-Herzégovine",BW:"Botswana",BV:"Île Bouvet",BR:"Brésil",IO:"Territoire britannique de l'océan Indien",VG:"Îles Vierges britanniques",BN:"Brunei",BG:"Bulgarie",BF:"Burkina Faso",BI:"Burundi",KH:"Cambodge",CA:"Canada",KY:"Îles Caïmans",CF:"République centrafricaine",CL:"Chili",CN:"Chine",CX:"Île Christmas",CC:"Îles Cocos",CO:"Colombie",KM:"Comores",CG:"République du Congo",CD:"République démocratique du Congo",CK:"Îles Cook",CR:"Costa Rica",CU:"Cuba",CY:"Chypre",DK:"Danemark",DJ:"Djibouti",DM:"Dominique",DO:"République dominicaine",DE:"Allemagne",EC:"Équateur",EG:"Égypte",SV:"Salvador",GQ:"Guinée équatoriale",ER:"Érythrée",EE:"Estonie",ET:"Éthiopie",FO:"Îles Féroé",FK:"Malouines",FJ:"Fidji",PH:"Philippines",FI:"Finlande",FR:"France",GF:"Guyane",PF:"Polynésie française",TF:"Terres australes et antarctiques françaises",GA:"Gabon",GM:"Gambie",GE:"Géorgie",GH:"Ghana",GI:"Gibraltar",GD:"Grenade",GR:"Grèce",GL:"Groenland",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GG:"Guernesey",GN:"Guinée",GW:"Guinée-Bissau",GY:"Guyana",HT:"Haïti",HM:"Îles Heard-et-MacDonald",IM:"Île de Man",HN:"Honduras",HU:"Hongrie",HK:"Hong Kong",IS:"Islande",IE:"Irlande ",IN:"Inde",ID:"Indonésie",IQ:"Irak",IR:"Iran",IL:"Israël",IT:"Italie",CI:"Côte d'Ivoire",JM:"Jamaïque",JP:"Japon",YE:"Yémen",JE:"Jersey",JO:"Jordanie",CV:"Cap-Vert",CM:"Cameroun",KZ:"Kazakhstan",KE:"Kenya",KG:"Kirghizistan",KI:"Kiribati",KW:"Koweït",HR:"Croatie",LA:"Laos",LS:"Lesotho",LV:"Lettonie",LB:"Liban",LR:"Liberia",LY:"Libye",LI:"Liechtenstein",LT:"Lituanie",LU:"Luxembourg",MO:"Macao",MK:"République de Macédoine",MG:"Madagascar",MW:"Malawi",MV:"Maldives",MY:"Malaisie",ML:"Mali",MT:"Malte",MA:"Maroc",MH:"Îles Marshall",MQ:"Martinique",MR:"Mauritanie",MU:"Maurice",YT:"Mayotte",MX:"Mexique",FM:"Micronésie",MD:"Moldavie",MC:"Monaco",MN:"Mongolie",ME:"Monténégro",MS:"Montserrat",MZ:"Mozambique",MM:"Birmanie",NA:"Namibie",NR:"Nauru",NL:"Pays-Bas",AN:"Antilles néerlandaises",NP:"Népal",NI:"Nicaragua",NC:"Nouvelle-Calédonie",NZ:"Nouvelle-Zélande",NE:"Niger",NG:"Nigeria",NU:"Niue",KP:"Corée du Nord",MP:"Îles Mariannes du Nord",NO:"Norvège",NF:"Île Norfolk",UG:"Ouganda",UA:"Ukraine",UZ:"Ouzbékistan",OM:"Oman",ZZ:"Inconnu",TL:"Timor oriental",AT:"Autriche",PK:"Pakistan",PW:"Palaos",PS:"Palestine",PA:"Panama",PG:"Papouasie-Nouvelle-Guinée",PY:"Paraguay",PE:"Pérou",PN:"Îles Pitcairn",PL:"Pologne",PT:"Portugal",PR:"Porto Rico",QA:"Qatar",RO:"Roumanie",RU:"Russie",RW:"Rwanda",RE:"La Réunion",BL:"Saint-Barthélemy",KN:"Saint-Christophe-et-Niévès",LC:"Sainte-Lucie",PM:"Saint-Pierre-et-Miquelon",VC:"Saint-Vincent-et-les Grenadines",SB:"Salomon",WS:"Samoa",SM:"Saint-Marin",ST:"Sao Tomé-et-Principe",SA:"Arabie saoudite",SN:"Sénégal",RS:"Serbie",CS:"Serbie-et-Monténégro, ",SC:"Seychelles",SL:"Sierra Leone",SG:"Singapour",SH:"Sainte-Hélène, Ascension et Tristan da Cunha",MF:"Saint-Martin",SI:"Slovénie",SK:"Slovaquie",SD:"Soudan",SO:"Somalie",ES:"Espagne",LK:"Sri Lanka",SR:"Suriname",SJ:"Svalbard et ile Jan Mayen",SZ:"Swaziland",SY:"Syrie",TJ:"Tadjikistan",TW:"Taïwan / (République de Chine (Taïwan))",TZ:"Tanzanie",TH:"Thaïlande",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinité-et-Tobago",TD:"Tchad",CZ:"Tchéquie",TN:"Tunisie",TR:"Turquie",TM:"Turkménistan",TC:"Îles Turques-et-Caïques",TV:"Tuvalu",UY:"Uruguay",VU:"Vanuatu",VA:"Saint-Siège(État de la Cité du Vatican)",VE:"Venezuela",GB:"Royaume-Uni",AE:"Émirats arabes unis",US:"États-Unis",VN:"Viêt Nam",WF:"Wallis-et-Futuna",EH:"République arabe sahraouie démocratique",BY:"Biélorussie",ZM:"Zambie",ZW:"Zimbabwe",ZA:"Afrique du Sud",GS:"Géorgie du Sud-et-les Îles Sandwich du Sud",KR:"Corée du Sud",SE:"Suède",CH:"Suisse"},property:{name:"Titre",description:"Description",labels:"Labels",calendarSummary:"Aperçu du calendre",image:"Image",videos:"Vidéos",location:"Lieu",address:"Adresse",organizer:"Organisateur",priceInfo:"Information du prix",kansentarief:"Allocataires sociaux",bookingInfo:"Info réservation",contactPoint:"Info contact",status:"État",bookingAvailability:"Billets & places",attendance:"forme de présence",creator:"Auteur","terms.theme":"Thème","terms.eventtype":"Type",created:"Date début",modified:"Date dernière modification",publisher:"Auteur",available:"Disponible",endDate:"Date fin",startDate:"Date départ",calendarType:"Type temps",sameAs:"IDs externes",typicalAgeRange:" ge",language:"Langue",audience:"Accès"},preview:{tabs:{data:"Données",history:"Historique",publication:"Publication"},not_found:"Page introuvable",not_found_help:"Cette page n'a pas pu être trouvée.",loading:"Chargement...",edit:"Modifier",duplicate:"Copier et modifier",change_availability:"Modifier la disponibilité","delete":"Supprimer",title:"Titre",type:"Type",entrance:"Entrée",description:"Description",no_description:"Aucune description",where:"Où",when:"Quand",online:"Online",online_location:"Participation en ligne",online_location_missing:"Pas d'url pour la participation en ligne",labels:"Labels",labels_error:"Le label '{{labelName}}' n'a pas pu être ajouté.",labels_success:"Le label '{{addedLabel}}' a été ajouté avec succès.",organizer:"Organisation",no_organizer:"Pas d'information de l'organisation",price:"Prix",free:"Gratuit",booking_availability:"Billets & places",booking_unavailable:"Complet",booking_available:"Disponible",no_price:"Pas d'information du prix",currency:"euro",age_label:"Adapté à",all_ages:"Tous les âges",no_age:"Pas d'information de l'âge",videos_label:"Vidéos",no_videos:"Aucune vidéo",publiq_url:"Voir sur {{publicationBrand}}",translate:"Traduire",info_lesson_series:"Votre série de cours apparaît dans les agendas UiT jusqu'au premier moment de la cours.",info_holiday_camp:"Votre camp de vacances apparaîtront dans des calendriers en ligne jusqu'au jour du début."},translate:{ready:"Prêt à traduire",translate:"traduire",original:"l'original",edit:"Modifier",translation:"Traduction",description:"Description",title:"Titre",tariff:"Prix",address:"Adresse",street:"Rue et numéro"},labels:{what:"Ajoutez des mots clés courts et spécifiques.",invalid:"Ce label ne semble pas valable. Un label ",chars:"Ne comporte que des lettres ou des chiffres",excluded:"Ne comporte que '-' ou '_' mais ne peut commencer avec ces caractêres",length:"Comporte de 2 à 50 caractères"},calendarSummary:{openinghours:"plusieurs moments",from:"De",till:"à",permanent:"Permanent"},moderate:{infoAlert:'

Bienvenue sur la page de validation. Sur cette page, vous pouvez approuver ou rejeter les événements en tant que validateur décentralisé :

  • Rejeter. Les événements rejetés ne sont plus publiés sur UiTinVlaanderen ou d\'autres agendas et ne peuvent plus être modifiés par l\'importateur.
  • Approuver. Les événements approuvés resteront publiés sur UiTinVlaanderen et d\'autres calendriers UiT. Ils ne seront pas soumis à une nouvelle validation.

Vous trouverez des directives pour la validation dans les règles de contenu de la base de données UiTdatabank.

',validate:"Valider",approve:"Approuver",approved:"Approuvé",reject:"Rejeter",rejected:"Rejeté",continue_validation:"Continuer la validation"},cultuurkuur:{info:'Cet événement contient de l\'information extra pour les écoles et les enseignants.',subject:"Sujet",target_group:"Public cible",levels:"Adapté à",grades:"degrés d'éducation",edit_link:"Modifier sur cultuurkuur.be",incomplete_help:"Introduisez cet événement sur cultuurkuur.be avec de l'information extra pour les écoles et les enseignants.","continue":"Continuer"},booking:{label:"Réservation",no_booking:"Pas d'information de réservation"},contact:{label:"Contact",or:"ou",no_contact:"Pas d'information du contact"},imageDetail:{label:"Images",alt_image:"Image {{index}}",main_image:"Image principale",no_images:"Pas d'images"},prices:{title:"Ajouter des prix",base:"Tarif de base",target_group:"Public cible",free:"Gratuit",currency:"euro",add_price:"Ajouter prix",add_tarriff:"Ajouter tarif",error:"Il y a eu une erreur dans l'enregistrement du prix.",invalid:"Cette information du prix semble invalide et ne peut pas être enregistrée.",invalid_tip1:"Notez les décimales avec une virgule.",invalid_tip2:"Ne laissez aucune ligne vide, remplissez toujours un public cible et un montant.",invalid_tip3:"Donnez au maximum deux chiffres après la virgule.",close:"Fermer",save:"Sauver"},location:{title:"Ajouter un nouveau lieu",name:"Nom de lieu",name_validation:"Le nom du lieu est un domaine obligatoire.",street:"Rue et numéro",street_validation:"Rue est un domaine obligatoire.",city:"Commune",category:"Catégorie",category_help:"Choisissez la catégorie qui décrit le mieux ce lieu.",category_validation:"Catégorie est un domaine obligatoire.",error:"Il s'est produit une erreur lors de l'enregistrement du lieu.",invalid_street:"Cela semble une adresse invalide. Si vous utilisez des espaces dans l'adresse, vous ne pouvez pas avoir plus de 15 caractères après le dernier espace.",cancel:"Annuler",add:"Ajouter",zip:"Code postal",nlPostalCode_validation:"Code postal est un domaine obligatoire.",invalid_PostalCode:"Il semble que le code postale n'est pas valable. Un code postal comporte 4 chiffres et 2 lettres sans espace."},eventForm:{langWarning:"Attention, vous éditez dans une autre langue: {{language}}. Si ce n'est pas votre intention, contactez-nous à vragen@uitdatabank.be.",step1:{title:"Qu'est-ce que vous voulez ajouter ?",label_event:"Un événement",show_everything:"Montrez tout",or:"ou",location_label:"Un lieu",change:"Modifier",refine:"Affiner",info_lesson_series:"Votre série de cours apparaît dans les agendas UiT jusqu'au premier moment de la cours."},step2:{date_help_event:"L'événement ou l'activité a lieu quand ?",date_help_place:"Cet endroit ou ce lieu est ouvert(e) quand ?"},step3:{title_event:"Où l'événement ou l'activité a-t-il/elle lieu ?",title_place:"Où se trouve cet endroit ou ce lieu ?",choose_city:"Choisissez une commune",choose_city_helper:"p. ex Mons ou 7000",choose_residence:"Choisir le lieu de résidence",choose_residence_helper:"par ex. Groningue ou Amsterdam",placeholder_city:"Commune ou code postal",problem_city:"Il y a eu un problème durant la collection des villes",change:"Modifier",choose_location:"Choisissez un lieu",placeholder_location:"Nom ou adresse",location_not_found:"Lieu non trouvé ?",add_location:"Ajouter un lieu",location_error:"Il y a eu un problème dans la collection des lieux",street:"Rue et numéro",placeholder_street:"Rue de l'église 1",straat_validate:"Rue et numéro sont des domaines obligatoires.",street_validate_long:"Cela semble une adresse invalide. Si vous utilisez des espaces dans l'adresse, vous ne pouvez pas avoir plus de 15 caractères après le dernier espace.",ok:"OK",zip:"Code postal",bookable_event_info_alert:"Les événements dont le lieu est déterminée en consultation ne sont pas publiés sur UiTinVlaanderen ou d'autres chaînes publiques. Votre événement apparaîtra sur cultuurkuur.be",bookable_event_next_button:"Continuer",bookable_event_success_message:"Le lieu est déterminé en consultation avec l'école."},step4:{age:{age_label:"Adapté à","All ages":"De tous âges",Toddlers:"Tout-petits",Preschoolers:"Jeunes enfants",Kids:"Enfants d’âge scolaire",Teenagers:"Adolescents",Youngsters:"Jeunes",Adults:"Adultes",Seniors:"Seniors",Custom:"Autres",from:"De",till:"à",age:"ans",error_max_lower_than_min:"L'âge maximum ne peut être inférieur à l'âge minimum."},basic_data:"Données de base",name_event:"Nom de l'événement",name_place:"Nom du lieu",help_event:'Choisissez un bon titre, p.ex. "Rouler à vélo le long des chapelles", "La Saga de la Licorne".',help_place:'Utilisez la dénomination officielle, p.ex. "Argos, centre pour l\'art et les médias", "Site de l\'abbaye Herkenrode", "Centre culturel De Werf".',help_description:"Vous pouvez ajouter une description détaillée dans l'étape 5.",info_missing:"Vous n'avez pas rempli tous les champs d'informations obligatoires:",save_error:"Une erreur s'est produite lors de l'enregistrement de votre activité. Merci de réessayer un peu plus tard.","continue":"Continuer",doubles_title:"Évitez les doubles emplois", doubles_help:"Nous avons trouvé des éléments similaires. Controlez les éléments importés auparavant.",sure:'Vous êtes sûr que vous voulez ajouter "{{name}}" ?',return_dashboard:"Non, retourner au tableau de bord",yes_continue:"Oui, procéder l'importation",suggestions:{from:"De",till:"à",permanent:"Permanent"}},step5:{expose_event:"Augmentez la visibilité de votre évènement",expose_place:"Augmentez la visibilité de votre lieu",title:"Titre",description:"Description",add_text:"Ajouter texte",required_200:"Pour attirer un nouveau public, les 200 premier caractères sont les plus importants.",required_still:"Encore",required_signs:"caractères.",required_200_help:"Intégrez le message le plus important dans les 200 premiers caractères. Vous pouvez ensuite ajouter des informations générales.",empty:"Vider",tips:{Concert:"Donnez une description enthousiaste du concert.
  • Quel(s) artiste(s) se produisent ?
  • De quel genre s'agit-il ?
  • Quel album ou œuvre sera présenté ?
",Dansvoorstelling:"Donnez une description enthousiaste du spectacle de danse.
  • Qui est le chorégraphe ?
  • Qui sont les danseurs ?
  • Dans quel style dansent-ils ?
  • Quel est le thème ou le sujet de la représentation ?
",Festival:"Donnez une description enthousiaste du festival.
  • Qui ou quoi est au programme ?
  • Quelle est l'animation (périphérique) ?
",Film:"Donnez une description enthousiaste du cinéma.
  • Faites une brève description de l'histoire.
  • Qui est le réalisateur ?
  • Qui sont les protagonistes ?
  • Le film a-t-il remporté des prix ?
","Lezing of congres":"Donnez une description enthousiaste de la conférence où congrès
  • Quels thèmes sont couverts ?
  • Quels orateurs prennent la parole ?
",Theatervoorstelling:"Donnez une description enthousiaste du théâtre.
  • Esquissez brièvement l'histoire ou le thème.
  • Quelle compagnie de théâtre jouera la pièce ?
  • Quels sont les acteurs qui jouent ?
","Sportwedstrijd bekijken":"Donnez une description enthousiaste de la compétition sportive.
  • Quelles équipes ou quels participants jouent ?
  • Dans quelle compétition se déroule la compétition ?
","Markt of braderie":"Donnez une description enthousiaste du marché, foire ou fête foraine
  • Dans quelles rues a-t-il lieu ?
  • Quels seront les stands ou les stands de vente ?
  • Y a-t-il une animation (de bord) ?
",Opendeurdag:"Donnez une description enthousiaste de la journée portes ouvertes. Que pouvez-vous voir ou vivre ?",Beurs:"Donnez une description enthousiaste de la foire. Que pouvez-vous voir, vivre ou acheter ?",Tentoonstelling:"Donnez une description enthousiaste de l'exposition.
  • Quels sont les artistes qui exposent ?
  • Quelles collections peuvent être vues ?
  • Existe-t-il un guide (audio) ou une brochure ?
","Begeleide uitstap of rondleiding":"Donnez une description enthousiaste de la visite guidée.
  • Qu'y a-t-il à voir ou à vivre le long du parcours ?
  • Y a-t-il un nombre maximum de participants ?
  • La visite guidée est-elle organisée en continu ou à des moments précis ?
  • Y a-t-il des points d'attention particuliers (par exemple, des bottes indiquées) ?
",Lessenreeks:"Donnez une description enthousiaste de la série de cours.
  • Qu'y apprenez-vous exactement ?
  • Des connaissances préalables sont-elles nécessaires pour participer ?
  • Quel est le niveau des cours ?
  • Recevez-vous un diplôme ou un certificat à la fin ?
","Cursus met open sessies":"Donnez une description enthousiaste du cours avec sessions ouvertes ou workshop.
  • Qu'y apprenez-vous exactement ?
  • Des connaissances préalables sont-elles nécessaires pour participer ?
  • Quel est le niveau des cours ?
  • Recevez-vous un diplôme ou un certificat à la fin ?
","Kamp of vakantie":"Donnez une description enthousiaste du camp de vacances
  • Quelles activités pouvez-vous y faire ?
  • Y a-t-il un thème ?
  • Est-il avec ou sans nuitées ?
  • Quelle est l'heure de début et de fin des camps de jour et les soins sont-ils fournis avant et après ?
",Festiviteit:"Donnez une description enthousiaste de la festivité
  • Quelles sont les attractions ?
  • Y a-t-il des activités (périphériques): quiz, concerts, food trucks, marché,... ?
",Route:"Donnez une description enthousiaste de l'itinéraire.
  • Faites-vous le trajet à pied, en vélo, en bateau,.. ?
  • Quels sont les arrêts possibles ?
  • Quelle est la distance ou la durée de l'itinéraire ?
  • L'itinéraire est-il accompagné, avec un guide, une brochure ou des panneaux indicateurs ?
","Party of fuif":"Donnez une description enthousiaste de la soirée. Quels deejays ou groupes se produisent ?","Eet of drankfestijn":"Donnez une description enthousiaste du festin de nourriture ou de boisson.
  • Qu'y a-t-il au menu ?
  • Les recettes seront-elles versées à une organisation caritative ?
  • Y a-t-il une animation (périphérique) ?
","Spel of quiz":"Donnez une description enthousiaste du quiz ou du jeu.
  • Sur quels sujets porte le quiz ?
  • Le jeu a-t-il un thème ?
  • Y a-t-il quelque chose à gagner ?
  • Y a-t-il un nombre maximum de participants ?
","Sport en beweging":"Donnez une description enthousiaste de l'activité sportive.
  • Quel(s) sport(s) pouvez-vous pratiquer ?
  • Quel matériel est (non) fourni ?
",Monument:"Donnez ici une description saillante du monument. Indiquez également si l'ouverture du monument est limitée (p.ex. seulement des salons)."},description_error:"Il y a eu une erreur dans l'enregistrement de la description.",organizer:"Organisation",add_organizer:"Ajouter l'organisation",choose_organizer:"Choisissez une organisation",organizer_not_found:"L'organisation n'a pas été trouvée ?",add_new_organizer:"Ajouter un nouvel organisateur",organizer_error:"Il y a eu une erreur dans l'enregistrement de l'organisateur.",contact:"Contact & réservation",add_contact:"Ajouter plus de coordonnées",website:"Site web",phone:"Numéro de téléphone","e-mail":"Adresse mail",use_booking:"Utiliser pour la réservation",booking_exposure:"Comment ce lien peut-il apparaître ?",buy_tickets:"Achetez des tickets",reserve_places:"Réservez des places",check_availability:"Controlez la disponibilité",subscribe:"Inscrivez-vous",add_more_contact:"Ajouter plus de coordonnées",contact_error:"Il y a eu une erreur dans l'enregistrement de l'information du contact.",facilities:"Accessibilité",add_facility:"Ajouter des dispositions",facility_inapplicable:"Pas d'application",change:"Modifier",image_help:"Ajoutez une image de sorte que les visiteurs reconnaissent mieux votre activité.",images:"Images",copyright:"Copyright","delete":"Supprimer",main_image:"Créer image principale",add_image:"Ajouter une image",priceInfo:{price_label:"Tarif",add_prices:"Ajouter prix",free:"Gratuit",prices:"Prix",change:"Modifier",currency:"euro"},reservationPeriod:{add_reservation_period:"Ajouter une période de réservation",reservation_period:"Période de réservation",from:"De",till:"à"}},publish:{publish_now:"Publier immédiatement",publish_later:"Publier plus tard",edit_done:"Modification terminée",online_from:"Publié le"},timeTracker:{automatic_saved:"Sauvegardé automatiquement à",hour:"heures"},embargo:{title:"Choisissez une date de publication",help:'A partir de quand l\'activité peut-elle apparaître en ligne ? Attention, vous ne pouvez définir cette date qu\'une seule fois.',error_past:"Une date de publication ne peut pas être antérieure.",error_empty:"Choisissez une date de publication.",cancel:"Annuler",ready:"Prêt à modifier"},imageUpload:{modalTitle:"Ajouter une image",defaultError:"Le fichier sélectionné ne répond pas à nos critères.",noFileSelectedError:"Il n'y a pas de fichier sélectionné",somethingWentWrongError:"Une erreur s'est produite lors de l'enregistrement de l'image.",maxSize:"Le fichier que vous souhaitez télécharger est trop gros. La taille maximale est ",formatNotValidError:"Le fichier téléchargé n'est pas une image valable.",extensionsAllowed:"Seuls les fichiers avec les extensions .jpeg, .gif ou .png sont autorisés.",sizeError:"Le fichier téléchargé est trop grand."}},offerStatus:{scheduled:"A lieu",cancelled:"Annulé",postponed:"Reporté",open:"Ouvert",temporarilyClosed:"Fermé temporairement",permanentlyClosed:"Fermé définitivement"},bookingAvailability:{unavailable:"Complet"},calendar:{one_more_days:"Jours récurrents ou variables",or:"ou",default_days:"Période continue",start_label:"Début",end_label:"Fin",whole_day_label:"Toute la journée",start_hour_label:"Heure de début",end_hour_label:"Heure de fin",add_days:"Ajouter des jours",period:{title:"Date de début et de fin",from:"De",till:"à",alert:"Introduisez la date de début ainsi que la date de fin. La date de fin ne peut pas tomber avant la date de début."},openingHours:{permanent_title:"24/24, 7/7",permanent_subtitle:"Chaque jour, chaque heure",add_hours:"Ajouter des heures",opening_hours:"Heures d'ouverture",change:"Modifier",days:"Jours",from:"De",till:"à",more_hours:"Ajouter plus d'heures d'ouverture",cancel:"Annuler",save:"Sauver"}},facilityLabel:{motor:"Dispositions pour des personnes de motricité réduite",visual:"Dispositions pour des malvoyants",hearing:"Dispositions pour des personnes d'une limitation auditive",other:"Autres dispositions",place:"Dispositions de cette location",mental:"Dispositions pour des personnes handicapées mentales",neurodivers:"Dispositions pour des personnes neurodiverses"},audience:{entrance:"Accès",everyone:"Pour tout le monde",members:"Seulement pour des membres",members_help:"Votre article est seulement publié sur des chaînes pour des associations et leurs membres.",education:"Spécifiquement pour des écoles",education_help:"Votre article est seulement publié sur des chaînes d'éducation culturelle. Après la publication vous pouvez encore ajouter de l'information spécifique pour des écoles."},workflowStatus:{label:"État de publication",id:"ID",DRAFT:"Pas publié",READY_FOR_VALIDATION:"Prêt à être publié",APPROVED:"Publié le",REJECTED:"Publication rejetée",DELETED:"Pas publié",rules:"Regardez les règles",rejected_full:"Cet item a été rejeté."},queryFieldGroup:{what:"Quoi",where:"Où",when:"Quand","input-information":"Information input",translations:"Traductions",other:"Autres"},queryFieldLabel:{cdbid:"code d'identification (CDBID)",offertype:"type (offre)",keywords:"label",title:"titre",category_eventtype_name:"type (activité)",locationtype:"type (location)",category_theme_name:"thème",text:"texte",city:"commune (nom)",zipcode:"code postal",location_id:"location (id)",country:"pays",location_name:"location (nom)",location_labels:"location (labels)",category_flandersregion_name:"région / commune",nisRegions:"région / commune",date:"date",permanent:"permanent",lastupdated:"modifié dernièrement",creationdate:"créé",createdby:"créé par",availablefrom:"disponible le",detail_lang:"traduction",organiser_keywords:"label organisation",organiser_id:"organisation (id)",agefrom:"âge",attendance_mode:"forme de présence",price:"prix",status:"status",booking_availability:"billets & places",organiser_label:"organisation (nom)",category_facility_name:"dispositions",category_targetaudience_name:"public cible",startdate:"date de début",enddate:"date de fin",lastupdatedby:"modifié dernièrement par",category_publicscope_name:"portée de public"},"EVENT-EXPORT":{"QUERY-IS-MISSING":"Une exportation est seulement possible après avoir exécuté une recherche","TOO-MANY-ITEMS":"Une exportation manuelle contenant plus de {{limit}} items n'est pas possible. Contactez vragen@uitdatabank.be pour une solution sur mesure."},AANBOD_INVOEREN:"Importer l'offre",AANBOD_BEWERKEN:"Modifier l'offre",AANBOD_MODEREREN:"Modérer l'offre",AANBOD_VERWIJDEREN:"Supprimer l'offre",AANBOD_HISTORIEK:"Consulter l'historique",ORGANISATIES_BEHEREN:"Gérer les organisations",GEBRUIKERS_BEHEREN:"Gérer les utilisateurs",LABELS_BEHEREN:"Gérer les labels",VOORZIENINGEN_BEWERKEN:"Modifier les dispositions",ORGANISATIES_BEWERKEN:"Modifier les organisations",PRODUCTIES_AANMAKEN:"Gérer les productions",FILMS_AANMAKEN:"Gérer les films","event type missing":'Choisissez un type à l\'étape 1 ?',"timestamp missing":'Avez-vous choisi une date en étape 2 ?',"start or end date missing":'Avez-vous choisi une date de début et de fin en étape 2 ?',"when missing":'Avez-vous fait un choix en étape 2 ?',"place missing for event":'Avez-vous choisi un lieu en étape 3 ?',"location missing for place":'Avez-vous choisi un lieu en étape 3 ?',"title is missing":'Avez-vous choisi une titre en étape 4 ?',"age range is missing":'Avez-vous choisi une tranche d\'âge en étape 4 ?',UNIQUE_ORGANIZER_NOTICE:"Pour préserver à chaque organisation une identité unique dans UiTdatabank, nous demandons à chaque organisation de fournir un hyperlien unique et valide.",OPENING_HOURS_ERROR:{openAndClose:"Introduisez toutes les heures d'ouverture et de fermeture.",dayOfWeek:"Choisissez au moins un jour dans chaque ligne ajoutée.",openIsBeforeClose:"L'heure de fermeture doit être postérieure à l'heure d’ouverture."},TIME_SPAN_REQUIREMENTS:{timedWhenNotAllDay:"L'heure de début et de fin est obligatoire quand un événement ne dure pas toute la journée.",startBeforeEndDay:"La date de fin ne peut pas tomber avant la date de début.",startBeforeEnd:"L'heure de fin ne peut pas tomber avant l'heure de début.",tooFarInFuture:"La date de fin et la date de début choisies ne peuvent pas dépasser 10 ans."},uitpas:{uitpasInfo:{uitpas:"UiTPAS",uitpas_alert:"Ceci est un organisateur UiTPAS. Sélectionnez le prix afin d'ajouter de l'information spécifique concernant UiTPAS.",uitpas_info:"Ceci est une activité UiTPAS.",cantChangePrice:"Pour cet événement des tickets ont été vendus dont l'information du prix existe déjà. Vous ne pouvez plus modifier l'information du prix.",cantChangeOrganiser:"Pour cet événement des tickets UiTPAS ont déjà été vendus. Vous ne pouvez plus modifier l'organisation.",unavailable:"Pour cet événement des tickets UiTPAS ont déjà été vendus. Vous ne pouvez plus modifier l'organisation."},cardSystems:{card_systems:", p.ex. 011 32 43 54',required:"Veuillez compléter ce domaine.",valid_url:"Cette url n'est pas valable.",valid_email:"Cette adresse e-mail n'est pas valable.",valid_phone:"Ce numéro de téléphone n'est pas valable.",cancel:"Annuler",add:"Ajouter",add_phone:"Ajouter un numéro de téléphone",add_email:"Ajouter une adresse mail",add_url:"Ajouter un autre site web"},manage:{edit:"Modifier","delete":"Supprimer",overview:"Retourner à l'aperçu",dashboard:"Retourner au tableau de bord",name:"Nom",description:"Description",educational_description:"Description de Cultuurkuur",address:"Adresse",website:"Site Internet",phone:"Numéro de téléphone",email:"Adresse e-mail",labels:"Labels",removed:"Cette organisation a été supprimée."}},duplicate:{title:"Copier et modifier",description:"Vous êtes sur le point de copier un événement. Choisissez une date pour cet événement.",error:"Il y a eu une erreur dans la création d'une copie !"},dashboard:{welcome:"Bienvenue,",no_items:"Vous n'avez pas encore ajouté d'éléments.",add_activity:"Ajouter une activité ou une location ?",my_activities:"Mes activitées et lieux",my_organizers:"Mes organisations",add:"Ajouter",add_organizer:"Ajouter une organisation",directive:{no_publish:"Pas publié !",online:"En ligne le",edit:"Modifier",example:"Exemple","delete":"Supprimer",expired_event:"Événement terminé"},"delete":{sure:'Vous êtes sûr de vouloir supprimer "{{name}}" ?',error_location:'Le lieu "{{name}}" ne peut pas être supprimée car des activités y ont encore lieu.',error:"Il y a eu une erreur dans la suppression de l'activité.",cancel:"Annuler","delete":"Supprimer"}},entry:{exported_documents:"Documents exportés",notifications:"Notifications",in_progress:"Occupé"},offerTypes:{Concert:"Concert",Theatervoorstelling:"Théâtre","Lezing of congres":"Conférence ou congrès",Dansvoorstelling:"Spectacle de danse",Festival:"Festival","Toeristisch evenement":"Événement touristique",Film:"Cinéma","Sportwedstrijd bekijken":"Assister à une compétition sportive","Cursus met open sessies":"Cours avec sessions ouvertes",Lessenreeks:"Série de cours","Sport en beweging":"Activité sportive","Kamp of vakantie":"Camp de vacances","Begeleide uitstap of rondleiding":"Tour ou excursion guidée",Route:"Itinéraire","Spel of quiz":"Jeu ou quiz","Party of fuif":"Soirée",Festiviteit:"Festivité","Congres of studiedag":"Congrès ou journée d'étude","Eet- of drankfestijn":"Festin de nourriture ou de boisson","Thema of pretpark":"Parc à thème ou parc d'attractions",Theater:"Théâtre","Jeugdhuis of jeugdcentrum":"Maison de jeunes ou centre de jeunesse","Cultuur- of ontmoetingscentrum":"Centre culturel ou centre de réunion",Discotheek:"Discothèque","Bibliotheek of documentatiecentrum":"Bibliothèque ou centre de documentation",Bioscoop:"Cinéma",Horeca:"Horeca","Openbare ruimte":"Espace public",Tentoonstelling:"Exposition","Markt, braderie of kermis":"Marché, foire ou fête foraine","Natuurgebied of park":"Zone naturelle ou parc","Natuur, park of tuin":"Zone naturelle ou parc",Beurs:"Foire",Monument:"Monument",Opendeurdag:"Journée portes ouvertes","Recreatiedomein of centrum":"Centre de loisirs ou centre de récréation","Park of tuin":"Jardin ou parc","Archeologische Site":"Site archéologique","School of onderwijscentrum":"École ou centre éducatif",Sportcentrum:"Centre sportif",Winkel:"Magasin",Speeltuin:"Aire de jeu","Museum of galerij":"Musée ou galerie","Zaal of expohal":"Hall ou salle d'expo"},offerThemes:{"Antiek en brocante":"Antiquités ou brocantes",Architectuur:"Architecture","Audiovisuele kunst":"Arts graphiques",Beeldhouwkunst:"Sculpture",Fotografie:"Photographie",Grafiek:"Art grafique",Installatiekunst:"Installation",Schilderkunst:"Peinture","Decoratieve kunst":"Arts décoratifs",Design:"Design",Mode:"Mode","Meerdere kunstvormen":"Arts pluridisciplinaires","Ballet en klassieke dans":"Ballet et danse classique","Volksdans en werelddans":"Danse folklorique et mondiale","Stijl en salondansen":"Danse de salon et stylée","Moderne dans":"Danse moderne",Erfgoed:"Patrimoine",Avontuur:"Aventure",Natuur:"Nature",Sport:"Sport",Technologie:"La technologie",Koken:"La cuisine","Actie- en avonturenfilm":"Film d'action et d'aventure","Animatie en kinderfilms":"Films animés et films pour enfants","Documentaires en reportages":"Documentaires et reportages","Griezelfilm of horror":"Films d'épouvantes ou orreurs","Historische film":"Films historiques",Komedie:"Comédie",Kortfilm:"Court métrage",Filmmusical:"Comédie musicale",Drama:"Films dramatiques","Science fiction":"Science fiction",Cinefiel:"Cinéphile",Thriller:"Films à suspense","Meerdere filmgenres":"Films de tous genres",Geschiedenis:"Histoire et archéologie","Gezondheid en wellness":"Santé et bien-être","Landbouw en platteland":"Agriculture et campagne","Milieu en natuur":"Environnement et nature",Literatuur:"Littérature",Poezie:"Poésie",Fictie:"Fiction","Non fictie":"Non fiction",Strips:"Bandes dessinées","Klassieke muziek":"Musique classique","Jazz en blues":"Jazz et blues","Pop en rock":"Pop et rock","Hiphop, r&b en rap":"Hiphop, r&b et rap","Dance muziek":"Musique de danse","Folk en wereldmuziek":"Musique folklorique et mondiale",Amusementsmuziek:"Cabaret","Politiek en maatschappij":"Politique et société",Creativiteit:"Créativité","Computer en techniek":"Ordinateurs et technologie",Opvoeding:"Éducation","Persoon en relaties":"Hommes et relations","Interculturele vorming":"Formation interculturelle","Kunst en kunsteducatie":"Arts et formation artistique","Gezondheid en zorg":"Santé et soins",Samenleving:"Vivre en société","Bal en racketsport":"Sports de balles et raquettes","Atletiek, wandelen en fietsen":"Athlétisme, marche et cyclisme","Zwemmen en watersport":"Natation et sports nautiques","Fitness, gymnastiek, dans en vechtsport":"Fitness, gymnastique, danse et arts martiaux","Outdoor en Adventure sport":"Sports de plein air et d'aventure","Lucht en motorsport":"Sports aero et moteurs",Volkssporten:"Sports folkloriques","Omnisport en andere":"Omnisports et autres","Tekst en muziektheater":"Théâtre dramatique et musical","Humor en comedy":"L'humour et la comédie",Musical:"Comédie musicale","Figuren en poppentheater":"Théâtre de marionnettes","Opera en operette":"Opéra et opérette","Mime en bewegingstheater":"Mime et theéâtre de mouvements",Wetenschap:"Sciences","Zingeving, filosofie en religie":"Sens de la vie, philosophie et religion","Thema onbepaald":"Thème non défini",Circus:"Cirque",Voeding:"Nutrition",Economie:"Économie",Themakamp:"Camp thématique","Taal en communicatie":"Langue"},offerThemesGroups:{Dans:"Danse","Kunst en erfgoed":"Art et Patrimoine",Muziek:"Musique",Sport:"Sport",Varia:"Divers"},weekdays:{monday:{label:"lun.",name:"Lundi"},tuesday:{label:"mar.",name:"Mardi"},wednesday:{label:"mer.",name:"Mercredi"},thursday:{label:"jeu.",name:"Jeudi"},friday:{label:"ven.",name:"Vendredi"},saturday:{label:"sam.",name:"Samedi"},sunday:{label:"dim.",name:"Dimanche"}},search:{search:"Chercher",advanced:"Avancé",label:"Mettre un label",deselect:"Annuler la sélection",savedSearches:{savedSearches:"Recherches conservées",items:{"Door mij ingevoerd":"Encodé par moi"},mySearches:"Mes recherches",title:"Titre",viewResults:"Consulter résultats",yourSearch:"Votre recherche",save:"Conserver"},manage:"Gérer",oneResult:"1 résultat",multipleResults:"{{count}} résultats",description:"Description",labels:"Labels",picture:"Image",what:"Quoi",where:"Où",when:"Quand",inputInformation:"Information encodage",noEventsFound:"Aucun événements trouvés, essayez une autre recherche.",exportButton:"Activités d'exportation",modal:"Votre sélection ne contient aucune activité, veuillez essayer d’exporter une autre recherche.",advancedQueryBuilder:{title:"Moteur de recherche avancée",header:{info:"Ici vous pouvez effectuer des recherches avancées. Besoin d'aide ? Lisez ",link:"le mode d'emploi"},group:"Groupe ",include:"Inclure",exclude:"Exclure",addGroup:"Ajouter groupe",cancel:"Annuler",search:"Rechercher",syntaxError:'Votre requête contient une erreur. Sur cette page, vous trouverez plus d\'informations sur la manière de rédiger une requête.',invalidField:"{{field}} n'est pas un paramètre valide. Sur cette page, vous trouverez plus d'informations sur la manière de rédiger une requête."}}})}(),function(){"use strict";angular.module("udb.core").constant("udbGermanTranslations",{BE:"Belgien",NL:"Niederlande",ZZ:"Ort in Absprache mit der Schule",EN_ADJECTIVE:"englische",FR_ADJECTIVE:"französische",DE_ADJECTIVE:"deutsche",NL_ADJECTIVE:"niederländische",datepicker:{CURRENT:"Heute",CLEAR:"Löschen",CLOSE:"Schließen"},"=":"ist gleich","><":"zwischen","+":"ist gleich","!":"ist ungleich","-":"ist ungleich",">":"ist größer oder gleich","<":"ist kleiner oder gleich",">_DATE":"später als","<_DATE":"früher als","=_DATE":"ist gleich","><_DATE":"zwischen",choice:{everyone:"alle",members:"Mitglieder",education:"Bildung",Available:"Findet statt",Unavailable:"Abgesagt",TemporarilyUnavailable:"Verlegt",available:"Verfügbar",unavailable:"Voll oder ausverkauft",online:"online",offline:"physisch",mixed:"gemischt (physisch / offline)",asc:"aufsteigend",desc:"absteigend",today:"heute",tomorrow:"morgen",thisweekend:"dieses Wochenende",nextweekend:"nächstes Wochenende",next7days:"die nächsten 7 Tage",next14days:"die nächsten 14 Tage",next30days:"die nächsten 30 Tage",next3months:"die nächsten 3 Monate",next6months:"die nächsten 6 Monate",next12months:"die nächsten 12 Monate",permanent:"permanent",event:"Veranstaltung",place:"Ort",actor:"Schauspieler",production:"Produktion",nl:"Niederländisch",fr:"Französisch",en:"Englisch",de:"Deutsch",AF:"Afghanistan",AX:"Ålandinseln",AL:"Albanien",DZ:"Algerien",AS:"Amerikanisch-Samoa",VI:"Amerikanische Jungferninseln",UM:"Kleinere abgelegene Inseln der Vereinigten Staaten",AD:"Andorra",AO:"Angola",AI:"Anguilla",AQ:"Antarktis",AG:"Antigua und Barbuda",AR:"Argentinien",AM:"Armenien",AW:"Aruba",AU:"Australien",AZ:"Aserbaidschan",BS:"Bahama’s",BH:"Bahrein",BD:"Bangladesch",BB:"Barbados",BE:"Belgien",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivien",BA:"Bosnien und Herzegowina",BW:"Botswana",BV:"Bouvetinsel",BR:"Brasilien",IO:"Britisches Territorium im Indischen Ozean",VG:"Britische Jungferninseln",BN:"Brunei",BG:"Bulgarien",BF:"Burkina Faso",BI:"Burundi",KH:"Kambodscha",CA:"Kanada",KY:"Kaimaninseln",CF:"Zentralafrikanische Republik",CL:"Chile",CN:"China",CX:"Weihnachtsinsel",CC:"Kokosinseln",CO:"Kolumbien",KM:"Komoren",CG:"Kongo",CD:"Kongo-Kinshasa",CK:"Cookinseln",CR:"Costa Rica",CU:"Kuba",CY:"Zypern",DK:"Dänemark",DJ:"Dschibuti",DM:"Dominica",DO:"Dominikanische Republik",DE:"Deutschland",EC:"Ecuador",EG:"Ägypten",SV:"El Salvador",GQ:"Äquatorialguinea",ER:"Eritrea",EE:"Estland",ET:"Äthiopien",FO:"Färöer Inseln",FK:"Falklandinseln",FJ:"Fidschi",PH:"Philippinen",FI:"Finnland",FR:"Frankreich",GF:"Französisch-Guayana",PF:"Französisch-Polynesien",TF:"Französische Süd- und Antarktisgebiete",GA:"Gabun",GM:"Gambia",GE:"Georgien",GH:"Ghana",GI:"Gibraltar",GD:"Grenada",GR:"Griechenland",GL:"Grönland",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GG:"Guernsey",GN:"Guinea",GW:"Guinea-Bissau",GY:"Guyana",HT:"Haiti",HM:"Heard- und McDonald-Inseln",IM:"Insel Man",HN:"Honduras",HU:"Ungarn",HK:"Hongkong",IS:"Island",IE:"Irland",IN:"Indien",ID:"Indonesien",IQ:"Irak",IR:"Iran",IL:"Israel",IT:"Italien",CI:"Elfenbeinküste",JM:"Jamaika",JP:"Japan",YE:"Jemen",JE:"Jersey",JO:"Jordanien",CV:"Kapverden",CM:"Kamerun",KZ:"Kasachstan",KE:"Kenia",KG:"Kirgisistan",KI:"Kiribati",KW:"Kuwait",HR:"Kroatien",LA:"Laos",LS:"Lesotho",LV:"Lettland",LB:"Libanon",LR:"Liberia",LY:"Libyen",LI:"Liechtenstein",LT:"Litauen",LU:"Luxemburg",MO:"Macau",MK:"Mazedonien",MG:"Madagaskar",MW:"Malawi",MV:"Malediven",MY:"Malaysia",ML:"Mali",MT:"Malta",MA:"Marokko",MH:"Marshallinseln",MQ:"Martinique",MR:"Mauretanien",MU:"Mauritius",YT:"Mayotte",MX:"Mexiko",FM:"Mikronesien",MD:"Moldawien",MC:"Monaco",MN:"Mongolei",ME:"Montenegro",MS:"Montserrat",MZ:"Mosambik",MM:"Myanmar",NA:"Namibien",NR:"Nauru",NL:"Niederlande",AN:"Niederländische Antillen",NP:"Nepal",NI:"Nicaragua",NC:"Neukaledonien",NZ:"Neuseeland",NE:"Niger",NG:"Nigeria",NU:"Niue",KP:"Nordkorea", MP:"Nördliche Marianen",NO:"Norwegen",NF:"Norfolkinsel",UG:"Uganda",UA:"Ukraine",UZ:"Usbekistan",OM:"Oman",ZZ:"Unbekanntes oder ungenaues Territorium",TL:"Osttimor",AT:"Österreich",PK:"Pakistan",PW:"Palau",PS:"Palestinien",PA:"Panama",PG:"Papua Neuguinea",PY:"Paraguay",PE:"Peru",PN:"Pitcairn",PL:"Polen",PT:"Portugal",PR:"Puerto Rico",QA:"Katar",RO:"Rumänien",RU:"Russland",RW:"Ruanda",RE:"Réunion",BL:"Saint Barthélemy",KN:"St. Kitts und Nevis",LC:"St. Lucia",PM:"St. Pierre und Miquelon",VC:"St. Vincent und Grenadinen",SB:"Salomoninseln",WS:"Samoa",SM:"San Marino",ST:"Sao Tome und Principe",SA:"Saudi-Arabien",SN:"Senegal",RS:"Serbien",CS:"Serbien-Montenegro",SC:"Seychellen",SL:"Sierra Leone",SG:"Singapur",SH:"St. Helena",MF:"Sint Maarten",SI:"Slowenien",SK:"Slowakei",SD:"Sudan",SO:"Somalia",ES:"Spanien",LK:"Sri Lanka",SR:"Suriname",SJ:"Spitzbergen und Jan Mayen",SZ:"Swaziland",SY:"Syrien",TJ:"Tadschikistan",TW:"Taiwan",TZ:"Tansania",TH:"Thailand",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinidad und Tobago",TD:"Tschad",CZ:"Tschechien",TN:"Tunesien",TR:"Türkei",TM:"Turkmenistan",TC:"Türkische und Caicos-Inseln",TV:"Tuvalu",UY:"Uruguay",VU:"Vanuatu",VA:"Vatikan",VE:"Venezuela",GB:"Großbritannien",AE:"Vereinigte Arabische Emirate",US:"USA",VN:"Vietnam",WF:"Wallis und Futuna",EH:"Westsahara",BY:"Weißrussland",ZM:"Sambia",ZW:"Simbabwe",ZA:"Südafrika",GS:"Südgeorgien und die Südlichen Sandwichinseln",KR:"Südkorea",SE:"Schweden",CH:"Schweiz"},property:{name:"Titel",description:"Beschreibung",labels:"Labels",calendarSummary:"Kalenderzusammenfassung",image:"Abbildung",location:"Ort",address:"Adresse",organizer:"Organisator",priceInfo:"Preisinformation",kansentarief:"Ermäßigter Tarif",bookingInfo:"Buchungsinfo",contactPoint:"Kontaktinfo",status:"Status",bookingAvailability:"Tickets & Plätze",attendance:"Anwesenheits-Modus",creator:"Autor","terms.theme":"Thema","terms.eventtype":"Typ",created:"Datum erstellt",modified:"Datum letzte Anpassung",publisher:"Autor",available:"Embargodatum",endDate:"Enddatum",startDate:"Startdatum",calendarType:"Zeitart",sameAs:"Externe IDs",typicalAgeRange:"Alter",language:"Sprache",audience:"Zutritt"},preview:{tabs:{data:"Angaben",history:"Verlauf",publication:"Veröffentlichung"},not_found:"Seite nicht gefunden",not_found_help:"Diese Seite konnte nicht gefunden werden.",loading:"Laden...",edit:"Bearbeiten",duplicate:"Kopieren und anpassen",change_availability:"Verfügbarkeit ändern","delete":"Löschen",title:"Titel",type:"Typ",entrance:"Zutritt",description:"Beschreibung",no_description:"Keine Beschreibung",where:"Wo",bookable_event_location_info:"Ort in Absprache mit der Schule.",online:"Online",online_location:"Online-Teilnahme",online_location_missing:"Keine Url für Online-Teilnahme",when:"Wann",labels:"Labels",labels_error:"Das Hinzufügen von Label '{{labelName}}' war nicht möglich.",labels_success:"Das Label '{{addedLabel}}' wurde erfolgreich hinzugefügt.",organizer:"Organisation",no_organizer:"Keine Organisationsinformation",price:"Preis",free:"Kostenlos",currency:"Euro",no_price:"Keine Preisinformation",booking_availability:"Tickets & Plätze",booking_unavailable:"Voll oder ausverkauft",booking_available:"Verfügbar",age_label:"Geeignet für",all_ages:"Alle Altersgruppen",no_age:"Keine Altersinformation",videos_label:"Videos",no_videos:"Keine Videos",publiq_url:"Auf {{publicationBrand}}ansehen",translate:"Übersetzen",info_lesson_series:"Ihre Unterrichtsreihe erscheint bis zum ersten Unterrichtszeitpunkt in UiT-Agenden.",info_holiday_camp:"Ihr Camp oder Urlaub wird bis zum Starttag in online Agendas angezeigt."},translate:{ready:"Fertig mit übersetzen",translate:"übersetzen",original:"Original",edit:"Bearbeiten",translation:"Übersetzung",description:"Beschreibung",title:"Titel",tariff:"Preistarif",address:"Adresse",street:"Straße und Hausnummer"},labels:{what:"Mit einem Label fügen Sie kurze, konkrete Suchbegriffe hinzu.",invalid:"Dies scheint ein ungültiges Label zu sein. Ein Label",chars:"besteht ausschließlich aus Buchstaben oder Zahlen",excluded:"enthält lediglich '-' und '_', aber darf nicht mit diesen Zeichen anfangen",length:"umfasst 2 bis 50 Zeichen"},calendarSummary:{openinghours:"mehrere Zeiten",from:"Von",till:"bis",permanent:"Permanent"},moderate:{infoAlert:'

Willkommen auf der Validierungsseite. Auf dieser Seite können Sie als dezentraler Validator Veranstaltungen genehmigen oder ablehnen:

  • Ablehnen. Abgelehnte Veranstaltungen werden nicht mehr auf UiTinVlaanderen oder anderen UiT-Agenden veröffentlicht und können vom Importeur nicht mehr bearbeitet werden.
  • Genehmigen. Genehmigte Veranstaltungen bleiben auf UiTinVlaanderen und anderen UiTagenda-Plattformen veröffentlicht. Sie werden nicht erneut zur Validierung vorgelegt.

Eine Anleitung zur Validierung finden Sie in den Inhaltsregeln der UiTdatabank.

',validate:"Validieren",approve:"Genehmigen",approved:"Genehmigt",reject:"Ablehnen",rejected:"Abgelehnt",continue_validation:"Mit Validierung fortfahren"},cultuurkuur:{info:'Diese Veranstaltung enthält extra Informationen für Schulen und Lehrkräfte.',subject:"Betreff",target_group:"Zielgruppe",levels:"Geeignet für",grades:"Bildungsgrade",edit_link:"Auf cultuurkuur.be ändern",incomplete_help:"Fügen Sie ergänzende Informationen für Schulen und Lehrkräfte auf cultuurkuur.be hinzu.","continue":"Weiter"},booking:{label:"Buchung",no_booking:"Keine Buchungsinformation"},contact:{label:"Kontakt",or:"oder",no_contact:"Keine Kontaktinformation"},imageDetail:{label:"Abbildungen",alt_image:"Abbildung {{index}}",main_image:"Hauptabbildung",no_images:"Keine Abbildungen"},prices:{title:"Preise hinzufügen",base:"Basistarif",target_group:"Zielgruppe",free:"Kostenlos",currency:"Euro",add_price:"Preis eingeben",add_tarriff:"Tarif hinzufügen",error:"Beim Speichern des Preises ist ein Fehler aufgetreten.",invalid:"Diese Preisinformation scheint ungültig zu sein und kann daher nicht gespeichert werden.",invalid_tip1:"Notieren Sie Dezimalstellen mit einem Komma.",invalid_tip2:"Lassen Sie keine Reihe frei, geben Sie immer eine Zielgruppe und einen Betrag ein.",invalid_tip3:"Geben Sie maximal zwei Ziffern nach dem Komma ein.",close:"Schließen",save:"Speichern"},location:{title:"Neuen Ort hinzufügen",name:"Bezeichnung Ort",name_validation:"Die Bezeichnung des Ortes ist ein Pflichtfeld.",street:"Straße und Hausnummer",street_validation:"Straße ist ein Pflichtfeld.",city:"Stadt",category:"Kategorie",category_help:"Wählen Sie eine Kategorie, die diesen Ort am besten umschreibt.",category_validation:"Kategorie ist ein Pflichtfeld.",error:"Beim Speichern Ihres Ortes ist ein Fehler aufgetreten.",invalid_street:"Dies scheint eine ungültige Adresse zu sein. Wenn Sie Leerzeichen in der Adresse verwenden, dürfen nach dem letzten Leerzeichen nicht mehr als 15 Zeichen stehen.",cancel:"Abbrechen",add:"Hinzufügen",zip:"Postleitzahl",nlPostalCode_validation:"Postleitzahl ist ein Pflichtfeld.",invalid_PostalCode:"Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern."},eventForm:{langWarning:"Achtung, Sie (be)arbeiten in einer anderen Sprache: {{language}}. Falls dies nicht beabsichtigt ist, wenden Sie sich bitte an vragen@uitdatabank.be.",step1:{title:"Was möchten Sie hinzufügen?",label_event:"Eine Veranstaltung",show_everything:"Alles anzeigen",or:"oder",location_label:"Einen Ort",change:"Ändern",refine:"Verfeinern",info_lesson_series:"Ihre Unterrichtsreihe erscheint bis zum ersten Unterrichtszeitpunkt in UiT-Agenden."},step2:{date_help_event:"Wann findet diese Veranstaltung oder diese Aktivität statt?",date_help_place:"Wann ist diese Stelle oder dieser Ort geöffnet?"},step3:{title_event:"Wo findet diese Veranstaltung oder diese Aktivität statt?",title_place:"Wo befindet sich diese Stelle oder dieser Ort?",choose_city:"Wählen Sie eine Stadt",choose_city_helper:"zB. Gent oder 9000",choose_residence:"Wählen Sie eine Wohnanschrift",choose_residence_helper:"zB. Groningen oder Amsterdam",placeholder_city:"Stadt oder Postleitzahl",problem_city:"Beim Abrufen der Städte ist ein Problem aufgetreten",change:"Ändern",choose_location:"Wählen Sie einen Ort",placeholder_location:"Name oder Adresse",location_not_found:"Ort nicht gefunden?",add_location:"Einen Ort hinzufügen",location_error:"Beim Abrufen der Orte ist ein Fehler aufgetreten",street:"Straße und Hausnummer",placeholder_street:"Kerkstraat 1",street_validate:"Straße und Hausnummer ist ein Pflichtfeld.",street_validate_long:"Dies scheint eine ungültige Adresse zu sein. Wenn Sie Leerzeichen in der Adresse verwenden, dürfen nach dem letzten Leerzeichen nicht mehr als 15 Zeichen stehen.",ok:"OK",zip:"Postleitzahl",zip_validate:"Postleitzahl ist ein Pflichtfeld.",invalid_zip:"Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern.",bookable_event_info_alert:"Veranstaltungen, bei denen der Ort in Absprache festgelegt wird, werden nicht auf UiTinVlaanderen oder anderen Öffentlichkeitskanälen veröffentlicht. Ihre Veranstaltung wird jedoch auf cultuurkuur.be angezeigt",bookable_event_next_button:"Weiter",bookable_event_success_message:"Der Ort wird in Absprache mit der Schule festgelegt."},step4:{age:{age_label:"Geeignet für","All ages":"Alle Altersgruppen",Toddlers:"Kleinkinder",Preschoolers:"Kindergartenkinder",Kids:"Kinder",Teenagers:"Teenager",Youngsters:"Junge",Adults:"Erwachsene",Seniors:"Senioren",Custom:"Andere",from:"Von",till:"Bis",age:"Jahre",error_max_lower_than_min:"Das Höchstalter kann nicht unter dem Mindestalter liegen."},basic_data:"Basisangaben",name_event:"Name der Veranstaltung",name_place:"Bezeichnung des Ortes",help_event:'Verwenden Sie einen aussagekräftigen Titel, zB. "Radtour entlang von Kapellen", "Die Sage vom Einhorn".',help_place:'Verwenden Sie die offizielle Bezeichnung, zB. "Gravensteen", "Abdijsite Herkenrode", "Cultuurcentrum De Werf".',help_description:"Eine ausführliche Beschreibung können Sie in Schritt 5 hinzufügen.",info_missing:"Nicht alle Pflichtfelder wurden ausgefüllt:",save_error:"Beim Speichern der Aktivität ist ein Fehler aufgetreten. Probieren Sie es später noch einmal.","continue":"Weiter",doubles_title:"Vermeiden Sie doppelte Arbeit",doubles_help:"Wir haben vergleichbare Items gefunden. Überprüfen Sie diese bereits eher eingegebenen Items.",sure:'Sind Sie sicher, dass Sie "{{name}}" hinzufügen möchten?',return_dashboard:"Nein, zurück zum Dashboard",yes_continue:"Ja, mit der Eingabe fortfahren",suggestions:{from:"Von",till:"bis",permanent:"Permanent"}},step5:{expose_event:"Heben Sie Ihre Veranstaltung besonders hervor",expose_place:"Heben Sie diesen Ort besonders hervor",title:"Titel",description:"Beschreibung",add_text:"Text hinzufügen",required_200:"Die ersten 200 Zeichen sind am wichtigsten, wenn Sie sich an ein neues Publikum richten.",required_still:"Noch",required_signs:"Zeichen.",required_200_help:"Bringen Sie die wichtigste Botschaft in den ersten 200 Zeichen unter. Sie können noch zusätzliche Hintergrundinformationen hinzufügen.",empty:"Leeren",tips:{Concert:"Schreiben Sie eine enthusiastische Umschreibung des Konzerts.
  • Welche(r) Künstler(innen) treten auf?
  • Um welches Genre handelt es sich?
  • Welches Album oder Werk wird vorgestellt?
",Dansvoorstelling:"Schreiben Sie eine enthusiastische Umschreibung der Tanzvorführung.
  • Wer ist der Choreograph?
  • Wer sind die Tänzer?
  • Welchen Stil tanzen sie?
  • Um welches Thema oder Problem dreht sich die Vorstellung?
",Festival:"Schreiben Sie eine enthusiastische Umschreibung des Festivals.
  • Wer oder was steht auf dem Programm?
  • Welche (Neben)Aktivitäten gibt es?
",Film:"Schreiben Sie eine enthusiastische Umschreibung des Films.
  • Umreißen Sie kurz die Geschichte.
  • Wer ist der Regisseur?
  • Wer spielt die Hauptrolle?
  • Hat der Film Preise gewonnen?
","Lezing of congres":"Schreiben Sie eine enthusiastische Umschreibung der Lesung oder des Kongresses.
  • Welche Themas werden behandelt?
  • Welche Sprecher nehmen das Wort?
",Theatervoorstelling:"Schreiben Sie eine enthusiastische Umschreibung der Vorstellung.
  • Umreißen Sie kurz die Geschichte oder das Thema.
  • Welches Theaterensemble führt das Stück auf?
  • Welche Darsteller spielen mit?
","Sportwedstrijd bekijken":"Schreiben Sie eine enthusiastische Umschreibung des Sportwettkampfes.
  • Welche Mannschaften oder Teilnehmer treten an?
  • In welcher Liga findet der Wettkampf statt?
","Markt of braderie":"Schreiben Sie eine enthusiastische Umschreibung des Markts oder Straßenfests.
  • In welchen Straßen findet dieser statt?
  • Welche Stände werden anwesend sein?
  • Gibt es (Neben)Aktivitäten?
",Opendeurdag:"Schreiben Sie eine enthusiastische Umschreibung vom Tag der offenen Tür. Was kann man sehen oder erleben?",Beurs:"Schreiben Sie eine enthusiastische Umschreibung der Messe. Was kann man ansehen, erleben oder kaufen?",Tentoonstelling:"Schreiben Sie eine enthusiastische Umschreibung der Ausstellung.
  • Welche Künstler stellen aus?
  • Welche Kollektionen können betrachtet werden?
  • Steht ein (Audio)Guide oder eine Broschüre zur Verfügung?
","Begeleide uitstap of rondleiding":"Schreiben Sie eine enthusiastische Umschreibung des Rundgangs.
  • Was kann man entlang der Strecke sehen oder erleben?
  • Gibt es eine maximale Anzahl Teilnehmer?
  • Wird der Rundgang durchgehen oder zu bestimmten Zeiten organisiert?
  • Gibt es Dinge zu beachten (zB. Stiefel notwendig)?
",Lessenreeks:"Schreiben Sie eine enthusiastische Umschreibung der Vorlesungsreihe.
  • Was genau lernt man?
  • Benötigt man Vorkenntnisse um teilzunehmen?
  • Welches Niveau haben die Vorlesungen?
  • Erhält man am Ende ein Diplom oder Zertifikat?
","Cursus met open sessies":"Schreiben Sie eine enthusiastische Umschreibung des Workshops oder Kurses mit öffentlichen Sitzungen.
  • Was genau lernt man?
  • Benötigt man Vorkenntnisse um teilzunehmen?
  • Welches Niveau haben die Vorlesungen?
  • Erhält man am Ende ein Diplom oder Zertifikat?
","Kamp of vakantie":"Schreiben Sie eine enthusiastische Umschreibung des Camps oder Ferienlagers.
  • Welche Aktivitäten gibt es?
  • Gibt es ein Thema?
  • Gibt es beim Camp Übernachtungsmöglichkeiten?
  • Wann beginnt und endet das Tagescamp und gibt es davor und danach Betreuungsmöglichkeiten?
",Festiviteit:"Schreiben Sie eine enthusiastische Umschreibung des Jahrmarkts.
  • Welche Attraktionen gibt es?
  • Gibt es (Neben)Aktivitäten (Quiz, Konzerte, Foodtrucks, Markt...)?
",Route:"Schreiben Sie eine enthusiastische Umschreibung des Ausflugs.
  • Findet dieser zu Fuß, mit dem Rad, mit dem Boot …statt?
  • Welche möglichen Zwischenstopps gibt es?
  • Wie lang ist die Strecke oder Dauer dieses Ausflugs?
  • Findet der Ausflug in Begleitung, mit einem Guide, einer Broschüre oder mit Wegweisern statt?
","Party of fuif":"Schreiben Sie eine enthusiastische Umschreibung der Party. Welche DJs oder Bands treten auf?","Eet of drankfestijn":"Schreiben Sie eine enthusiastische Umschreibung des Spendenmahls.
  • Was steht auf der Speisekarte?
  • Geht der Erlös an einen guten Zweck?
  • Gibt es (Neben)Aktivitäten?
","Spel of quiz":"Schreiben Sie eine enthusiastische Umschreibung des Quiz oder Spiels.
  • Um welche Themen dreht sich das Quiz?
  • Hat das Spiel ein Thema?
  • Gibt es etwas zu gewinnen?
  • Gibt es eine maximale Anzahl Teilnehmer?
","Sport en beweging":"Schreiben Sie eine enthusiastische Umschreibung der Sportaktivität.
  • Welche Sportart(en) können ausgeübt werden?
  • Welche Geräte werden (nicht) gestellt?
",Monument:"Schreiben Sie eine enthusiastische Umschreibung des Monuments. Geben Sie auch an, ob das Monument nur eingeschränkt zugänglich ist (zB. nur Salons)."},description_error:"Beim Speichern der Beschreibung ist ein Fehler aufgetreten.",organizer:"Organisation",add_organizer:"Organisation hinzufügen",choose_organizer:"Wählen Sie eine Organisation",organizer_not_found:"Organisation nicht gefunden?",add_new_organizer:"Neuen Organisator hinzufügen",organizer_error:"Beim Speichern des Organisators ist ein Fehler aufgetreten.",contact:"Kontakt & Reservierung",add_contact:"Kontaktinformation hinzufügen",website:"Website",phone:"Telefonnummer","e-mail":"E-Mail-Adresse",use_booking:"Für Reservierung verwenden",booking_exposure:"Wie soll dieser Link angezeigt werden?",buy_tickets:"Tickets kaufen",reserve_places:"Plätze reservieren",check_availability:"Verfügbarkeit kontrollieren",subscribe:"Melden Sie sich an",add_more_contact:"Weitere Kontaktangaben hinzufügen",contact_error:"Beim Speichern der Kontaktinformation ist ein Fehler aufgetreten.",facilities:"Ausstattungen",add_facility:"Ausstattung hinzufügen",facility_inapplicable:"Nicht zutreffend",change:"Ändern",image_help:"Fügen Sie eine Abbildung hinzu, damit die Besucher Ihre Aktivität besser erkennen können.",images:"Abbildungen",copyright:"Copyright","delete":"Löschen",main_image:"Hauptabbildung erstellen",add_image:"Abbildung hinzufügen",priceInfo:{price_label:"Preis",add_prices:"Preise hinzufügen",free:"Kostenlos",prices:"Preise",change:"Ändern",currency:"Euro"},reservationPeriod:{add_reservation_period:"Reservierungszeitraum hinzufügen",reservation_period:"Reservierungszeitraum",from:"Von",till:"Bis"}},publish:{publish_now:"Direkt veröffentlichen",publish_later:"Später veröffentlichen",edit_done:"Fertig mit bearbeiten",online_from:"Online ab"},timeTracker:{automatic_saved:"Automatisch gespeichert um",hour:"Stunde"},embargo:{title:"Wählen Sie ein Veröffentlichungsdatum",help:'Ab wann soll dies online angezeigt werden? Achtung, dieses Datum kann nur einmalig eingestellt werden.',error_past:"Das Veröffentlichungsdatum kann nicht in der Vergangenheit liegen.",error_empty:"Wählen Sie ein Veröffentlichungsdatum.",cancel:"Abbrechen",ready:"Fertig mit bearbeiten"},imageUpload:{modalTitle:"Abbildung hinzufügen",defaultError:"Die ausgewählte Datei entspricht nicht den Voraussetzungen.",noFileSelectedError:"Keine Datei ausgewählt",somethingWentWrongError:"Beim Speichern der Abbildung ist ein Fehler aufgetreten.",maxSize:"Die Datei, die Sie hochladen möchten, ist zu groß. Die maximale Größe beträgt ",formatNotValidError:"Die hochgeladene Datei ist keine gültige Abbildung.",extensionsAllowed:"Nur Dateien mit den Dateierweiterungen .jpeg, .gif oder.png sind zugelassen.",sizeError:"Die hochgeladene Datei ist zu groß."}},offerStatus:{scheduled:"Findet statt",cancelled:"Abgesagt",postponed:"Verlegt",open:"Offen",temporarilyClosed:"Zeitweise geschlossen",permanentlyClosed:"Permanent geschlossen"},bookingAvailability:{unavailable:"Voll oder ausverkauft"},calendar:{one_more_days:"Ein oder mehrere Tage",or:"oder",default_days:"Feste Tage pro Woche",start_label:"Start",end_label:"Ende",whole_day_label:"Ganztags",start_hour_label:"Beginn",end_hour_label:"Ende",add_days:"Tag(e) hinzufügen",period:{title:"Start- und Enddatum",from:"Von",till:"Bis",alert:"Geben Sie sowohl Start- als auch Enddatum ein. Das Enddatum kann nicht vor dem Startdatum liegen."},openingHours:{permanent_title:"24/24, 7/7",permanent_subtitle:"Jeden Tag, jede Stunde",add_hours:"Zeiten hinzufügen",opening_hours:"Öffnungszeiten",change:"Ändern",days:"Tage",from:"Von",till:"Bis",more_hours:"Weitere Öffnungszeiten hinzufügen",cancel:"Abbrechen",save:"Speichern"}},facilityLabel:{motor:"Vorrichtungen für Personen mit körperlichen Einschränkungen",visual:"Vorrichtungen für Personen mit Sichteinschränkungen",hearing:"Vorrichtungen für Personen mit Höreinschränkungen",other:"Andere Vorrichtungen",place:"Vorrichtungen an diesem Ort",mental:"Vorrichtungen für Personen mit geistigen Einschränkungen",neurodivers:"Vorrichtungen für neurodiverse Personen"},audience:{entrance:"Zutritt",everyone:"Für alle",members:"Nur für Mitglieder",members_help:"Ihr Item wird nur auf Kanälen für Vereinigungen und deren Mitglieder veröffentlicht.",education:"Nur für Schulen",education_help:"Ihr Item wird nur auf Kultur- und Bildungskanälen wie cultuurkuur.be veröffentlicht. Nach der Veröffentlichung können Sie noch spezielle Informationen für Schulen hinzufügen."},workflowStatus:{label:"Publikationsstatus",id:"ID",DRAFT:"Nicht veröffentlicht",READY_FOR_VALIDATION:"Veröffentlicht",APPROVED:"Online ab",REJECTED:"Veröffentlichung abgelehnt",DELETED:"Nicht veröffentlicht",rules:"Sehen Sie sich die Regeln an",rejected_full:"Die Veröffentlichung dieses Items wurde abgelehnt."},queryFieldGroup:{what:"Was",where:"Wo",when:"Wann","input-information":"Eingabeinformation",translations:"Übersetzungen",other:"Andere"},queryFieldLabel:{cdbid:"Identifikationscode (CDBID)",offertype:"Art (Angebot)",keywords:"label",title:"Titel",category_eventtype_name:"Art (Aktivität)",locationtype:"Art (Ort)",category_theme_name:"Thema",text:"Text",city:"Stadt (Name)",zipcode:"Postleitzahl",location_id:"Ort (id)",country:"Land",location_name:"Ort (Name)",location_labels:"Ort (Labels)",category_flandersregion_name:"Region / Stadt",nisRegions:"Region / Stadt",date:"Datum",permanent:"permanent",lastupdated:"Letzte Änderung",creationdate:"erstellt am",createdby:"erstellt durch",availablefrom:"Datum verfügbar",detail_lang:"Übersetzung",organiser_keywords:"Label Organisation",organiser_id:"Organisation (ID)",agefrom:"Alter",attendance_mode:"Anwesenheits-Modus",price:"Preis",status:"Status",booking_availability:"Tickets & Plätze",organiser_label:"Organisation (Name)",add_facility:"Ausstattung",category_targetaudience_name:"Zielgruppe",startdate:"Startdatum",enddate:"Enddatum",lastupdatedby:"Letzte Änderung durch",category_publicscope_name:"Öffentlichkeitsreichweite"},"EVENT-EXPORT":{"QUERY-IS-MISSING":"Exportieren ist erst möglich, nachdem Sie eine Suchanfrage ausgeführt haben","TOO-MANY-ITEMS":"Manuelles Exportieren mit mehr als {{limit}} Items ist nicht möglich. Kontaktieren Sie vragen@uitdatabank.be für eine individuelle Lösung."},ANGEBOT_EINGEBEN:"Angebot eingeben",ANGEBOT_BEARBEITEN:"Angebot bearbeiten",ANGEBOT_MODERIEREN:"Angebot moderieren",ANGEBOT_ENTFERNEN:"Angebot entfernen",ORGANISATIONEN_VERWALTEN:"Organisationen verwalten",BENUTZER_VERWALTEN:"Benutzer verwalten",LABELS_VERWALTEN:"Labels verwalten",AUSSTATTUNGEN_BEARBEITEN:"Ausstattungen bearbeiten",ORGANISATIONEN_BEARBEITEN:"Organisationen bearbeiten",PRODUKTIONEN_ERSTELLEN:"Produktionen erstellen",FILME_ERSTELLEN:"Filme erstellen","event type missing":'Haben Sie eine Art in Schritt 1 gewählt?',"timestamp missing":'Haben Sie ein Datum in Schritt 2 gewählt?',"start or end date missing":'Haben Sie ein Start- und Enddatum in Schritt 2 gewählt?',"when missing":'Haben Sie eine Auswahl in Schritt 2 getroffen?',"place missing for event":'Haben Sie eine Stelle in Schritt 3 gewählt?',"location missing for place":'Haben Sie einen Ort in Schritt 3 gewählt?',"title is missing":'Haben Sie ein Angebot und einen Titel in Schritt 4 eingegeben?',"age range is missing":'Haben Sie ein Angebot und eine Altersgruppe in Schritt 4 eingegeben?',UNIQUE_ORGANIZER_NOTICE:"Um Organisationen in der UiTdatabank separat zu hinterlegen, bitten wir jede Organisation um einen individuellen & gültigen Hyperlink.",OPENING_HOURS_ERROR:{openAndClose:"Tragen Sie alle Öffnungs- und Schließungszeiten ein.",dayOfWeek:"Wählen Sie mindestens einen Tag in jeder Reihe, die Sie hinzugefügt haben.",openIsBeforeClose:"Bitte geben Sie eine Schließungszeit ein, die später als die Öffnungszeit ist."},TIME_SPAN_REQUIREMENTS:{timedWhenNotAllDay:"Eine Eingabe von Beginn und Ende ist notwendig, wenn eine Veranstaltung nicht den ganzen Tag dauert.",startBeforeEndDay:"Das Enddatum kann nicht vor dem Startdatum liegen.",startBeforeEnd:"Das Ende kann nicht vor dem Beginn liegen.",tooFarInFuture:"Das gewählte Enddatum und Startdatum können nicht mehr als 10 Jahre in der Zukunft liegen."},uitpas:{uitpasInfo:{uitpas:"UiTPAS",uitpas_alert:"Dies ist ein UiTPAS-Organisator. Wählen Sie einen Preis, um eine bestimmte UiTPAS-Information hinzuzufügen.",uitpas_info:"Dies ist eine UiTPAS-Aktivität.",cantChangePrice:"Für diese Veranstaltung wurden bereits UiTPAS-Tickets mit der bestehenden Preisinformation verkauft. Sie können die Preisinformation nicht mehr anpassen.",cantChangeOrganiser:"Für diese Veranstaltung wurden bereits UiTPAS-Tickets verkauft. Sie können die Organisation nicht mehr anpassen.",unavailable:"Für diese Veranstaltung sind bereits UiTPAS-Tickets verkauft worden. Sie können die Organisation nicht mehr ändern."},cardSystems:{card_systems:"Kartensysteme",choose:"--Wählen Sie einen Verteilerschlüssel--",retry:"Erneut registrieren",already_has_ticketsales:"Für diese Veranstaltung sind bereits UiTPAS-Tickets verkauft worden. Sie können die Organisation nicht mehr ändern.",not_found:"Diese Veranstaltung ist dem UiTPAS noch nicht bekannt."}},images:{agreement:"Sie sind dabei, (eine) Abbildung(en) hinzuzufügen und öffentlich zu machen. Dazu müssen Sie alle geltenden Urheber- und Bildnisrechte, sowie alle anderen anwendbaren Gesetze einhalten. Sie können dafür haftbar gemacht werden, entsprechend den",conditions:"allgemeinen Geschäftsbedingungen",conditions_url:"https://www.publiq.be/nl/gebruikersovereenkomst-uitdatabank",copyright_info:"Weitere Informationen zum Copyright",description:"Beschreibung",description_help:"Maximum 250 Zeichen",copyright:"Copyright",copyright_help:"Geben Sie den Namen des rechteinhabenden Fotografen an. Geben Sie ausschließlich den Namen Ihrer eigenen Vereinigung oder Organisation an, wenn Sie selbst die Rechte besitzen (mindestens 2 Zeichen).",cancel:"Abbrechen",agree:"Zustimmen",upload:{select_image:"Foto auswählen",choose_file:"Datei wählen",max_filesize:"Die maximale Größe Ihrer Abbildung beträgt {{maxFileSize}} und hat als Erweiterung .jpeg, .gif oder .png",upload:"Hochladen"},edit:{title:"Abbildungsinfo bearbeiten",description_help:"Eine gute Beschreibung Ihrer Abbildung wird von Suchmaschinen und Nutzern mit einer Sichteinschränkung gelesen. (max. 250 Zeichen)",save_error:"Beim Speichern der Abbildung ist ein Fehler aufgetreten.",update:"Aktualisieren"},remove:{title:"Abbildungen entfernen",sure:"Sind Sie sicher, dass Sie diese Abbildung entfernen möchten?",save_error:"Beim Entfernen der Abbildung ist ein Fehler aufgetreten."}},organizer:{modal:{title:"Neue Organisation hinzufügen",avoid_doubles:"Vermeiden Sie doppelte Arbeit",unique_notice:"Um Organisationen in der UiTdatabank separat zu hinterlegen, bitten wir jede Organisation um einen individuellen & gültigen Hyperlink.",website:"Website",alert_warning:"Diese Adresse ist bereits in Benutzung durch die Organisation '{{organizerName}}'. Geben Sie eine individuelle Website an oder",alert_button:"verwenden Sie {{organizerName}} als Organisation",name_help:"Der offizielle, öffentliche Name der Organisation.",name_required:"Bitte tragen Sie einen Namen ein",name_maxlength:"Der Name der Organisation kann nur 250 Zeichen umfassen.",add_confirm:'Sind Sie sicher, dass Sie "{{newOrganizerName}}" als Organisation hinzufügen möchten? Eine doppelte Eingabe von Organisationen ist nicht gestattet.',doubles:"Wir haben diese vergleichbaren Items gefunden:",select:"Auswählen",your_input:"Ihre Eingabe:",still_enter:"Dennoch eingeben",save_error:"Beim Speichern Ihrer Organisation ist ein Fehler aufgetreten.",address_error:"Bitte tragen Sie eine gültige Adresse ein.",contact_error:"Bitte alle Kontaktinformationen korrekt eintragen.",close:"Schließen",save:"Speichern",label_name:"Name"},address:{label_street:"Straße und Hausnummer",help_street:"Bitte geben Sie eine Straße und Hausnummer ein.",help_zip:"Bitte geben Sie eine Postleitzahl ein.",validate_zip:"Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern.",label_city:"Stadt",label_residence:"Wohnanschrift",help_city:"Beim Abrufen der Städte ist ein Problem aufgetreten.",error_city:"Bitte geben Sie eine Stadt ein.",change:"Ändern",zip:"Postleitzahl","delete":"Leeren",delete_success:"Adresse erfolgreich gelöscht",delete_error:"Beim Löschen Ihrer Adresse ist ein Fehler aufgetreten"},contact:{title:"Kontakt",enter_url:"Geben Sie ein URL ein",enter_email:"Geben Sie eine E-Mail-Adresse ein",enter_phone:'Geben Sie eine Telefonnummer ein, zB. 011 32 43 54',required:"Bitte dieses Feld nicht leer lassen.",valid_url:"Bitte eine gültige URL eingeben.",valid_email:"Bitte eine gültige E-Mail-Adresse eingeben.",valid_phone:"Bitte eine gültige Telefonnummer eingeben.",cancel:"Abbrechen",add:"Hinzufügen",add_phone:"Telefonnummer hinzufügen",add_email:"E-Mail-Adresse hinzufügen",add_url:"Andere Website hinzufügen"},manage:{edit:"Bearbeiten","delete":"Löschen",overview:"Zurück zur Übersicht",dashboard:"Zurück zum Dashboard",name:"Name",description:"Beschreibung",educational_description:"Beschreibung für Cultuurkuur",address:"Adresse",website:"Website",phone:"Telefonnummer",email:"E-Mail-Adresse",labels:"Labels",removed:"Diese Organisation wurde entfernt."}},duplicate:{title:"Kopieren und anpassen",description:"Sie sind dabei, eine Veranstaltung zu kopieren. Wählen Sie einen Zeitpunkt für diese Veranstaltung.",error:"Beim Erstellen der Kopie ist ein Fehler aufgetreten!"},dashboard:{welcome:"Willkommen,",no_items:"Sie haben noch keine Items hinzugefügt.",add_activity:"Eine Aktivität oder einen Ort hinzufügen?",my_activities:"Meine Aktivitäten und Orte",my_organizers:"Meine Organisationen",add:"Hinzufügen",add_organizer:"Organisation hinzufügen",directive:{no_publish:"Nicht veröffentlicht!",online:"Online auf",edit:"Bearbeiten",example:"Beispiel","delete":"Löschen",expired_event:"Abgelaufene Veranstaltung"},"delete":{sure:'Sind Sie sicher, dass Sie "{{name}}" löschen möchten?',error_location:'Der Ort "{{name}}" kann nicht gelöscht werden, da dort Aktivitäten geplant sind.',error:"Beim Löschen der Aktivität ist ein Fehler aufgetreten.", -cancel:"Abbrechen","delete":"Löschen"}},entry:{exported_documents:"Exportierte Dokumente",notifications:"Benachrichtigungen",in_progress:"In Behandlung"},offerTypes:{Concert:"Konzert",Theatervoorstelling:"Theatervorstellung","Lezing of congres":"Lesung oder Kongress",Dansvoorstelling:"Tanzvorführung",Festival:"Festival",Film:"Film","Sportwedstrijd bekijken":"Sportwettkampf ansehen","Cursus met open sessies":"Kurs mit öffentlichen Sitzungen",Lessenreeks:"Vorlesungsreihe","Sport en beweging":"Sport und Bewegung","Kamp of vakantie":"Camp oder Ferienlager","Begeleide uitstap of rondleiding":"Begleiteter Rundgang",Route:"Ausflug","Spel of quiz":"Spiel oder Quiz","Party of fuif":"Party",Festiviteit:"Feiern","Congres of studiedag":"Kongress oder Studientag","Eet- of drankfestijn":"Spendenmahl","Themen- oder Vergnügungspark":"Themen- oder Vergnügungspark",Theater:"Theater","Jeugdhuis of jeugdcentrum":"Jugendzentrum","Cultuur- of ontmoetingscentrum":"Kultur- oder Begegnungszentrum",Discotheek:"Diskothek","Bibliotheek of documentatiecentrum":"Bibliothek oder Dokumentationszentrum",Bioscoop:"Kino",Horeca:"Gastgewerbe","Openbare ruimte":"Öffentliche Einrichtungen",Tentoonstelling:"Ausstellung","Markt, braderie of kermis":"Markt, Straßenfest oder Jahrmarkt","Natuur, park of tuin":"Natur, Park oder Garten",Beurs:"Messe",Monument:"Monument",Opendeurdag:"Tag der offenen Tür","Recreatiedomein of centrum":"Freizeitbereich oder -zentrum","Park of tuin":"Park oder Garten","Archeologische Site":"Archäologische Stätte","School of onderwijscentrum":"Schule oder Bildungszentrum",Sportcentrum:"Sportzentrum",Winkel:"Laden",Speeltuin:"Spielplats","Museum of galerij":"Museum oder Galerie","Zaal of expohal":"Saal oder Expo-Halle"},offerThemes:{"Antiek en brocante":"Antik und Trödel",Architectuur:"Architektur","Audiovisuele kunst":"Audiovisuelle Kunst",Beeldhouwkunst:"Bildhauerei",Fotografie:"Fotografie",Grafiek:"Grafik",Installatiekunst:"Installationskunst",Schilderkunst:"Malerei","Decoratieve kunst":"Dekorative Kunst",Design:"Design",Mode:"Mode","Meerdere kunstvormen":"Mehrere Kunstformen","Ballet en klassieke dans":"Ballett und klassische Tänze","Volksdans en werelddans":"Volkstanz und Welttänze","Stijl en salondansen":"Stil- und Salontanz","Moderne dans":"Moderner Tanz",Erfgoed:"Kulturerbe","Actie- en avonturenfilm":"Action- und Abenteuerfilm","Animatie en kinderfilms":"Animations- und Kinderfilme","Documentaires en reportages":"Dokumentationen und Reportagen","Griezelfilm of horror":"Gruselfilm oder Horror","Historische film":"Historischer Film",Komedie:"Komödie",Kortfilm:"Kurzfilm",Filmmusical:"Filmmusical",Drama:"Drama","Science fiction":"Science-Fiction",Cinefiel:"Filmliebhaber",Thriller:"Thriller","Meerdere filmgenres":"Mehrere Filmgenres",Geschiedenis:"Geschichte","Gezondheid en wellness":"Gesundheit und Wellness","Landbouw en platteland":"Landbau und Landleben","Milieu en natuur":"Umwelt und Natur",Literatuur:"Literatur","Poëzie":"Poesie",Fictie:"Fiction","Non fictie":"Sachbücher",Strips:"Comics","Klassieke muziek":"Klassische Musik","Jazz en blues":"Jazz und Blues","Pop en rock":"Pop und Rock","Hiphop, r&b en rap":"Hip-Hop, R&B und Rap","Dance muziek":"Dance-Music","Folk en wereldmuziek":"Volks- und Weltmusik",Amusementsmuziek:"Pomusik","Politiek en maatschappij":"Politik und Gesellschaft",Creativiteit:"Kreativität","Computer en techniek":"Computer und Technik",Opvoeding:"Erziehung","Persoon en relaties":"Persönliche Entwicklung und Beziehungen","Interculturele vorming":"Interkulturelle Entwicklung","Kunst en kunsteducatie":"Kunst und Kunsterziehung","Gezondheid en zorg":"Gesundheit und Pflege",Samenleving:"Gesellschaft","Bal en racketsport":"Ballsport und Rückschlagspiele","Atletiek, wandelen en fietsen":"Athletik, wandern und Radfahren","Zwemmen en watersport":"Schwimmen und Wassersport","Fitness, gymnastiek, dans en vechtsport":"Fitness, Gymnastik, Tanz und Kampfsport","Outdoor en Adventure sport":"Outdoor- und Abenteuersport","Lucht en motorsport":"Flug- und Motorsport",Volkssporten:"Volkssportarten","Omnisport en andere":"Omnisport und andere","Tekst- en muziektheater":"Text- und Musiktheater","Humor en comedy":"Humor und Comedy",Musical:"Musical","Figuren en poppentheater":"Figur- und Puppentheater","Opera en operette":"Opera und Operette","Mime en bewegingstheater":"Pantomimen- und Bewegungstheater",Wetenschap:"Wissenschaft","Zingeving, filosofie en religie":"Sinngebung, Philosophie und Religion","Thema onbepaald":"Thema unbestimmt",Circus:"Zirkus",Voeding:"Ernährung",Economie:"Wirtschaft",Avontuur:"Abenteuer",Natuur:"Natur",Sport:"Sport",Technologie:"Technologie",Koken:"Kochen",Themakamp:"Themencamp","Taal en communicatie":"Sprache"},offerThemesGroups:{Dans:"Tanz","Kunst en erfgoed":"Kunst und Kulturerbe",Muziek:"Musik",Sport:"Sport",Varia:"Diverses"},weekdays:{monday:{label:"Mo",name:"Montag"},tuesday:{label:"Di",name:"Dienstag"},wednesday:{label:"Mi",name:"Mittwoch"},thursday:{label:"Do",name:"Donnerstag"},friday:{label:"Fr",name:"Freitag"},saturday:{label:"Sa",name:"Samstag"},sunday:{label:"So",name:"Sonntag"}},search:{search:"Suchen",advanced:"Erweitert",label:"Labeln",deselect:"Auswahl aufheben",savedSearches:{savedSearches:"Gespeicherte Suchanfragen",items:{"Von mir eingegeben":"Von mir eingegeben"},mySearches:"Meine Suchanfragen",title:"Titel",viewResults:"Ergebnisse ansehen",yourSearch:"Ihre Suchanfrage",save:"Speichern"},manage:"Verwalten",oneResult:"1 Ergebnis",multipleResults:"{{count}} Ergebnisse",description:"Beschreibung",labels:"Labels",picture:"Abbildung",what:"Was",where:"Wo",when:"Wann",inputInformation:"Eingabeinformation",noEventsFound:"Keine Veranstaltungen gefunden, probieren Sie eine andere Suchanfrage.",exportButton:"Aktivitäten exportieren",modal:"Ihre Auswahl enthält keine Aktivitäten, probieren Sie, eine andere Suchanfrage zu exportieren.",advancedQueryBuilder:{title:"Ersteller erweiterte Suchanfragen",header:{info:"Hier können Sie komplexe Suchanfragen erstellen. Benötigen Sie Hilfe? Lesen Sie",link:"unsere Anleitung"},group:"Gruppe ",include:"Einschließen",exclude:"Ausschließen",addGroup:"Gruppe hinzufügen",cancel:"Abbrechen",search:"Suchen",syntaxError:'Ihre Abfrage enthält einen Fehler. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage',invalidField:'{{field}} ist kein gültiges Suchfeld. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage'}}})}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k){function l(a){var b=_.cloneDeep(a);return b.withCredentials=!1,delete b.headers.Authorization,b}function m(a,b){var c={};switch(a){case"event":c=new g;break;case"place":c=new h;break;case"organizers":c=new i;break;default:console.warn("Unsupported "+a+" in UdbApi.formateOfferClass")}return c.parseJson(b),c}function n(b){return a.resolve(b.data)}function o(b){if(b){var d={type:new URL(_.get(b,"data.type",c.baseUrl+"problem")),title:_.get(b,"data.title","Something went wrong."),detail:_.get(b,"data.detail","We failed to perform the requested action!"),status:b.status};return a.reject(d)}}var p=c.baseApiUrl,q={headers:{"Content-Type":"application/json",Authorization:"Bearer "+e.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}},r=f("offerCache");this.mainLanguage=k.use()||"nl",this.removeItemFromCache=function(a){var b=r.get(a);b&&r.remove(a)},this.createSavedSearch=function(a,d){var e={name:a,query:d};return b.post(c.baseUrl+"saved-searches/v3",e,q).then(n)},this.getSavedSearches=function(){return b.get(c.baseUrl+"saved-searches/v3",q).then(n)},this.deleteSavedSearch=function(a){return b["delete"](c.baseUrl+"saved-searches/v3/"+a,q).then(n)},this.findOffers=function(a,d,e){var f=d||0,g={start:f,disableDefaultFilters:!0,workflowStatus:"READY_FOR_VALIDATION,APPROVED",embed:!0},h=_.cloneDeep(q);return h.params=g,a.length&&(g.q=a),e&&(g.workflowStatus="DRAFT,"+g.workflowStatus),b.get(c.baseUrl+"offers/",l(h)).then(n,o)},this.findEvents=function(a,c){var d=c||0,e={start:d},f=_.cloneDeep(q);return f.params=e,a.length&&(e.query=a),b.get(p+"search",f).then(n,o)},this.findToModerate=function(a,d,e){var f=c.baseUrl+"events/?q="+a,g=moment.utc().format(),h={start:d,limit:e,workflowStatus:"READY_FOR_VALIDATION",audienceType:"everyone",availableFrom:g,availableTo:"*"},i=_.cloneDeep(q);return i.params=h,b.get(f,i).then(n,o)},this.getOffer=function(c){function d(a){var b=a["@id"].split("/").reverse()[1],d=m(b,a);d.parseJson(a),r.put(c,d),e.resolve(d)}var e=a.defer(),f=r.get(c);return f?e.resolve(f):b.get(c.toString()+"?embedUitpasPrices=false",q).success(d).error(e.reject),e.promise},this.reformatJsonLDData=function(a){return a.member=a.member.map(function(a){var b=a["@context"]?a["@context"].split("/").pop():"";return b=b.charAt(0).toUpperCase()+b.slice(1),a["@type"]=a["@type"]?a["@type"]:b,a}),a},this.formatJsonLDEntity=function(a){var b=a["@type"].toLowerCase(),c=m(b,a);return c},this.getOrganizerByLDId=function(a){var b=a.split("/").pop();return this.getOrganizerById(b)},this.getOrganizerById=function(d){var e=a.defer(),f=r.get(d);if(f)e.resolve(f);else{var g=b.get(c.baseUrl+"organizers/"+d,q);g.success(function(a){var b=new i;b.parseJson(a),r.put(d,b),e.resolve(b)})}return e.promise},this.findOrganisations=function(a,d,e,f){var g={limit:d?d:10,start:a?a:0,embed:!0};e&&(g.website=e),f&&(g.name=f);var h=_.set(l(q),"params",g);return b.get(c.baseUrl+"organizers/",h).then(n)},this.addLabelToOrganizer=function(a,d){return b.put(c.baseUrl+"organizers/"+a+"/labels/"+d,{},q).then(n,o)},this.deleteLabelFromOrganizer=function(a,d){return b["delete"](c.baseUrl+"organizers/"+a+"/labels/"+d,q).then(n,o)},this.updateOrganizerWebsite=function(a,d){var e={url:d};return b.put(c.baseUrl+"organizers/"+a+"/url",e,q).then(n,o)},this.updateOrganizerName=function(a,d,e){var f={name:d};return b.put(c.baseUrl+"organizers/"+a+"/name/"+e,f,q).then(n,o)},this.updateOrganizerAddress=function(a,d,e){return b.put(c.baseUrl+"organizers/"+a+"/address/"+e,d,q).then(n,o)},this.removeOrganizerAddress=function(a){return b["delete"](c.baseUrl+"organizers/"+a+"/address",q).then(n,o)},this.updateOrganizerContact=function(a,d){return b.put(c.baseUrl+"organizers/"+a+"/contactPoint",d,q).then(n,o)},this.getOrganizerPermissions=function(a){var d=q;return b.get(c.baseUrl+"organizers/"+a+"/permissions",d).then(n,o)},this.getHistory=function(a,d){var e="place"===d?"places/":"event/";return b.get(c.baseUrl+e+a+"/history",q).then(n)},this.getMe=function(){function f(a){var b={id:a.id,nick:a.nick,uuid:a.uuid,username:a.username,email:a.email};d.putObject("user",b),g.resolve(b)}var g=a.defer(),h=e.getUser();return h?g.resolve(h):e.getToken()?(q.headers.Authorization="Bearer "+e.getToken(),b.get(c.baseUrl+"user",q).success(f).error(g.reject)):g.reject(),g.promise},this.getMyPermissions=function(){function d(a){r.put(g,a),f.resolve(a)}var f=a.defer(),g=e.getToken();if(g){var h=r.get(g);h?f.resolve(h):b.get(c.baseUrl+"user/permissions/",q).success(d).error(function(a,b){-1!==b&&(window.parent.postMessage({source:"UDB",type:"HTTP_ERROR_CODE",code:b||403},"*"),f.reject())})}else window.parent.postMessage({source:"UDB",type:"HTTP_ERROR_CODE",code:401},"*"),f.reject();return f.promise},this.hasPermission=function(a){return b.get(a+"/permission",q).then(function(a){return!!a.data.hasPermission})},this.labelOffers=function(a,d){return b.post(c.baseUrl+"offers/labels",{label:d,offers:a},q)},this.labelQuery=function(a,d){return b.post(c.baseUrl+"query/labels",{label:d,query:a},q)},this.exportEvents=function(a,d,e,f,g,h,i){var j={query:a,selection:_.map(h,function(a){return a.toString()}),order:{},include:f,perDay:g,customizations:i||{}};return d&&(j.email=d),b.post(c.baseUrl+"events/export/"+e,j,q)},this.translateProperty=function(a,c,d,e){var f={};return f[c]=e,"name"===c&&(c="title"),b.post(a+"/"+d+"/"+c,f,q)},this.translateAddress=function(a,d,e){return b.put(c.baseUrl+"places/"+a+"/address/"+d,{addressCountry:e.addressCountry,addressLocality:e.addressLocality,postalCode:e.postalCode,streetAddress:e.streetAddress},q)};var s={typicalAgeRange:"typical-age-range"};this.updateProperty=function(a,c,d){var e={};e[c]=d;var f=s[c]?s[c]:c;return b.post(a+"/"+f,e,q)},this.updateTypicalAgeRange=function(a,c){var d={typicalAgeRange:c};return b.put(a+"/typicalAgeRange",d,q)},this.updatePriceInfo=function(a,c){return b.put(a+"/priceInfo",c,q)},this.updateOfferFacilities=function(a,c){return b.put(a+"/facilities/",{facilities:c},q)},this.labelOffer=function(a,c){return b.post(a+"/labels",{label:c},q)},this.unlabelOffer=function(a,c){return b["delete"](a+"/labels/"+encodeURIComponent(c),q)["catch"](o)},this.deleteOffer=function(a){return b["delete"](a["@id"],q)},this.deleteOrganization=function(a){return b["delete"](a["@id"],q)["catch"](o)},this.createOffer=function(a,d){return b.post(c.baseUrl+a,d,q).then(function(a){return new URL(a.data.url)})},this.findEventsAtPlace=function(d){function e(b){var d=_.map(b.events,function(a){return{"@id":c.baseUrl+"event/"+a["@id"]}});return a.resolve(d)}return b.get(d+"/events",q).then(function(a){return n(a).then(e)})},this.createOrganizer=function(a){return b.post(c.baseUrl+"organizers/",a,q)},this.updateMajorInfo=function(a,c){return b.post(a+"/major-info",c,q)},this.deleteTypicalAgeRange=function(a){return b["delete"](a+"/typical-age-range",q)},this.deleteOfferOrganizer=function(a,c){return b["delete"](a+"/organizer/"+c,q)},this.addImage=function(a,c){var d={mediaObjectId:c};return b.post(a+"/images",d,q)},this.updateImage=function(a,c,d,e){var f={description:d,copyrightHolder:e};return b.post(a+"/images/"+c,f,q)},this.removeImage=function(a,c){return b["delete"](a+"/images/"+c,q)},this.selectMainImage=function(a,c){var d={mediaObjectId:c};return b.post(a+"/images/main",d,q)},this.setAudienceType=function(a,c){return b.put(a.toString()+"/audience",{audienceType:c},q).then(n,o)},this.getDashboardItems=function(a){var d={disableDefaultFilters:!0,workflowStatus:"DRAFT,READY_FOR_VALIDATION,APPROVED,REJECTED","sort[modified]":"desc",limit:50,start:50*(a-1),embed:!0},e=_.get(c,"created_by_query_mode","uuid");return this.getMe().then(function(a){var f=a.uuid,g=a.email;"uuid"===e?d.creator=f:"email"===e?d.creator=g:"mixed"===e&&(d.q="creator:("+f+" OR "+g+")");var h=_.cloneDeep(q);return h.params=d,b.get(c.baseUrl+"offers/",h).then(n)})},this.getDashboardOrganizers=function(a){var d=_.cloneDeep(q);return this.getMe().then(function(e){var f=e.uuid;return d.params={creator:f,"sort[modified]":"desc",limit:50,start:50*(a-1),embed:!0},b.get(c.baseUrl+"organizers/",d).then(n)})},this.uploadMedia=function(a,b,d,e){var f={url:c.baseUrl+"images/",fields:{description:b,copyrightHolder:d,language:e},file:a},g=_.assign(q,f);return j.upload(g)},this.getMedia=function(a){return b.get(c.baseUrl+"media/"+a,q).then(n)},this.createLabel=function(a,d,e,f){var g={name:a,visibility:d?"visible":"invisible",privacy:e?"private":"public"};return f&&(g.parentId=f),b.post(c.baseUrl+"labels/",g,q).then(n,o)},this.updateLabel=function(a,d){return b.patch(c.baseUrl+"labels/"+a,{command:d},q).then(n,o)},this.deleteLabel=function(a){return b["delete"](c.baseUrl+"labels/"+a,q).then(n,o)},this.getLabelById=function(a){return b.get(c.baseUrl+"labels/"+a,q).then(n)},this.findLabels=function(a,d,e,f){var g=_.cloneDeep(q);return g.params={query:a,suggestion:f===!1?void 0:!0,limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"labels/",g).then(n)},this.getRoleById=function(a){return b.get(c.baseUrl+"roles/"+a,q).then(n,o)},this.findRoles=function(a,d,e){var f=_.cloneDeep(q);return f.params={query:a,limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"roles/",f).then(n)},this.createRole=function(a){var d={name:a};return b.post(c.baseUrl+"roles/",d,q).then(n,o)},this.updateRoleName=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=RenameRole";var f={name:d};return b.patch(c.baseUrl+"roles/"+a,f,e).then(n,o)},this.createRoleConstraint=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=addConstraint";var f={query:d};return b.post(c.baseUrl+"roles/"+a+"/constraints/",f,e).then(n,o)},this.updateRoleConstraint=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=updateConstraint";var f={query:d};return b.put(c.baseUrl+"roles/"+a+"/constraints/",f,e).then(n,o)},this.removeRoleConstraint=function(a){var d=_.cloneDeep(q);return d.headers["Content-Type"]="application/ld+json;domain-model=removeConstraint",b["delete"](c.baseUrl+"roles/"+a+"/constraints/",d).then(n,o)},this.getPermissions=function(){var a=q;return b.get(c.baseUrl+"permissions/",a).then(n,o)},this.getRolePermissions=function(a){var d=q;return b.get(c.baseUrl+"roles/"+a+"/permissions/",d).then(n,o)},this.getRoleUsers=function(a){var d=q;return b.get(c.baseUrl+"roles/"+a+"/users/",d).then(n,o)},this.addPermissionToRole=function(a,d){var e=q;return b.put(c.baseUrl+"roles/"+d+"/permissions/"+a,{},e).then(n,o)},this.removePermissionFromRole=function(a,d){var e=q;return b["delete"](c.baseUrl+"roles/"+d+"/permissions/"+a,e).then(n,o)},this.addUserToRole=function(a,d){var e=q;return b.put(c.baseUrl+"roles/"+d+"/users/"+a,{},e).then(n,o)},this.findUsersByEmail=function(a,d,e){var f=_.cloneDeep(q);return f.params={email:a?a:"",limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"users/",f).then(n,o)},this.findUserWithEmail=function(a){var d=_.cloneDeep(q);return b.get(c.baseUrl+"users/emails/"+a,d).then(n,o)},this.removeRole=function(a){return b["delete"](c.baseUrl+"roles/"+a,q).then(n,o)},this.getRoleLabels=function(a){return b.get(c.baseUrl+"roles/"+a+"/labels/",q).then(n,o)},this.addLabelToRole=function(a,d){return b.put(c.baseUrl+"roles/"+a+"/labels/"+d,{},q).then(n,o)},this.removeLabelFromRole=function(a,d){return b["delete"](c.baseUrl+"roles/"+a+"/labels/"+d,q).then(n,o)},this.removeUserFromRole=function(a,d){return b["delete"](c.baseUrl+"roles/"+a+"/users/"+d,q).then(n,o)},this.getUser=function(a){return b.get(c.baseUrl+"users/"+a,q).then(n,o)},this.getUserRoles=function(a){return b.get(c.baseUrl+"users/"+a+"/roles/",q).then(n,o)},this.getMyRoles=function(){return b.get(c.baseUrl+"user/roles/",q).then(n,o)},this.patchOffer=function(a,c,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model="+c;var f={reason:d};return b.patch(a,d?f:{},e).then(n,o)},this.publishOffer=function(a,c){var d=_.cloneDeep(q);d.headers["Content-Type"]="application/ld+json;domain-model=Publish";var e=c instanceof Date?{publicationDate:c}:{};return b.patch(a.toString(),e,d).then(n,o)},this.getCalendarSummary=function(a,d,e){var f=_.cloneDeep(q),g=c.baseUrl+"events/"+a,h=e+"_BE";return f.headers.Accept="text/html",b.get(g+"/calsum?format="+d+"&langCode="+h,f).then(n)},this.duplicateEvent=function(a,c){return b.post(a+"/copies/",c,q).then(n,o)}}angular.module("udb.core").service("udbApi",a),a.$inject=["$q","$http","appConfig","$cookies","uitidAuth","$cacheFactory","UdbEvent","UdbPlace","UdbOrganizer","Upload","$translate"]}(),function(){"use strict";function a(a,b,c){function d(a,b){var c,d=_.find(a.terms,function(a){return a.domain===b});return d&&(c=d.label),d}function e(a){var b=h.UNKNOWN;if(a.bookingInfo&&a.bookingInfo.length>0){var c=parseFloat(a.bookingInfo[0].price);b=c>0?h.PAYED:h.FREE}return b}function f(b){var c={en:!1,fr:!1,de:!1},d=["name","description"];_.forEach(c,function(e,f){var g,h=0;_.forEach(d,function(a){b[a]&&b[a][f]&&++h}),g=h?h===d.length?a.ALL:a.SOME:a.NONE,c[f]=g}),b.translationState=c}function g(a){var b=[];if(a.mediaObject)for(var c=0;c0&&(this.price=parseFloat(a.bookingInfo[0].price)),this.pricing=e(a),this.priceInfo=a.priceInfo||[],this.publisher=a.publisher||"",this.created=new Date(a.created),this.modified=new Date(a.modified),this.creator=a.creator||"",this.type=d(a,"eventtype")||"",this.theme=d(a,"theme")||"",this.onlineUrl=a.onlineUrl,this.attendanceMode=a.attendanceMode,this.status=a.status,this.bookingAvailability=a.bookingAvailability,this.calendarType=a.calendarType||"",this.startDate=a.startDate,this.endDate=a.endDate,this.subEvent=a.subEvent||[],this.openingHours=a.openingHours||[],this.mediaObject=a.mediaObject||[],this.typicalAgeRange=a.typicalAgeRange||"",this.bookingInfo=a.bookingInfo||{},this.bookingInfo.urlLabel&&(this.bookingInfo.urlLabel=_.get(a.bookingInfo.urlLabel,a.mainLanguage,a.bookingInfo.urlLabel)),this.contactPoint=a.contactPoint||{url:[],phone:[],email:[]},this.url="event/"+this.id,this.sameAs=a.sameAs,this.additionalData=a.additionalData||{},a.typicalAgeRange&&(this.typicalAgeRange=a.typicalAgeRange),a.available&&(this.available=a.available),a.workflowStatus&&(this.workflowStatus=a.workflowStatus),this.availableFrom=a.availableFrom,this.uitpasData={},this.audience={audienceType:_.get(a,"audience.audienceType","everyone")},this.educationFields=[],this.educationLevels=[],this.educationTargetAudience=[],a.terms&&(this.educationFields=_.filter(a.terms,"domain","educationfield"),this.educationLevels=_.filter(a.terms,"domain","educationlevel"),this.educationTargetAudience=_.filter(a.terms,function(a){var b="2.1.14.0.0",c="2.1.13.0.0";return"targetaudience"===a.domain&&(a.id===b||a.id===c)})),this.facilities=_.filter(_.get(a,"terms",[]),{domain:"facility"}),this.mainLanguage=a.mainLanguage||"nl",this.languages=a.languages||[]},setName:function(a,b){this.name[b]=a},getName:function(a){return this.name[a]},setEventType:function(a,b){this.type={id:a,label:b,domain:"eventtype"}},getEventType:function(){return this.type},getEventTypeLabel:function(){return this.type.label?this.type.label:""},setTheme:function(a,b){this.theme={id:a,label:b,domain:"thema"}},getTheme:function(){return this.theme},getThemeLabel:function(){return this.theme.label?this.theme.label:""},resetOpeningHours:function(){this.openingHours=[]},getOpeningHours:function(){return this.openingHours},setLocation:function(a){this.location=a},getLocation:function(){return this.location},label:function(a){var b=[],c=this.labels;_.isArray(a)&&(b=a),_.isString(a)&&(b=[a]),b=_.filter(b,function(a){var b=_.find(c,function(b){return b.toUpperCase()===a.toUpperCase()});return!b}),this.labels=_.union(this.labels,b)},unlabel:function(a){_.remove(this.labels,function(b){return b===a})},updateTranslationState:function(a){a=a||this,f(a)},isExpired:function(){return"permanent"!==this.calendarType&&new Date(this.endDate)a?!0:!1}return!1}},i}angular.module("udb.core").factory("UdbEvent",a),a.$inject=["EventTranslationState","UdbPlace","UdbOrganizer"]}(),function(){"use strict";function a(a){var b={restrict:"A",link:function(b,c,d){if(b.organizer.title)b.fetching=!1;else{b.fetching=!0;var e=a.getOrganizerByLDId(b.organizer.id);e.then(function(a){b.organizer=a,b.fetching=!1})}}};return b}angular.module("udb.core").directive("udbOrganizer",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){return d(a.labels)||d(a.hiddenLabels)}function d(b){return e(b)&&!_.isEmpty(_.intersection(e(b),_.values(e(a))))}function e(a){var b=[];return _.each(a,function(a,c){b[c]=a.toLowerCase()}),b}function f(a,b){return _.chain(a).get(b,[]).first().value()}function g(a){var c={en:!1,fr:!1,de:!1},d=["name"];_.forEach(c,function(e,f){var g,h=0;_.forEach(d,function(b){a[b]&&a[b][f]&&++h}),g=h?h===d.length?b.ALL:b.SOME:b.NONE,c[f]=g}),a.translationState=c}var h=function(a){this.id="",this.name="",a&&this.parseJson(a)};return h.prototype={parseJson:function(a){this["@id"]=a["@id"],this.id=a["@id"].split("/").pop(),this.name=_.get(a.name,a.mainLanguage,null)||_.get(a.name,"nl",null)||_.get(a,"name",""),this.description=_.get(a.description,a.mainLanguage,null)||_.get(a.description,"nl",null)||_.get(a,"description",""),this.educationalDescription=_.get(a.educationalDescription,a.mainLanguage,null)||_.get(a.educationalDescription,"nl",null)||_.get(a,"educationalDescription",""),this.address=_.get(a.address,a.mainLanguage,null)||_.get(a.address,"nl",null)||a.address||[],this.email=f(a,"contactPoint.email"),this.phone=f(a,"contactPoint.phone"),this.website=a.url,this.contactPoint=a.contactPoint,this.mediaObject=a.images||[],this.image=a.mainImage,this.labels=_.union(a.labels,a.hiddenLabels),this.hiddenLabels=a.hiddenLabels||[],this.isUitpas=c(a),this.created=new Date(a.created),this.deleted=Boolean("DELETED"===a.workflowStatus),this.detailUrl="/organizer/"+this.id},updateTranslationState:function(a){a=a||this,g(a)},regex:{url:new RegExp(/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i)}},h}angular.module("udb.core").factory("UdbOrganizer",a),a.$inject=["UitpasLabels","EventTranslationState"]}(),function(){"use strict";function a(a,b,c,d){this.suggestOrganizers=function(c){function e(a){var b=_.map(a.member,function(a){return new d(a)});f.resolve(b)}var f=a.defer();return b.findOrganisations(0,10,null,c).then(e),f.promise},this.findOrganizersWebsite=function(a){return b.findOrganisations(0,10,a,null)},this.findOrganizersCardsystem=function(a){return c.findOrganisationsCardSystems(a)}}angular.module("udb.core").service("udbOrganizers",a),a.$inject=["$q","udbApi","udbUitpasApi","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c){function d(a,b){var c=_.find(a.terms,function(a){return a.domain===b});return c?c:void 0}function e(a,b){var c=[];if(a.terms)for(var d=0;da?!0:!1}return!1}},h}angular.module("udb.core").factory("UdbPlace",a),a.$inject=["EventTranslationState","placeCategories","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c){this.getUdb3ContentForCurrentUser=function(){return b.get(c.baseApiUrl+"udb3_content_current_user")}}angular.module("udb.core").service("udb3Content",a),a.$inject=["$q","$http","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){function f(){d.remove("token"),d.remove("user")}function g(){var a=b.protocol()+"://"+b.host(),c=b.port();return 80===c?a:a+":"+c}this.logout=function(){var b=g(),d=c.authUrl+"logout";f(),d+="?destination="+encodeURIComponent(b), -a.location.href=d},this.login=function(d){var e=b.absUrl(),g=c.authUrl+"connect";f(),g+="?destination="+encodeURIComponent(e)+"&lang="+d,a.location.href=g},this.register=function(d){var e=b.absUrl(),g=c.authUrl+"register";f(),g+="?destination="+encodeURIComponent(e)+"&lang="+d,a.location.href=g},this.setToken=function(a){d.put("token",a),d.remove("user")},this.getToken=function(){var a=this,c=d.get("token"),e=b.search(),f=e.jwt;return f&&f!==c&&(c=f,a.setToken(f),window===window.parent&&b.search("jwt",null)),c},this.getUser=function(){return d.getObject("user")}}angular.module("udb.core").service("uitidAuth",a),a.$inject=["$window","$location","appConfig","$cookies","jwtHelper"]}(),function(){"use strict";function a(a,b,c){function d(a){return"?utm_source=uitdatabank.be&utm_medium=referral&utm_campaign=udb3&utm_content="+a+"&uid="+f.user.id}function e(a){var b=f.event.labels.concat(f.event.hiddenLabels),d=b.filter(function(b){return c[a].indexOf(b)>-1}).map(function(a){return a.replace("cultuurkuur_","")});return d}var f=this;if(f.cultuurkuurMaintenance=_.get(a,"cultuurkuur.maintenance"),f.cultuurkuurMaintenance)f.cultuurkuurMessage=_.get(a,"cultuurkuur.cultuurkuurMessage");else{var g=_.get(a,"cultuurkuur.cultuurkuurUrl");f.user=b.getUser(),f.previewLink=g+"agenda/e/x/"+f.event.id+d("preview1.0"),f.editLink=g+"event/"+f.event.id+"/edit"+d("edit1.0"),f.continueLink=g+"event/"+f.event.id+"/edit"+d("continue1.0"),f.educationFieldsViaLabels=e("educationFields"),f.educationLevelsViaLabels=e("educationLevels"),f.targetAudienceViaLabels=e("targetAudience"),f.cultuurKuurInfo={levels:f.educationLevelsViaLabels.length>0?f.educationLevelsViaLabels:_.pluck(f.event.educationLevels,"label"),fields:f.educationFieldsViaLabels.length>0?f.educationFieldsViaLabels:_.pluck(f.event.educationFields,"label"),targetAudience:f.targetAudienceViaLabels.length>0?f.targetAudienceViaLabels:_.pluck(f.event.educationTargetAudience,"label")},f.isIncomplete=0===f.cultuurKuurInfo.levels.length&&0===f.cultuurKuurInfo.fields.length,f.forSchools="education"===f.event.audience.audienceType}}angular.module("udb.cultuurkuur").component("udbEventCultuurkuurComponent",{bindings:{event:"<",permission:"<"},templateUrl:"templates/event-cultuurkuur.html",controller:a}),a.$inject=["appConfig","uitidAuth","cultuurkuurLabels"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"offerCtrl",templateUrl:"templates/dashboard-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardEventItem",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OrganizerController",controllerAs:"organizerCtrl",templateUrl:"templates/dashboard-organizer-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardOrganizerItem",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"offerCtrl",templateUrl:"templates/dashboard-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardPlaceItem",a)}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){a.saving=!1,a.error=!0}a.error=!1,a.saving=!0,c.deleteOffer(d).then(b.close)["catch"](e)}function f(){b.dismiss()}a.item=d,a.saving=!1,a.error=!1,a.cancelRemoval=f,a.deleteEvent=e}angular.module("udb.dashboard").controller("EventDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","eventCrud","item"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){b.$watch(function(){return o.labels},function(a){b.event.labels=angular.copy(a)})}function k(a,b,c){var d=p.activeLanguage,f=c||a;b&&b!==o[a][d]&&e.translateProperty(o,f,d,b).then(o.updateTranslationState(o))}function l(){p.labelResponse="",p.labelsError=""}function m(a){b.event.labels=angular.copy(o.labels),p.labelResponse="unlabelError",p.labelsError=a.title}function n(a){l(),f.unlabel(o,a.name)["catch"](m)}var o,p=this,q=i.use()||"nl";p.translation=!1,p.activeLanguage=q,p.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],p.labelRemoved=n,p.init=function(){return b.event.name?(b.event=c(b.event,q,!0),b.event.id=b.event["@id"].split("/").pop(),b.offerType="organizer",p.fetching=!1,void 0):(p.fetching=!0,a.getOffer(b.event["@id"]).then(function(a){return o=a,o.updateTranslationState(),b.event=c(o,q,!0),b.offerType="organizer",p.fetching=!1,j(),o}))},h.when(p.init())["finally"](function(){p.editable=!0}),p.hasActiveTranslation=function(){var a=o;return a&&a.translationState[p.activeLanguage]!==d.NONE},p.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return o&&a&&(b=o.translationState[a].icon),b},p.translate=function(){p.applyPropertyChanges("name")},p.toggleLanguage=function(a){a===p.activeLanguage?p.stopTranslating():(p.activeLanguage=a,p.translation=c(o,p.activeLanguage))},p.hasPropertyChanged=function(a){var b=p.activeLanguage,c=p.translation;return p.translation&&o[a][b]!==c[a]},p.undoPropertyChanges=function(a){var b=p.activeLanguage,c=p.translation;c&&(c[a]=o[a][b])},p.applyPropertyChanges=function(a){var b=p.translation[a];k(a,b,a)},p.stopTranslating=function(){p.translation=void 0,p.activeLanguage=q},p.labelAdded=function(a){var c=_.find(o.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(o.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):f.label(o,a.name).then(function(a){a.success?(p.labelResponse="success",p.addedLabel=a.name):(p.labelResponse="error",p.labelsError=a),b.event.labels=angular.copy(o.labels)})}}angular.module("udb.dashboard").controller("OrganizerController",a),a.$inject=["udbApi","$scope","jsonLDLangFilter","EventTranslationState","offerTranslator","offerLabeller","$window","$q","$translate"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(){function e(){a.saving=!1,a.error=!0}a.saving=!0,a.error=!1,c.deleteOffer(d).then(b.close)["catch"](e)}function h(){b.dismiss()}a.place=d,a.saving=!1,a.events=e?e:[],a.hasEvents=a.events.length>0,a.baseUrl=f.udb3BaseUrl,a.cancelRemoval=h,a.deletePlace=g}angular.module("udb.dashboard").controller("PlaceDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","eventCrud","place","events","appConfig"]}(),function(){!function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){function k(a){u.username=a.username}function l(a){return a.member&&(a.member=a.member.map(function(a){var b=a["@context"]?a["@context"].split("/").pop():"";return b=b.charAt(0).toUpperCase()+b.slice(1),a["@type"]=a["@type"]?a["@type"]:b,a})),a}function m(b){b=l(b),e.addPagedCollection(b),u.pagedItemViewer.setResults(b),a.scrollTop(0)}function n(){c.getDashboardItems(u.pagedItemViewer.currentPage).then(m)}function o(b){b=l(b),e.addPagedCollection(b),u.pagedItemViewerOrganizers.setResults(b),a.scrollTop(0)}function p(){c.getDashboardOrganizers(u.pagedItemViewer.currentPage).then(o)}function q(a){var c=b.open({templateUrl:"templates/event-delete-confirm-modal.html",controller:"EventDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});c.result.then(function(){a.showDeleted=!0})}function r(a){function c(a,c){var d=b.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return c}}});d.result.then(function(){a.showDeleted=!0})}function e(b){c(a,b)}d.findEventsAtPlace(a.apiUrl).then(e)}function s(a){var b=-1===a["@id"].indexOf("place")?"event":"place";a.name=a.name.replace(/'/g,""),"event"===b?q(a):r(a)}function t(){var a=b.open({templateUrl:"templates/event-form-organizer-modal.html",controller:"EventFormOrganizerModalController",resolve:{organizerName:function(){return""}}});a.result.then(function(a){i.go("management.organizers.detail",{id:a.id})})}var u=this,v=j.use();if(u.pagedItemViewer=new f(50,1),u.pagedItemViewerOrganizers=new f(50,1),u.openDeleteConfirmModal=s,u.updateItemViewer=n,u.openCreateOrganizerModal=t,u.updateOrganizerViewer=p,u.toggleInfoMessage=g.toggleInfoMessage,u.username="",u.hideOnlineDate=!1,g.infoMessage&&g.infoMessage[v]&&(u.infoMessage=g.infoMessage[v]),"undefined"!=typeof g.addOffer?("undefined"!=typeof g.addOffer.toggle?(u.toggleAddOffer=g.addOffer.toggle,g.addOffer.toggle&&("undefined"!=typeof g.addOffer.expirationDate||""!==g.addOffer.expirationDate)&&(h().isAfter(h(g.addOffer.expirationDate))?u.toggleAddOffer=!1:u.toggleAddOffer=!0)):u.toggleAddOffer=!0,"undefined"!=typeof g.addOffer.expirationMessage||""!==g.addOffer.expirationMessage?u.addOfferExpirationMessage=g.addOffer.expirationMessage:u.addOfferExpirationMessage=""):u.toggleAddOffer=!0,"undefined"!=typeof g.offerEditor.defaultPublicationDate){var w=g.offerEditor.defaultPublicationDate;""!==w&&(u.hideOnlineDate=!0)}if("undefined"!=typeof g.publicationRulesLink){var x=g.publicationRulesLink;""!==x&&(u.publicationRulesLink=x)}if("undefined"!=typeof g.enableMyOrganizers){var y=g.enableMyOrganizers;""!==y&&(u.enableMyOrganizers=y)}c.getMe().then(k),n(),p()}angular.module("udb.dashboard").controller("DashboardController",a),a.$inject=["$document","$uibModal","udbApi","eventCrud","offerLocator","SearchResultViewer","appConfig","moment","$state","$translate"]}()}(),function(){"use strict";function a(){return{templateUrl:"templates/dashboard.html",controller:"DashboardController",controllerAs:"dash",restrict:"EA"}}angular.module("udb.dashboard").directive("udbDashboard",a)}(),function(){"use strict";function a(a,b,c,d,e){function f(a){c.$emit("duplicateTimingChanged",a)}var g=this,h=a.clone();d("BaseCalendarController",{calendar:g,$scope:e}),g.init(h,_.cloneDeep(b)),g.timeSpans.forEach(function(a){a.status={type:"Available"}}),g.timeSpans.forEach(function(a){a.bookingAvailability={type:"Available"}}),g.formData.timingChanged$.subscribe(f)}angular.module("udb.duplication").controller("DuplicationCalendarController",a),a.$inject=["EventFormData","OpeningHoursCollection","$rootScope","$controller","$scope"]}(),function(){"use strict";function a(){return{restrict:"AE",controller:"DuplicationCalendarController",controllerAs:"calendar",templateUrl:"templates/form-event-calendar.component.html"}}angular.module("udb.duplication").directive("udbEventDuplicationCalendar",a)}(),function(){"use strict";function a(a){return a[1]}function b(b,c,d,e){function f(a){d.go("split.eventEdit",{id:a})}function g(){i.asyncError=!0,i.duplicating=!1}function h(){i.asyncError=!1,i.duplicating=!0}var i=this,j=b.$eventToObservable("duplicateTimingChanged").map(a),k=e.createObservableFunction(i,"createDuplicate"),l=j.startWith(!1);l.subscribe(function(a){i.readyForDuplication=!!a}),k.withLatestFrom(l,function(a,b){b&&(h(),c.duplicate(b).then(f,g))}).subscribe()}angular.module("udb.duplication").component("udbEventDuplicationFooter",{templateUrl:"templates/event-duplication-footer.component.html",controller:b,controllerAs:"duplication"}),b.$inject=["$rootScope","eventDuplicator","$state","rx"]}(),function(){"use strict";function a(a){var b=this;b.eventId=a.id,b.readyToDuplicate=function(){return!1}}angular.module("udb.duplication").component("udbEventDuplicationStep",{templateUrl:"templates/event-duplication-step.component.html",controller:a,controllerAs:"duplication"}),a.$inject=["EventFormData"]}(),function(){"use strict";function a(a,b){function c(a){return b.add(a.eventId,a.url),a.eventId}var d=["calendar"];this.duplicate=function(b){var e=_.pick(b,d);return b.openingHours&&(e.calendar.openingHours=b.openingHours),a.duplicateEvent(b.apiUrl,e.calendar).then(c)}}angular.module("udb.duplication").service("eventDuplicator",a),a.$inject=["udbApi","offerLocator"]}(),function(){"use strict";angular.module("udb.entry").constant("JobLogoStates",{WARNING:"warning",COMPLETE:"complete",BUSY:"busy",IDLE:"idle"})}(),function(){"use strict";function a(a,b,c){var d=this;d.updateCurrentState=function(){var c=[{state:a.WARNING,check:!_.isEmpty(b.getFailedJobs())},{state:a.COMPLETE,check:!_.isEmpty(b.getFinishedExportJobs())},{state:a.BUSY,check:b.hasActiveJobs()},{state:a.IDLE,check:!0}],e=_.find(c,function(a){return a.check}).state;d.state=e},d.getState=function(){return d.state},d.updateCurrentState(),c.$on("jobListsUpdated",d.updateCurrentState)}angular.module("udb.entry").controller("JobLogoController",a),a.$inject=["JobLogoStates","jobLogger","$rootScope"]}(),function(){"use strict";function a(){function a(a,b,c){}var b={templateUrl:"templates/job-logo.directive.html",restrict:"EA",link:a,controllerAs:"jl",controller:"JobLogoController"};return b}angular.module("udb.entry").directive("udbJobLogo",a)}(),function(){"use strict";function a(a,b,c,d,e){function f(a){var b=_.pick(a,function(a,b){var c="$"===b.charAt(b.length-1);return(_.isDate(a)||!_.isEmpty(a))&&!c});return b.location&&b.location.id&&(b.location=b.location.id),b.calendar.status=b.status,b.openingHours&&(b.calendar.openingHours=b.openingHours),b}function g(b,c,d){return a.updateProperty(b.apiUrl,c,b[c]).then(i(b))}function h(a,b){j.updateMajorInfo(b)}function i(b){function c(c){a.removeItemFromCache(b.apiUrl.toString())}return c}var j=this;j.createOffer=function(b){var d=b.isEvent?"event":"place",g=function(d){return b.apiUrl=d,b.id=d.toString().split("/").pop(),e.add(b.id,b.apiUrl),c.$emit("eventFormSaved",b),a.getOffer(d).then(function(a){c.$emit("offerCreated",a)}),b},h=f(b);return a.createOffer(d,h).then(g)},j.findEventsAtPlace=function(b){return a.findEventsAtPlace(b)},j.deleteOffer=function(b){function c(){b.showDeleted=!0}return a.deleteOffer(b).then(c)},j.updateMajorInfo=function(b){var c=f(b);a.updateMajorInfo(b.apiUrl,c).then(i(b))},j.createOrganizer=function(b){return a.createOrganizer(b)},j.updateDescription=function(b){return a.translateProperty(b.apiUrl,"description",b.mainLanguage,b.description[b.mainLanguage]).then(i(b))},j.translateAddress=function(a){return g(a,"typicalAgeRange","updateTypicalAgeRange")},j.updateTypicalAgeRange=function(b){var c=b.isEvent?"events":"places",d=b.apiUrl.origin+"/"+c+"/"+b.id;return a.updateTypicalAgeRange(d,b.typicalAgeRange).then(i(b))},j.deleteTypicalAgeRange=function(b){return a.deleteTypicalAgeRange(b.apiUrl).then(i(b))},j.updateOrganizer=function(b){return a.updateProperty(b.apiUrl,"organizer",b.organizer.id).then(i(b))},j.deleteOfferOrganizer=function(b){return a.deleteOfferOrganizer(b.apiUrl,b.organizer.id).then(i(b))},j.updateEventUitpasData=function(a){return b.updateEventUitpasData(a.usedDistributionKeys,a.id).then(i(a))},j.getEventUitpasData=function(a){return b.getEventUitpasData(a)},j.updatePriceInfo=function(b){return a.updatePriceInfo(b.apiUrl,b.priceInfo).then(i(b))},j.updateContactPoint=function(a){return g(a,"contactPoint","updateContactInfo")},j.updateBookingInfo=function(b){var c=["url","urlLabel","email","phone","availabilityStarts","availabilityEnds"],d=_.pick(b.bookingInfo,function(a,b){return _.includes(c,b)&&(_.isDate(a)||!_.isEmpty(a))});return _.has(d,"url")||(d=_.omit(d,"urlLabel")),0===_.intersection(_.keysIn(d),["url","phone","email"]).length&&(d={}),a.updateProperty(b.apiUrl,"bookingInfo",d).then(i(b))},j.updateFacilities=function(b,c){return a.updateOfferFacilities(b.apiUrl,_.map(c,"id")).then(i(b))},j.addImage=function(b,c){var d=c.id||c["@id"].split("/").pop();return a.addImage(b.apiUrl,d).then(i(b))},j.updateImage=function(b,c,d,e){var f=c["@id"].split("/").pop();return a.updateImage(b.apiUrl,f,d,e).then(i(b))},j.removeImage=function(b,c){var d=c["@id"].split("/").pop();return a.removeImage(b.apiUrl,d).then(i(b))},j.selectMainImage=function(b,c){var d=c["@id"].split("/").pop();return a.selectMainImage(b.apiUrl,d).then(i(b))},j.setAudienceType=function(b,c){return a.setAudienceType(b.apiUrl,c).then(i(b))},j.publishOffer=function(b,c){return a.publishOffer(b.apiUrl,c).then(i(b))},c.$on("eventTypeChanged",h),c.$on("eventThemeChanged",h),c.$on("eventTimingChanged",h),c.$on("eventTitleChanged",h)}angular.module("udb.entry").service("eventCrud",a),a.$inject=["udbApi","udbUitpasApi","$rootScope","$q","offerLocator"]}(),function(){"use strict";function a(a,c){var d=function(d,e,f){a.call(this,d),this.type="label_batch",this.events=e,this.addEventsAsTask(e),this.label=f,this.messages={},this.messages[c.CREATED]=b(this,c.CREATED,c),this.messages[c.STARTED]=b(this,c.STARTED,c),this.messages[c.FINISHED]=b(this,c.FINISHED,c),this.messages[c.FAILED]=b(this,c.FAILED,c)};return d.prototype=Object.create(a.prototype),d.prototype.constructor=d,d.prototype.addEventsAsTask=function(a){var b=this;_.forEach(a,function(a){b.addTask({id:a})})},d.prototype.getDescription=function(){return b(this,this.state,c)},d}function b(a,b,c){var d;return d=b===c.FAILED?"Labelen van items mislukt":"Label "+a.events.length+' items met "'+a.label+'"'}angular.module("udb.entry").factory("OfferLabelBatchJob",a),a.$inject=["BaseJob","JobStates"]}(),function(){"use strict";function a(a){function b(){f.alert=!1;var b=f.labelSelection.filter(function(a){return a.selected}).map(function(a){return a.name}),c=e(f.labelNames);if(!f.alert){var d=_.union(b,c);a.close(d)}}function c(){a.dismiss("cancel")}function d(a){return a>=f.minimumInputLength&&a<=f.maxInputLength}function e(a){var b=a.split(";");b=_.each(b,function(a,c){b[c]=a.trim()}),b=_.without(b,"");var c;for(c=0;c
',restrict:"E",link:function(a,b,c){a.jobTemplateUrl="templates/"+a.job.getTemplateName()+".template.html",a.taskCount=0,a.completedTaskCount=0}};return a}angular.module("udb.entry").directive("udbJob",a)}(),function(){"use strict";function a(a,b){var c=io.connect(b.socketUrl),d=a({ioSocket:c});return d}angular.module("udb.entry").factory("udbSocket",a),a.$inject=["socketFactory","appConfig"]}(),function(){"use strict";function a(a,b){return{restrict:"C",link:function(c,d,e){c.working=!1,a.setInterval(function(){c.working=b.hasActiveJobs(),d.toggleClass("working",c.working)},2e3)}}}angular.module("udb.entry").directive("udbWorkIndicator",a),a.$inject=["$window","jobLogger"]}(),function(){"use strict";function a(a){this.translateProperty=function(b,c,d,e){return"title"===c&&(c="name"),a.translateProperty(b.apiUrl,c,d,e).then(function(){b[c][d]=e})},this.translateAddress=function(b,c,d){return a.translateAddress(b.id,c,d).then(function(){b.address[c]=d})}}angular.module("udb.entry").service("offerTranslator",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/event-detail.html",restrict:"EA",controller:EventDetail}}angular.module("udb.event-detail").directive("udbEventDetail",a)}(),function(){"use strict";function a(a){a.isEmpty=_.isEmpty,a.hasAtLeastOneContactPoint=function(){return a.bookingInfo.phone||a.bookingInfo.url||a.bookingInfo.email}}angular.module("udb.event-detail").directive("udbBookingInfoDetail",function(){return{templateUrl:"templates/booking-info-detail.directive.html",controller:a,restrict:"A",scope:{bookingInfo:"0});c.length&&p(b).then(function(b){angular.forEach(b.member,function(b){b["@id"]===a.eventId&&(a.moderationPermission=!0)})})})}function v(){a.eventIdIsInvalid=!0}function w(a){var b=f.open({templateUrl:"templates/event-delete-confirm-modal.html",controller:"EventDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});b.result.then(E.goToDashboard)}function x(b){var c=_.find(H.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?h.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):i.label(H,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.event.labels=angular.copy(H.labels)})}function y(){a.labelResponse="",a.labelsError=""}function z(b){a.event.labels=angular.copy(H.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function A(a){y(),i.unlabel(H,a.name)["catch"](z)}function B(){var b=_.filter(a.event.contactPoint,function(a){return a.length>0});a.hasContactPointResults=b.length>0}function C(){var b=a.event.bookingInfo;a.hasBookingInfoResults=!(""===b.phone&&""===b.email&&""===b.url)}var D="data",E=this,F="udb-filminvoer";a.cultuurkuurEnabled=_.get(k,"cultuurkuur.enabled"),a.isOmdApp=!!_.get(k,"omdSpecific",!1),g.when(b,function(b){a.eventId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(u,v),g.all([e,d]).then(o)}),a.eventIdIsInvalid=!1,a.labelAdded=x,a.labelRemoved=A,a.eventHistory=void 0,a.calendarSummary=void 0,a.deleteEvent=function(){w(a.event)},a.isEmpty=_.isEmpty;var G=j.use()||"nl";a.language=G;var H;a.eventLocation=function(b){var c=d(b.location,G,!0),e=[c.name];return b.location.type&&e.push(a.translateType(b.location.type.label)),b.location.address.streetAddress&&e.push(b.location.address.streetAddress),b.location.address.addressLocality&&e.push(b.location.address.addressLocality),e.join(", ")},a.eventIds=function(a){return _.union([a.id],a.sameAs)},a.isUrl=function(a){return/^(https?)/.test(a)},a.isTabActive=function(a){return a===D},a.makeTabActive=function(b){if(D=b,"history"===b&&!a.eventHistory){var d=a.eventId.toString().split("/").pop();c.getHistory(d).then(r)}},a.openEditPage=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventEdit",{id:c})},a.openEditPageMovies=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventEditMovie",{id:c})},a.duplicateMovie=function(){var b=a.eventId.toString(),d=_.pick(a.event,["calendarType","subEvent"]);d.subEvent.length>0&&d.subEvent.forEach(function(a){a.status={type:"Available"},a.bookingAvailability={type:"Available"}}),c.duplicateEvent(b,d).then(function(a){var b=a.eventId,d=a.url;c.labelOffer(d,F).then(function(){e.go("split.eventEditMovie",{id:b})})["catch"](function(a){throw a})})["catch"](function(a){console.log("error",a)})},a.openTranslatePage=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventTranslate",{id:c})},E.goToDashboard=function(){e.go("split.footer.dashboard")},a.translateAudience=function(a){return j.instant("audience."+a)},a.translateType=function(a){var b=j.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b},a.finishedLoading=function(){return a.event&&a.permissions}}angular.module("udb.event-detail").controller("EventDetailController",a),a.$inject=["$scope","eventId","udbApi","jsonLDLangFilter","$state","$uibModal","$q","$window","offerLabeller","$translate","appConfig","ModerationService","RolePermission","authorizationService"]}(),function(){"use strict";angular.module("udb.event-form").constant("calendarLabels",[{label:"Eén of meerdere dagen",id:"single",eventOnly:!0},{label:"Van ... tot ... ",id:"periodic",eventOnly:!0},{label:"Permanent",id:"permanent",eventOnly:!1}])}(),function(){"use strict";function a(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a){var b=parseInt(a);if(isNaN(b))return d.$setViewValue(void 0),void d.$render();var c=Math.abs(b);return c.toString()!==a&&(d.$setViewValue(c.toString()),d.$render()),c}d.$formatters.push(e),d.$parsers.splice(0,0,e)}}}angular.module("udb.event-form").directive("udbAgeInput",a)}(),function(){"use strict";function a(a,b,c,d){function e(){i();var b=n.minAge,d=n.maxAge,e=n.formData.getTypicalAgeRange(); -if(!e||e.min!==b||e.max!==d){if(_.isNumber(b)&&_.isNumber(d)&&b>d)return n.hasError=!0,void h(c.instant("eventForm.step4.age.error_max_lower_than_min"));n.formData.setTypicalAgeRange(b,d),a.$emit("changeTypicalAgeRange",n.formData.typicalAgeRange)}}function f(){a.$apply(e)}function g(){n.delayedSaveAgeRange.cancel(),e()}function h(a){n.error=a}function i(){n.error="",n.hasError=!1}function j(a,b){return function(c){var d=c.min===a&&c.max===b,e=!(isNaN(a)&&isNaN(b))&&c===o.CUSTOM;return d?d:e}}function k(a){n.formData=a;var b=a.getTypicalAgeRange();b&&l(b.min,b.max)}function l(a,b){var c=_.findKey(o,j(a,b));n.minAge=a,n.maxAge=b,n.rangeInputEnabled=c&&"ALL"!==c,n.activeAgeRange=c}function m(a){var b=o[a];b&&("CUSTOM"!==a&&(n.minAge=b.min,n.maxAge=b.max),n.rangeInputEnabled="ALL"!==a,n.activeAgeRange=a,e())}var n=this,o=Object.freeze({ALL:{label:"All ages"},TODDLERS:{label:"Toddlers",min:0,max:2},PRESCHOOLERS:{label:"Preschoolers",min:3,max:5},KIDS:{label:"Kids",min:6,max:11},TEENAGERS:{label:"Teenagers",min:12,max:15},YOUNGSTERS:{label:"Youngsters",min:16,max:26},ADULTS:{label:"Adults",min:18},SENIORS:{label:"Seniors",min:65},CUSTOM:{label:"Custom"}});n.ageRanges=angular.copy(o),n.activeAgeRange=void 0,n.minAge=void 0,n.maxAge=void 0,n.setAgeRangeByType=m,n.delayedSaveAgeRange=_.debounce(f,1e3),n.instantSaveAgeRange=g,n.error="",n.formData=void 0,k(b),a.translateAgeRange=function(a){return c.instant("eventForm.step4.age."+a)},a.getAgeRangeLabel=function(a){return"undefined"==typeof a.min&&"undefined"==typeof a.max?"":"number"==typeof a.min&&"number"==typeof a.max?a.min.toString()+"-"+a.max.toString():a.min.toString()+"+"}}angular.module("udb.event-form").controller("FormAgeController",a),a.$inject=["$scope","EventFormData","$translate","$rootScope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-age.html",restrict:"EA",controller:"FormAgeController",controllerAs:"fagec"}}angular.module("udb.event-form").directive("udbFormAge",a)}(),function(){"use strict";function a(a,b,c){function d(c){b.setAudienceType(a,c)}function e(){return a.getLocation().isDummyPlaceForEducationEvents}var f=this,g=_.get(c,"offerEditor.disableAudience");f.enabled=!g&&a.isEvent,f.audienceType=e()?"education":a.audienceType,f.setAudienceType=d,f.isBookableEvent=e}angular.module("udb.event-form").controller("FormAudienceController",a),a.$inject=["EventFormData","eventCrud","appConfig"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-audience.html",restrict:"EA",controller:"FormAudienceController",controllerAs:"fac"}}angular.module("udb.event-form").directive("udbFormAudience",a)}(),function(){"use strict";function a(a){function b(b,c){function d(b){a.scrollTo(b.target,100,e,f)}var e=1e3,f=function(a){return.5>a?2*a*a:-1+(4-2*a)*a};c.on("click focusin",d)}return{restrict:"A",link:b}}angular.module("udb.event-form").directive("udbAutoScroll",a),a.$inject=["$document"]}(),function(){"use strict";function a(a,b,c){function d(b,c){a.formData=b,a.isEvent=b.isEvent,a.isPlace=b.isPlace,a.offerStatus=b.status,a.subEvent=b.subEvent,a.timeSpans=_.isEmpty(b.calendar.timeSpans)?[]:b.calendar.timeSpans,a.setType(b.calendar.calendarType?b.calendar.calendarType:"single"),a.openingHoursCollection=c}function e(a){return"permanent"===a||"periodic"===a}function f(b){a.formData.setCalendarType(b),a.type=b,a.weeklyRecurring=e(b),"single"===b&&_.isEmpty(a.timeSpans)&&g()}function g(){a.timeSpans=[{allDay:!0,start:moment().startOf("day").toDate(),end:moment().endOf("day").toDate(),endTouched:!1,status:{type:"Available"}}]}function h(){if(_.isEmpty(a.timeSpans))g(),a.instantTimeSpanChanged();else{var b=_.cloneDeep(_.last(a.timeSpans));b.status={type:"Available"},b.bookingAvailability={type:"Available"},a.timeSpans.push(b)}}function i(b){a.timeSpans.length>1&&(a.timeSpans=_.without(a.timeSpans,b),a.instantTimeSpanChanged())}function j(a){b.$apply(m(a))}function k(){a.delayedTimeSpanChanged.cancel(),m()}function l(a){a.allDay?(a.start=moment(a.start).set({hour:0,minute:0,millisecond:0}).toDate(),a.end=moment(a.end).endOf("day").toDate()):(a.start=moment(a.start).set({hour:moment().startOf("hour").format("H"),minute:0}).toDate(),a.end=moment(a.end).set({hour:moment().startOf("hour").add(4,"h").format("H"),minute:0,second:0}).toDate()),k()}function m(b){var c=_.map(a.timeSpans,p);_.isEmpty(_.flatten(c))?(a.timeSpans.length>1?"multiple"!==a.type&&f("multiple"):"single"!==a.type&&f("single"),n(),_.each(a.timeSpans,function(a){"end"!==b||a.endTouched||(a.endTouched=!0),a.allDay&&(a.start=moment(a.start).startOf("day").toDate(),a.end=moment(a.end).endOf("day").toDate()),"start"!==b||a.endTouched||a.start>a.end&&(a.end=moment(a.start).endOf("day").toDate())}),a.formData.saveTimeSpans(a.timeSpans)):o(c)}function n(){a.timeSpanRequirements=[]}function o(b){a.timeSpanRequirements=b}function p(b){var c={timedWhenNotAllDay:function(a){return!(a.allDay||a.start&&a.end)},startBeforeEndDay:function(a){return a.endTouched&&a.start&&a.end&&moment(a.start).isAfter(a.end,"day")},startBeforeEnd:function(a){return!a.allDay&&a.start&&a.end&&moment(a.start).isSame(a.end,"day")&&moment(a.start).isAfter(a.end)},tooFarInFuture:function(c){var d=moment().add(a.maxYearTimeSpan,"y");return moment(b.end).isAfter(d)}},d=_.pick(c,function(a){return a(b)});return _.keys(d)}a.type="",a.setType=f,a.createTimeSpan=h,a.timeSpans=[],a.timeSpanRequirements=[],a.removeTimeSpan=i,a.weeklyRecurring=!1,a.delayedTimeSpanChanged=_.debounce(j,1e3),a.instantTimeSpanChanged=k,a.toggleAllDay=l,a.init=d,a.maxYearTimeSpan=_.get(c,"offerEditor.calendar.maxYearTimeSpan",10)}angular.module("udb.event-form").controller("BaseCalendarController",a),a.$inject=["calendar","$scope","appConfig"]}(),function(){"use strict";function a(a){function b(b){if(""!==a.calendarHighlight.date){var c=moment(b.date),d=moment(a.calendarHighlight.date);if(c.isSame(d,b.mode))return a.calendarHighlight.extraClass}}var c=this,d={minDate:new Date,showWeeks:!1,customClass:b};c.$onInit=function(){c.isOpen=!1,c.options=d,c.ngModel.$render=function(){c.date=new Date(c.ngModel.$viewValue)}},c.open=function(){c.isOpen=!0},c.changed=function(){if(c.date){var a=moment(c.ngModel.$viewValue),b=moment(c.date).hour(a.hour()).minute(a.minute());c.ngModel.$setViewValue(b.toDate())}}}angular.module("udb.event-form").component("udbFormCalendarDatepicker",{templateUrl:"templates/form-calendar-datepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"datepicker"}),a.$inject=["appConfig"]}(),function(){"use strict";function a(){var a=this;a.calendarType=a.formData.calendar.calendarType}angular.module("udb.event-form").component("udbFormCalendarPeriod",{templateUrl:"templates/form-calendar-period.component.html",controller:a,bindings:{formData:"=",disabled:"=ngDisabled"}})}(),function(){"use strict";function a(){var a=this;a.$onInit=function(){a.ngModel.$render=function(){a.time=new Date(a.ngModel.$viewValue)}},a.changed=function(){a.time&&a.ngModel.$setViewValue(a.time)}}angular.module("udb.event-form").component("udbFormCalendarTimepicker",{templateUrl:"templates/form-calendar-timepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"timepicker"})}(),function(){"use strict";function a(a,b,c,d){var e=this;d("BaseCalendarController",{calendar:e,$scope:c}),e.init(a,b)}angular.module("udb.event-form").controller("FormCalendarController",a),a.$inject=["EventFormData","OpeningHoursCollection","$scope","$controller"]}(),function(){"use strict";angular.module("udb.event-form").component("udbFormEventCalendar",{templateUrl:"templates/form-event-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";angular.module("udb.event-form").component("udbFormPlaceCalendar",{templateUrl:"templates/form-place-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){function f(){a.saving=!1,a.error=!0}function g(){var a=angular.copy(e);a.description=h,a.copyrightHolder=i,c.updateMediaObject(a),b.close(a)}var h=a.description,i=a.copyrightHolder;d.updateImage(c,e,h,i).then(g,f)}function h(){return a.description&&a.copyrightHolder&&a.description.length<=250&&a.copyrightHolder.length>=2}a.saving=!1,a.error=!1,a.description=e.description||"",a.copyrightHolder=e.copyrightHolder||"",a.cancel=f,a.updateImageInfo=g,a.allFieldsValid=h}angular.module("udb.event-form").controller("EventFormImageEditController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","mediaObject"]}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){a.error=!0,a.saving=!1}function h(){a.saving=!0,a.error=!1}function i(){function f(){c.removeMediaObject(e),a.saving=!1,b.close()}h(),d.removeImage(c,e).then(f,g)}a.saving=!1,a.error=!1,a.cancel=f,a.removeImage=i}angular.module("udb.event-form").controller("EventFormImageRemoveController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","image"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){function k(){a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.showAgreements=!1,h.confirm()}function l(){b.dismiss("cancel")}function m(){a.error=!1}function n(b,c){if(a.selectedFile=b?b:null,c.length){var d=q[c[0].$error];a.error=d?d:q["default"]}else m()}function o(){function e(b){var c=b.data.title,d=i.instant("eventForm.imageUpload.somethingWentWrongError");switch(c){case"The uploaded file is not an image.":d=i.instant("eventForm.imageUpload.formatNotValidError")+i.instant("eventForm.imageUpload.extensionsAllowed");break;case"The file size of the uploaded image is too big.":d=i.instant("eventForm.imageUpload.sizeError")}a.saving=!1,a.error=d}function h(f){function g(){a.saving=!1,c.addImage(f),l.resolve(f),b.close(f)}d.addImage(c,f).then(g,e)}if(!a.selectedFile)return void(a.error=i.instant("eventForm.imageUpload.noFileSelectedError"));a.saving=!0;var j=a.description,k=a.copyright,l=g.defer(),m=c.mainLanguage?c.mainLanguage:"nl";return f.createImage(a.selectedFile,j,k,m).then(h,e),l.promise}function p(){return a.description&&a.copyright&&a.selectedFile&&a.description.length<=250&&a.copyright.length>=2}a.userAgreementUrl=j("translate")("images.conditions_url"),a.copyrightUrl="/"+i.use()+_.get(e,"media.copyrightUrl","/copyright"),a.saving=!1,a.error=!1,a.showAgreements=!h.confirmed(),a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.description="",a.copyright="",a.maxFileSize=_.get(e,"media.fileSizeLimit","1MB"),a.acceptAgreements=k,a.cancel=l,a.addImage=o,a.clearError=m,a.selectFile=n,a.allFieldsValid=p;var q={"default":i.instant("eventForm.imageUpload.defaultError"),maxSize:i.instant("eventForm.imageUpload.maxSize")+a.maxFileSize+"."}}angular.module("udb.event-form").controller("EventFormImageUploadController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","appConfig","MediaManager","$q","copyrightNegotiator","$translate","$filter"]}(),function(){"use strict";function a(a,b){function c(a){i=_.cloneDeep(a.getOpeningHours()),0===i.length&&a.createNewOpeningHours(),j.openingHoursCollection=a}function d(){f();var b=j.openingHoursCollection.validate();_.isEmpty(b)?a.close(j.openingHoursCollection.serialize()):e(b)}function e(a){j.errors=a}function f(){j.errors={}}function g(){j.openingHoursCollection.createNewOpeningHours()}function h(a){j.openingHoursCollection.removeOpeningHours(a),f()}var i,j=this;c(b),j.saveOpeningHours=d,j.createNewOpeningHours=g,j.removeOpeningHours=h,j.errors={}}angular.module("udb.event-form").controller("OpeningHoursEditorModalController",a),a.$inject=["$uibModalInstance","openingHoursCollection"]}(),function(){"use strict";function a(a,b){function c(a){return b.instant("weekdays."+a+".label")}function d(a){return b.instant("weekdays."+a+".name")}function e(a){return _.all(_.map(a,function(a){return a.opensAsDate instanceof Date&&a.closesAsDate instanceof Date}))}function f(b){return _.all(_.map(b,function(b){return a(b.opensAsDate).isBefore(b.closesAsDate)}))}function g(a){return _.all(_.map(a,function(a){return!_.isUndefined(_.find(a.dayOfWeek,"open"))}))}function h(b){return angular.forEach(b,function(b,c){b.opens=a(b.opensAsDate).format("HH:mm"),b.closes=a(b.closesAsDate).format("HH:mm"),b.label=_.pluck(_.filter(b.dayOfWeek,"open"),"name").join(", ")}),b}function i(a){return a.clone().year(1970).dayOfYear(1)}function j(a){return _.pick(a,function(a){return a.open})}var k={openAndClose:e,dayOfWeek:g,openIsBeforeClose:f},l={monday:{label:c("monday"),name:d("monday"),open:!1},tuesday:{label:c("tuesday"),name:d("tuesday"),open:!1},wednesday:{label:c("wednesday"),name:d("wednesday"),open:!1},thursday:{label:c("thursday"),name:d("thursday"),open:!1},friday:{label:c("friday"),name:d("friday"),open:!1},saturday:{label:c("saturday"),name:d("saturday"),open:!1},sunday:{label:c("sunday"),name:d("sunday"),open:!1}},m={openingHours:[],getOpeningHours:function(){return this.openingHours},setOpeningHours:function(a){this.openingHours=h(a)},removeOpeningHours:function(a){var b=this.openingHours;this.setOpeningHours(_.without(b,a))},createNewOpeningHours:function(){var a=this.openingHours||[],b={dayOfWeek:_.cloneDeep(l),opens:"00:00",opensAsDate:new Date(1970,0,1),closes:"00:00",closesAsDate:new Date(1970,0,1)};a.push(b),this.setOpeningHours(a)},deserialize:function(b){return this.setOpeningHours(_.map(b,function(b){return{dayOfWeek:_.mapValues(l,function(a,c){var d=_.cloneDeep(a);return d.open=_.includes(b.dayOfWeek,c),d}),opens:b.opens||"00:00",opensAsDate:b.opens?i(a(b.opens,"HH:mm")).toDate():new Date(1970,0,1),closes:b.closes||"00:00",closesAsDate:b.closes?i(a(b.closes,"HH:mm")).toDate():new Date(1970,0,1)}})),this},serialize:function(){return _.map(this.openingHours,function(b){return{dayOfWeek:_.keys(j(b.dayOfWeek)),opens:a(b.opensAsDate).format("HH:mm"),closes:a(b.closesAsDate).format("HH:mm")}})},validate:function(){var a=this.openingHours;return _(k).pick(function(b){return!b(a)}).keys().value()}};return m}angular.module("udb.event-form").factory("OpeningHoursCollection",a),a.$inject=["moment","$translate"]}(),function(){"use strict";function a(a){function b(){var b=a.open({templateUrl:"templates/opening-hours-editor.modal.html",controller:"OpeningHoursEditorModalController",controllerAs:"ohemc",size:"lg",resolve:{openingHoursCollection:function(){return angular.copy(d.openingHoursCollection)}}});b.result.then(c)}function c(a){d.formData.openingHours=a,d.formData.saveOpeningHours(a),d.openingHoursCollection.deserialize(a)}var d=this;d.edit=b}angular.module("udb.event-form").component("udbEventFormOpeningHours",{bindings:{openingHoursCollection:"=openingHours",formData:"=",disabled:"=ngDisabled"},templateUrl:"templates/event-form-openinghours.html",controller:a,controllerAs:"cm"}),a.$inject=["$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){b.dismiss("cancel")}function k(){return a.showWebsiteValidation=!0,a.organizerForm.website.$valid?void c.findOrganizersWebsite(a.newOrganizer.website).then(function(b){b.totalItems>0?(a.organizersWebsiteFound=!0,a.firstOrganizerFound=new d(b.member[0]),a.showWebsiteValidation=!1,a.disableSubmit=!0):(a.showWebsiteValidation=!1,a.organizersWebsiteFound=!1,a.firstOrganizerFound="",a.newOrganizer.name&&(a.disableSubmit=!1))},function(){a.websiteError=!0,a.showWebsiteValidation=!1}):void(a.showWebsiteValidation=!1)}function l(){a.newOrganizer.name&&!a.websiteError?a.disableSubmit=!1:a.disableSubmit=!0}function m(b){a.addressError=b}function n(b){a.contactError=b}function o(){if(a.showValidation=!0,a.organizerForm.$valid){a.$broadcast("organizerAddressSubmit"),a.$broadcast("organizerContactSubmit");var b=f.resolve([]);return a.error=!1,a.saving=!0,a.addressError||a.contactError?(a.error=!0,void(a.saving=!1)):void b.then(function(b){b.length>0?(a.organizersFound=!0,a.organizers=b,a.saving=!1):q()},function(){a.error=!0,a.saving=!1})}}function p(a){b.close(a)}function q(){a.saving=!0,a.saveError=!1;var b=_.clone(a.newOrganizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,e.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&h.addLabelToOrganizer(b.data.organizerId,c),a.newOrganizer.id=b.data.organizerId,p(a.newOrganizer),a.saving=!1},function(){a.saveError=!0,a.saving=!1})}a.organizer=g,a.organizersWebsiteFound=!1,a.organizersFound=!1,a.saving=!1,a.error=!1,a.addressError=!1,a.contactError=!1,a.showWebsiteValidation=!1,a.showValidation=!1,a.organizers=[],a.selectedCity="",a.disableSubmit=!0,a.contactUrlRegex=(new d).regex.url,a.newOrganizer={mainLanguage:"nl",website:"http://",name:a.organizer,address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},a.cancel=j,a.validateWebsite=k,a.updateName=l,a.validateAddress=m,a.validateContact=n,a.validateNewOrganizer=o,a.selectOrganizer=p,a.saveOrganizer=q}angular.module("udb.event-form").controller("EventFormOrganizerModalController",a),a.$inject=["$scope","$uibModalInstance","udbOrganizers","UdbOrganizer","eventCrud","$q","organizerName","OrganizerManager","appConfig"]}(),function(){!function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return{name:a.title,eventType:{id:""},address:{addressCountry:a.location.address.addressCountry,addressLocality:a.location.address.addressLocality,postalCode:a.location.address.postalCode,streetAddress:"",locationNumber:""}}}function j(){a.newPlace=i(),b.dismiss()}function k(){return a.showValidation=!0,a.placeForm.$valid?p(a.newPlace.address.streetAddress)?"NL"!==a.newPlace.address.addressCountry||q(a.newPlace.address.postalCode)?void l():(a.error=!0,void(a.invalidNlPostalCode=!0)):(a.error=!0,void(a.invalidStreet=!0)):void 0}function l(){function b(){a.saving=!1,a.error=!0}function e(b){i.id=b.id,m(i),a.saving=!0,a.error=!1}a.saving=!0,a.error=!1;for(var f="",g=0;ga.availabilityEnds?void(a.errorMessage="De gekozen einddatum moet na de startdatum vallen."):(a.errorMessage="",void e())}function e(){moment(a.availabilityStarts).isValid()&&moment(a.availabilityEnds).isValid()?(b.bookingInfo.availabilityStarts=moment(a.availabilityStarts).hours(0).minutes(0).seconds(0).format(),b.bookingInfo.availabilityEnds=moment(a.availabilityEnds).hours(23).minutes(59).seconds(59).format()):(b.bookingInfo.availabilityStarts="",b.bookingInfo.availabilityEnds=""),a.onBookingPeriodSaved()}function f(){a.availabilityStarts="",a.availabilityEnds="",a.haveBookingPeriod=!1,e()}function g(){a.haveBookingPeriod||(a.haveBookingPeriod=!0)}function h(){(b.bookingInfo.availabilityStarts||b.bookingInfo.availabilityEnds)&&(a.haveBookingPeriod=!0),b.bookingInfo.availabilityStarts?a.availabilityStarts=new Date(b.bookingInfo.availabilityStarts):a.availabilityStarts=new Date,b.bookingInfo.availabilityEnds?a.availabilityEnds=new Date(b.bookingInfo.availabilityEnds):a.availabilityEnds=new Date}a.haveBookingPeriod=!1,a.availabilityStarts="",a.availabilityEnds="",a.errorMessage="",a.popup1={opened:!1},a.popup2={opened:!1},a.validateBookingPeriod=d,a.saveBookingPeriod=e,a.deleteBookingPeriod=f,a.changeHaveBookingPeriod=g,a.initBookingPeriodForm=h,a.dateOptions={formatYear:"yyyy",minDate:new Date,startingDay:1},h(),a.open1=function(){a.popup1.opened=!0},a.open2=function(){a.popup2.opened=!0}}angular.module("udb.event-form").controller("ReservationPeriodController",a),a.$inject=["$scope","EventFormData","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"AE",scope:{onBookingPeriodSaved:"&"},controller:"ReservationPeriodController",templateUrl:"templates/reservation-period.html"}}angular.module("udb.event-form").directive("udbReservationPeriod",a)}(),function(){"use strict";function a(a){function b(b){function c(){b.timeLastSaved=new Date}b.timeLastSaved=void 0;var d=a.$on("eventFormSaved",c);b.$on("$destroy",d)}var c='
';return{template:c,restrict:"EA",link:b}}angular.module("udb.event-form").directive("udbEventFormSaveTimeTracker",a),a.$inject=["$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbEventPreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbEventSuggestion",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbPlacePreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbPlaceSuggestion",a)}(),function(){!function(){"use strict";function a(a,b,c,d,e){function f(a){return function(b){return-1!==b["@id"].indexOf(a)}}function g(){var b=a.currentSuggestionIndex-1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function h(){var b=a.currentSuggestionIndex+1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function i(){b.close()}a.previousSuggestion=g,a.nextSuggestion=h,a.currentSuggestionId=c,a.currentSuggestionIndex=_.findIndex(d.events,f(c)),a.closePreview=i,a.suggestionCount=d.totalItems,a.currentSuggestion=_.find(d.events,f(c)),a.suggestions=d.events,a.suggestionType=e}angular.module("udb.event-form").controller("SuggestionPreviewModalController",a),a.$inject=["$scope","$uibModalInstance","selectedSuggestionId","resultViewer","suggestionType"]}()}(),function(){"use strict";function a(){function a(a,d,e,f){function g(){""!==f.$modelValue.value&&(f.$setValidity("contactinfo",!0),a.infoErrorMessage="",h())}function h(){if(""===f.$modelValue.value||void 0===f.$modelValue.value)a.infoErrorMessage="Gelieve dit veld niet leeg te laten.",f.$setValidity("contactinfo",!1);else if("email"!==f.$modelValue.type||c.test(f.$modelValue.value)){if("url"===f.$modelValue.type){var d=f.$viewValue;b.test(d.value)||(a.infoErrorMessage="Gelieve een geldige url in te vullen.",f.$setValidity("contactinfo",!1))}}else a.infoErrorMessage="Gelieve een geldig e-mailadres in te vullen.",f.$setValidity("contactinfo",!1)}function i(){f.$modelValue.value="",f.$modelValue.booking=!1,a.infoErrorMessage="",f.$setValidity("contactinfo",!0)}a.loadInfo=g,a.validateInfo=h,a.clearInfo=i,a.infoErrorMessage="",a.$on("organizerContactRefresh",function(){h()})}var b=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,c=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;return{restrict:"A",require:"ngModel",link:a}}angular.module("udb.event-form").directive("udbContactInfoValidation",a)}(),function(){"use strict";function a(a){var b=this,c="copyright-agreement-confirmed";b.confirm=function(){var b=moment().add(1,"year").toDate(),d={confirmed:!0};a.putObject(c,d,{expires:b})},b.confirmed=function(){var b=a.getObject(c);return b?b.confirmed:!1}}angular.module("udb.event-form").service("copyrightNegotiator",a),a.$inject=["$cookies"]}(),function(){"use strict";function a(a,b,c,d,e,f){var g={init:function(){this.apiUrl="",this.isEvent=!0,this.isPlace=!1,this.showStep1=!0,this.showStep2=!1,this.showStep3=!1,this.showStep4=!1,this.showStep5=!1,this.majorInfoChanged=!1,this.id="",this.mainLanguage=f.use()||"nl",this.name="",this.description={},this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}},this.address={addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""},this.place={},this.type={},this.theme={},this.calendar={},this.calendar.calendarType="",this.calendar.timeSpans=[],this.calendar.openingHours=[],this.typicalAgeRange="",this.organizer={},this.contactPoint={url:[],phone:[],email:[]},this.facilities=[],this.bookingInfo={},this.mediaObjects=[],this.image=[],this.additionalData={},this.priceInfo=[],this.workflowStatus="DRAFT",this.availableFrom="",this.labels=[],this.audienceType="everyone",this.timingChanged$=a.createObservableFunction(this,"timingChangedCallback")},clone:function(){var b=_.cloneDeep(this);return b.timingChanged$=a.createObservableFunction(b,"timingChangedCallback"),b},showStep:function(a){this["showStep"+a]=!0},hideStep:function(a){this["showStep"+a]=!1},setName:function(a,b){this.name[b]=a},getName:function(a){return this.name[a]},getMainLanguage:function(){return this.mainLanguage},setMainLanguage:function(a){this.mainLanguage=a},setDescription:function(a,b){this.description[b]=a},getDescription:function(a){return this.description[a]},setEventType:function(a){this.type=a,this.removeTheme()},removeType:function(){this.type={}},getEventType:function(){return this.type},getEventTypeLabel:function(){return this.type.label?this.type.label:""},setTheme:function(a){this.theme=a},removeTheme:function(){this.theme={}},getTheme:function(){return this.theme},getThemeLabel:function(){return this.theme.label?this.theme.label:""},getPeriodicStartDate:function(){return this.calendar.startDate},setPeriodicStartDate:function(a){this.calendar.startDate=a},getPeriodicEndDate:function(){return this.calendar.endDate},setPeriodicEndDate:function(a){var b=c(a).endOf("day").toDate();this.calendar.endDate=b},resetLocation:function(){this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}}},setLocation:function(a){this.location=a},getLocation:function(){return this.location},addTimeSpan:function(a,b,d,e){var f="00:00"===c(a).format("HH:mm")&&"23:59"===c(b).format("HH:mm");this.calendar.timeSpans.push({start:c(a).toISOString(),end:c(b).toISOString(),allDay:f,status:d?d:{type:"Available"},bookingAvailability:e?e:{type:"Available"}})},resetCalendar:function(){this.calendar.timeSpans=[],this.calendar.calendarType="",this.calendar.activeCalendarLabel="",this.calendar.activeCalendarType=""},getFirstStartDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.first(this.calendar.timeSpans).start),"periodic"===g.calendar.calendarType&&(a=this.calendar.startDate),a},getLastEndDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.last(this.calendar.timeSpans).end), -"periodic"===g.calendar.calendarType&&(a=this.calendar.endDate),a},getType:function(){return this.isEvent?"event":"place"},resetOrganizer:function(){this.organizer={}},resetContactPoint:function(){this.contactPoint={url:[],phone:[],email:[]}},setBookingInfo:function(a){this.bookingInfo=a},addImage:function(a){this.mediaObjects=_.union(this.mediaObjects,[a])},editMediaObject:function(a,b,c,d,e){this.image[a]={url:b,thumbnailUrl:c,description:d,copyrightHolder:e},this.image[a]["@type"]="ImageObject"},updateMediaObject:function(a){this.mediaObjects=_.map(this.mediaObjects,function(b){var c;return c=b["@id"]===a["@id"]?a:b})},removeMediaObject:function(a){this.mediaObjects=_.reject(this.mediaObjects,{"@id":a["@id"]})},selectMainImage:function(a){var b=_.without(this.mediaObjects,a);b.unshift(a),this.mediaObjects=b},setTypicalAgeRange:function(a,b){this.typicalAgeRange=(isNaN(a)?"":a)+"-"+(isNaN(b)?"":b)},getTypicalAgeRange:function(){if(!_.isEmpty(this.typicalAgeRange)){var a={min:void 0,max:void 0},b=this.typicalAgeRange.split("-");return b[0]&&(a.min=parseInt(b[0])),b[1]&&(a.max=parseInt(b[1])),a}},hasValidPeriodicRange:function(){var a=this.getPeriodicStartDate(),b=this.getPeriodicEndDate();return"periodic"===this.calendar.calendarType&&!!a&&!!b&&b>a},initCalendar:function(){var a=this,c=_.findWhere(b,{id:a.calendar.calendarType});c&&(this.calendar.activeCalendarLabel=c.label,this.calendar.activeCalendarType=a.calendar.calendarType)},timingChanged:function(){this.showStep2&&this.showStep(3),this.timingChangedCallback(this)},timingChangedCallback:function(){},initOpeningHours:function(a){d.deserialize(a)},setCalendarType:function(a){var b=this;if("permanent"===a&&(b.calendar.startDate=void 0,b.calendar.endDate=void 0,b.timingChanged()),b.calendar.calendarType!==a){if(b.resetCalendar(),b.calendar.calendarType=a,"single"===b.calendar.calendarType){if(b.openingHours=[],e.calendarHighlight.date){var d=e.calendarHighlight.startTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.startTime,"YYYY-MM-DD HH:mm").toDate():"",f=e.calendarHighlight.endTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.endTime,"YYYY-MM-DD HH:mm").toDate():"";b.addTimeSpan(d,f)}else b.addTimeSpan(c().startOf("day"),c().endOf("day"));b.saveTimeSpans(b.calendar.timeSpans)}if("periodic"===b.calendar.calendarType){if(b.calendar.startDate=c().startOf("day").toDate(),e.addOffer&&e.addOffer.defaultEndPeriod){var g=e.addOffer.defaultEndPeriod;b.calendar.endDate=c(b.calendar.startDate).add(g,"d").startOf("day").toDate()}else b.calendar.endDate=c().add(1,"y").startOf("day").toDate();b.timingChanged()}b.initCalendar(),b.id&&(b.majorInfoChanged=!0)}},isValidDate:function(a){return a instanceof Date},toggleStartHour:function(a){if(a.showStartHour){var b=c(a.date),d=c(a.date).endOf("day");a.startHour=b.format("HH:mm"),a.startHourAsDate=b.toDate(),a.endHour=d.format("HH:mm"),a.endHourAsDate=d.toDate(),a.showEndHour=!1}else a.start.setHours(0),a.start.setMinutes(0),a.end.setHours(0),a.end.setMinutes(0),this.timingChanged()},toggleEndHour:function(a){var b=a.date;if(a.showEndHour){var d=c(a.startHourAsDate).add(3,"hours").minutes(0);b.setHours(d.hours()),b.setMinutes(d.minutes()),a.endHour=c(b).format("HH:mm"),a.endHourAsDate=b}else b.setHours(23),b.setMinutes(59),a.endHour="23:59",a.endHourAsDate=b,this.timingChanged()},hoursChanged:function(a){var b,d;(a.showStartHour||a.showEndHour)&&(a.showStartHour&&(void 0!==a.startHourAsDate?b=c(a.startHourAsDate):(b=c(a.startHourAsDate),b.hours(0),b.minutes(0)),a.startHour=b.format("HH:mm")),a.showEndHour&&(d=void 0!==a.endHourAsDate?c(a.endHourAsDate):b,a.endHour=d.format("HH:mm")),this.timingChanged())},saveOpeningHours:function(a){this.calendar.openingHours=a,this.timingChanged()},saveTimeSpans:function(a){this.calendar.timeSpans=a,this.calendar.startDate=this.getFirstStartDate(),this.calendar.endDate=this.getLastEndDate(),this.timingChanged()},periodicTimingChanged:function(){var a=this;a.id;var b=this.getPeriodicEndDate();this.setPeriodicEndDate(b),a.hasValidPeriodicRange()?(a.periodicRangeError=!1,a.timingChanged()):a.periodicRangeError=!0}};return g.init(),g}angular.module("udb.event-form").factory("EventFormData",a),a.$inject=["rx","calendarLabels","moment","OpeningHoursCollection","appConfig","$translate"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){c.initOpeningHours([]);var b=_.get(h,"calendarHighlight");c.isEvent&&b&&b.date&&k(b),a.language=c.mainLanguage,a.loaded=!0}function k(a){c.calendar.calendarType="single",c.addTimeSpan(a.startTime?e(a.date+" "+a.startTime,"YYYY-MM-DD HH:mm"):"",a.endTime?e(a.date+" "+a.endTime,"YYYY-MM-DD HH:mm"):""),c.initCalendar()}function l(a){a?d.getOffer(a).then(m):j()}function m(b){var d=b.url.split("/").shift();if(c.status=b.status,"event"===d){if(c.isEvent=!0,c.isPlace=!1,c.subEvent=b.subEvent,n(b),b.location&&b.location.id){var e=f(b.location,b.mainLanguage,!0);c.location={id:e.id.split("/").pop(),name:e.name,address:e.address,isDummyPlaceForEducationEvents:e.isDummyPlaceForEducationEvents}}c.audienceType=b.audience.audienceType}if("place"===d&&(c.isEvent=!1,c.isPlace=!0,n(b),b.address)){var g=f(b,b.mainLanguage,!0);c.address=g.address}i.use()!==a.language&&(a.showLangWarning=!0)}function n(b){var d=["id","type","theme","openingHours","description","typicalAgeRange","organizer","bookingInfo","contactPoint","priceInfo","facilities","image","additionalData","apiUrl","workflowStatus","availableFrom","labels","mainLanguage"];b.isDummyPlaceForEducationEvents&&(c.isDummyPlaceForEducationEvents=b.isDummyPlaceForEducationEvents);for(var f=0;fb?!1:o.hasNoDefault&&n(o.eventFormData.workflowStatus)}function i(){o.saving=!0,o.error="",c.publishOffer(b,o.eventFormData.availableFrom).then(function(){k(),l()})["catch"](function(){o.error="Dit event kon niet gepubliceerd worden, gelieve later opnieuw te proberen."})}function j(){g.open({templateUrl:"templates/event-form-publish-modal.html",controller:"EventFormPublishModalController",controllerAs:"efpmc",resolve:{eventFormData:function(){return o.eventFormData},publishEvent:function(){return o.publish}}})}function k(){return b.workflowStatus=d.READY_FOR_VALIDATION,e.resolve()}function l(){f.path("/"+b.getType()+"/"+b.id+"/published")}function m(){f.path("/"+b.getType()+"/"+b.id+"/saved")}function n(a){return a===d.DRAFT}var o=this;o.publish=i,o.canPublishLater=h,o.publishLater=j,o.preview=m,o.isDraft=n,o.saving=!1,o.eventFormData=b;var p=_.get(a,"offerEditor.defaultPublicationDate");o.hasNoDefault=isNaN(Date.parse(p)),!o.hasNoDefault&&n&&(o.eventFormData.availableFrom=p)}angular.module("udb.event-form").controller("EventFormPublishController",a),a.$inject=["appConfig","EventFormData","eventCrud","OfferWorkflowStatus","$q","$location","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(d,e){c.id!==d.id&&(a.activeEventType=d.id,e?(c.isEvent=!0,c.isPlace=!1):("permanent"!==c.calendar.calendarType&&c.resetCalendar(),c.isEvent=!1,c.isPlace=!0,c.calendar.calendarType="permanent"),c.setEventType(d),c.id&&b.$emit("eventTypeChanged",c),k.updateEventTypeAndThemePicker(c),c.showStep(2),c.showStep(3))}function h(a){c.getTheme().id!==a.id&&(c.setTheme(a),c.showStep(2),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c))}function i(){a.showAllEventTypes=!a.showAllEventTypes}function j(){a.showAllPlaces=!a.showAllPlaces}var k=this;a.eventFormData=c,a.eventTypeLabels=d,a.placeLabels=e,a.canRefine=!1,a.canRefineByGroups=!1,a.showAllEventTypes=!1,a.showAllPlaces=!1,a.eventThemeLabels=[],a.eventGroupLabels=[],a.activeEventType="",a.activeEventTypeLabel="",a.activeTheme="",a.activeThemeLabel="",a.splitTypes=!0,k.updateEventTypeAndThemePicker=function(b){var c,g=b.getEventType().id,h=b.getTheme().id,i=_.union(d,e),j=_.findWhere(i,{id:g});if(j){if(a.activeEventType=j.id,a.activeEventTypeLabel=f.instant("offerTypes."+j.label),a.eventThemeLabels=j.themes,a.eventGroupLabels=j.groups,a.isLessonSeries="0.3.1.0.0"===a.activeEventType,j.themes&&(c=_.findWhere(j.themes,{id:h})),j.groups){var k=_.find(j.groups,function(a){return _.where(a.themes,{id:h}).length>0});k&&(c=_.findWhere(k.themes,{id:h}))}}else a.activeEventType="",a.activeEventTypeLabel="";c?(a.activeTheme=c.id,a.activeThemeLabel=f.instant("offerThemes."+c.label)):(a.activeTheme="",a.activeThemeLabel=""),a.canRefine=j&&!_.isEmpty(j.themes)&&!c,a.canRefineByGroups=j&&!_.isEmpty(j.groups)&&!c},k.resetEventType=function(){c.removeType(),k.updateEventTypeAndThemePicker(c)},k.resetTheme=function(){c.removeTheme(),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c)},k.eventThemeChanged=function(a){a.id&&b.$emit("eventThemeChanged",a)},a.setEventType=g,a.resetEventType=k.resetEventType,a.toggleEventTypes=i,a.togglePlaces=j,a.setTheme=h,a.resetTheme=k.resetTheme,k.init=function(b){b.id&&(k.updateEventTypeAndThemePicker(b),a.splitTypes=!1),_.where(a.eventTypeLabels,{primary:!0}).length===a.eventTypeLabels.length&&(a.showAllEventTypes=!0),_.where(a.placeLabels,{primary:!0}).length===a.placeLabels.length&&(a.showAllPlaces=!0)},a.translateOfferTypes=function(a){return f.instant("offerTypes."+a)},a.translateOfferThemes=function(a){return f.instant("offerThemes."+a)},a.translateOfferThemesGroups=function(a){return f.instant("offerThemesGroups."+a)},k.init(c)}angular.module("udb.event-form").controller("EventFormStep1Controller",a),a.$inject=["$scope","$rootScope","EventFormData","eventCategories","placeCategories","$translate"]}(),function(){"use strict";function a(a,b,c){var d=this;a.eventFormData=c,d.eventTimingChanged=function(){c.id&&b.$emit("eventTimingChanged",c)},c.timingChanged$.subscribe(d.eventTimingChanged)}angular.module("udb.event-form").controller("EventFormStep2Controller",a),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){var a={id:null,name:"",address:{addressCountry:"",addressLocality:"",postalCode:"",streetAddress:""}};return _.cloneDeep(a)}function o(b){return a.availableCountries.filter(function(a){return!b||"ZZ"!==a.code})}function p(){b.resetLocation(),a.selectedCity="",a.placeStreetAddress="",a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.locationAutocompleteTextField="",a.bookableEventShowStep4=!1,C(),E.stepUncompleted()}function q(){"NL"===a.selectedCountry.code?a.cities=g:a.cities=f,p()}function r(){var c=b.getLocation();c.id="",c.name="";var d={};d.zip=c.address.postalCode,d.name=c.address.addressLocality,b.setLocation(c),a.selectedLocation=!1,a.locationAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.selectedCityObj=d,E.stepUncompleted()}function s(a){return function(b){return new h(a,b.name+""+b.address.streetAddress)}}function t(){function c(c){b.place=c,a.selectedCity=c.address.postalCode+" "+c.address.addressLocality;var d={id:c.id,name:c.name,address:{addressCountry:a.selectedCountry.code,addressLocality:c.address.addressLocality,postalCode:c.address.postalCode,streetAddress:c.address.streetAddress}};b.setLocation(d),a.selectedLocation=angular.copy(d),E.stepCompleted()}var d=e.open({templateUrl:"templates/event-form-place-modal.html",controller:"EventFormPlaceModalController",resolve:{location:function(){return a.eventFormData.location},categories:function(){return a.categories},title:function(){return a.locationAutocompleteTextField}}});d.result.then(c)}function u(a){return a.split(" ").pop()||""}function v(a){if(a){var b=15;return u(a).length<=b}}function w(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function x(c){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),a.step3Form.$valid){if(!v(c))return a.showStreetValidation=!0,void a.step3Form.street.$setValidity("invalid",!1);var d=b.address,e={streetAddress:c};b.address=_.merge(n().address,d,e),a.placeStreetAddress=c,E.stepCompleted()}}function y(c,d){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),"NL"===a.selectedCountry.code&&a.step3Form.postalCode.$setValidity("invalid",!0),a.step3Form.$valid&&(v(c)||(a.showStreetValidation=!0,a.step3Form.street.$setValidity("invalid",!1)),"NL"===a.selectedCountry.code&&(w(d)||(a.showZipValidation=!0,a.step3Form.postalCode.$setValidity("invalid",!1))),!a.showStreetValidation&&!a.showZipValidation)){var e=b.address,f={streetAddress:c,postalCode:d};b.address=_.merge(n().address,e,f),a.placeStreetAddress=c,E.stepCompleted()}}function z(){a.showValidation=!1,a.showStreetValidation=!1}function A(){a.showValidation=!1,a.showZipValidation=!1}function B(){a.newPlaceStreetAddress=a.placeStreetAddress?a.placeStreetAddress:"",a.placeStreetAddress="",a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,E.stepUncompleted()}function C(){a.isBookableEvent="ZZ"===a.selectedCountry.code?!0:!1}function D(){b.id&&(b.majorInfoChanged=!0)}var E=this,F=k.use()||"nl";a.eventFormData=b,a.categories=d,a.cityAutocompleteTextField="",a.bookableEventLocationId=m.offerEditor.bookableEvent.dummyLocationId,a.locationAutocompleteTextField="",a.availableCountries=m.offerEditor.countries,a.defaultCountry=_.find(a.availableCountries,function(a){return a["default"]}),a.selectedCountry=a.defaultCountry,a.searchingCities=!1,a.cityAutoCompleteError=!1,a.loadingPlaces=!1,a.locationAutoCompleteError=!1,a.locationsSearched=!1,a.selectedCity="",a.selectedLocation=void 0,a.placeStreetAddress="",a.newPlaceStreetAddress="",a.openPlaceModal=t,a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,a.locationsForCity=[],a.cities="BE"===a.selectedCountry.code?f:g,a.changeCountrySelection=q,a.changeCitySelection=p,a.changeLocationSelection=r,a.setPlaceStreetAddress=x,a.setNLPlaceStreetAddress=y,a.changePlaceStreetAddress=B,a.resetStreetValidation=z,a.resetZipValidation=A,a.setMajorInfoChanged=D,a.filterAvailableCountries=o,a.filterCities=function(a){return function(b){var c=a.match(/.+/g),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}},a.orderByLevenshteinDistance=function(a){return function(b){return new h(a,b.label)}},E.selectCity=function(c,d){var e=c.zip,f=c.name,g={postalCode:e,addressLocality:f,addressCountry:a.selectedCountry.code};if(b.isPlace){var h=a.eventFormData.address;a.eventFormData.address=_.merge(n().address,h,g)}else{var i={address:g},j=a.eventFormData.getLocation(),k=_.merge(n(),j,i);b.setLocation(k)}a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.selectedCity=d,a.selectedCityObj=c,a.selectedLocation=void 0,D()},a.selectCity=E.selectCity,E.selectLocation=function(d,e){function f(c){a.selectedLocation=c,a.locationAutocompleteTextField="";var f=b.getLocation();f.id=d,f.name=e,f.address=c.address,f.isDummyPlaceForEducationEvents=c.isDummyPlaceForEducationEvents,b.setLocation(f),E.stepCompleted(),D(),j.$emit("locationSelected",f)}var g=null;return a.isBookableEvent?c.getPlaceById(d).then(function(b){g=b,e=g.name,f(g),a.bookableEventShowStep4=!0}):(g=_.find(a.locationsForCity,function(a){return a.id===d}),void f(g))},a.selectLocation=E.selectLocation,E.getPlaces=function(b){function d(c){_.each(c,function(a,b){c[b]=l(c[b],F,!0)});var d=c.filter(function(a){return!a.isDummyPlaceForEducationEvents}),e=null;return e=d.sort(s(b)),a.locationsForCity=e,e}function e(){return a.locationAutoCompleteError=!0,[]}return b.length<3?void(a.locationsSearched=!1):(a.locationsSearched=!0,"BE"===a.selectedCountry.code?c.getPlacesByZipcode(a.selectedCityObj.zip,"BE",b).then(d,e):"NL"===a.selectedCountry.code?c.getPlacesByCity(a.selectedCityObj.name,"NL").then(d,e):void 0)},a.getPlaces=E.getPlaces,E.cityHasLocations=function(){return a.locationsForCity instanceof Array&&a.locationsForCity.length>0},E.stepCompleted=function(){b.showStep(4),b.id&&i.updateMajorInfo(b)},E.stepUncompleted=function(){b.id||b.hideStep(4)},E.init=function(b){var c;b.isEvent&&b.location.name&&(c=_.get(b,"location.address"),b.location.name&&(a.selectedLocation=angular.copy(b.location)),b.location.isDummyPlaceForEducationEvents&&(a.isBookableEvent=b.location.isDummyPlaceForEducationEvents,a.bookableEventShowStep4=!0)),b.isPlace&&b.address.postalCode&&(c=b.address,a.placeStreetAddress=c.streetAddress),c&&(a.selectedCity=c.addressLocality,a.selectedCountry=_.find(a.availableCountries,function(a){return a.code===c.addressCountry})),a.isBookableEvent&&(a.selectedCountry=_.find(a.availableCountries,function(a){return"ZZ"===a.code}))},E.init(b)}angular.module("udb.event-form").controller("EventFormStep3Controller",a),a.$inject=["$scope","EventFormData","cityAutocomplete","placeCategories","$uibModal","citiesBE","citiesNL","Levenshtein","eventCrud","$rootScope","$translate","jsonLDLangFilter","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return a.infoMissing=!1,a.missingInfo=[],b.type.id||a.missingInfo.push("event type missing"),"single"===b.calendarType&&""===b.timestamps[0].date?a.missingInfo.push("timestamp missing"):"periodic"!==b.calendarType||""!==b.startDate&&""!==b.endDate?""===b.calendarType&&a.missingInfo.push("when missing"):a.missingInfo.push("start or end date missing"),b.isEvent&&!b.location.id?a.missingInfo.push("place missing for event"):b.isPlace&&!b.address.streetAddress&&a.missingInfo.push("address missing for place"),""===b.name&&a.missingInfo.push("title is missing"),b.typicalAgeRange||a.missingInfo.push("age range is missing"),a.missingInfo.length>0?void(a.infoMissing=!0):void 0}function j(){return a.isValidateButtonDisabled?void 0:(a.isValidateButtonDisabled=!0,i(),a.missingInfo.length>0?(a.infoMissing=!0,void(a.isValidateButtonDisabled=!1)):void(u?o():k(b)))}function k(b){a.saving=!0,a.error=!1,a.resultViewer.loading=!0,a.duplicatesSearched=!0,m(b).then(l,q)}function l(b){b.totalItems>0?(a.saving=!1,a.resultViewer.setResults(b)):o()}function m(a){var b=n(a),d=[];angular.forEach(b,function(a,b){d.push(b+':"'+a+'"')});var e=d.join(" AND ");return c.findOffers(e)}function n(a){var b=a.getLocation();return a.isEvent?{"name.\\*":a.name.nl,"location.name.\\*":b.name}:{"name.\\*":a.name.nl,postalCode:a.address.postalCode,labels:"UDB3 place"}}function o(){p();var c;c=f.createOffer(b),c.then(function(c){b=c,f.updateTypicalAgeRange(b),b.majorInfoChanged=!1,a.saving=!1,a.resultViewer=new e,a.titleInputOptions={updateOn:"change blur"},b.showStep(5)},q)}function p(){a.error=!1,a.saving=!0}function q(){a.error=!0,a.saving=!1}function r(){b.id&&""!==b.name&&g.$emit("eventTitleChanged",b)}function s(c){h.open({templateUrl:"templates/suggestion-preview-modal.html",controller:"SuggestionPreviewModalController",resolve:{selectedSuggestionId:function(){return c.id},resultViewer:function(){return a.resultViewer},suggestionType:function(){return b.getType()}}})}var t=this,u=_.get(d,"offerEditor.ignoreDuplicates",!1);a.eventFormData=b,a.titleInputOptions={updateOn:"change blur"},a.infoMissing=!1,a.duplicatesSearched=!1,a.saving=!1,a.error=!1,a.isValidateButtonDisabled=!1,a.validateEvent=j,a.saveEvent=o,a.resultViewer=new e,a.eventTitleChanged=r,a.previewSuggestedItem=s,b.showStep4===!0&&i(),window.onbeforeunload=function(a){return b.majorInfoChanged?"Bent u zeker dat je de pagina wil verlaten? Gegevens die u hebt ingevoerd worden niet opgeslagen.":void 0},a.$on("changeTypicalAgeRange",function(c,d){a.eventFormData.typicalAgeRange=d,b.showStep5===!0&&(f.updateTypicalAgeRange(b),i())}),t.eventFormSaved=function(){g.$emit("eventFormSaved",b)}}angular.module("udb.event-form").controller("EventFormStep4Controller",a),a.$inject=["$scope","EventFormData","udbApi","appConfig","SearchResultViewer","eventCrud","$rootScope","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){a.descriptionCssClass="state-filling"}function j(){a.descriptionInfoVisible=!0,a.originalDescription=a.description}function k(d){d&&(a.description="");var e=a.description&&""!==a.description||d,f=a.description!==a.originalDescription||d;if(e&&f){a.descriptionInfoVisible=!1,a.savingDescription=!0,a.descriptionError=!1,b.setDescription(a.description.replace(new RegExp(String.fromCharCode(31),"g"),""),a.mainLanguage);var g=c.updateDescription(b,a.description);g.then(function(){a.savingDescription=!1,K.eventFormSaved(),a.description?a.descriptionCssClass="state-complete":a.descriptionCssClass="state-incomplete"},function(){a.savingDescription=!1,a.descriptionError=!0})}}function l(){return a.description?a.description.length:void 0}function m(b){function c(b){var c=b;return g.offerEditor.excludeOrganizerLabel&&""!==g.offerEditor.excludeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.excludeOrganizerLabel)<0:!0})),g.offerEditor.includeOrganizerLabel&&""!==g.offerEditor.includeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.includeOrganizerLabel)>=0:!1})),a.emptyOrganizerAutocomplete=c.length<=0,a.loadingOrganizers=!1,c}return a.loadingOrganizers=!0,d.suggestOrganizers(b).then(c)}function n(a){K.saveOrganizer(a)}function o(){b.priceInfo.length>0?h.getTicketSales(a.eventFormData.id,a.eventFormData.organizer).then(function(b){b?a.hasTicketSales=b:p()},function(){a.hasUitpasError=!0}):p()}function p(){function d(){K.eventFormSaved(),b.resetOrganizer(),f.$emit("eventOrganizerDeleted",{}),a.organizerCssClass="state-incomplete",a.savingOrganizer=!1}a.organizerError=!1,c.deleteOfferOrganizer(b).then(d,K.showAsyncOrganizerError)}function q(){function c(){a.organizer="",a.emptyOrganizerAutocomplete=!1,b.organizer.id?a.organizerCssClass="state-complete":a.organizerCssClass="state-incomplete"}var d=e.open({backdrop:"static",templateUrl:"templates/event-form-organizer-modal.html",controller:"EventFormOrganizerModalController",resolve:{organizerName:function(){return a.organizer}}});d.result.then(K.saveOrganizer,c)}function r(){_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-filling"),a.contactInfo.push({type:L.PHONE,value:"",booking:!1})}function s(b){a.contactInfo.splice(b,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete"),t()}function t(){if(a.savingContactInfo=!0,a.contactInfoError=!1,a.contactInfoForm.$valid){b.resetContactPoint(),_.forEach(a.contactInfo,function(a){a.booking?w(a):!_.isEmpty(a.value)&&_.includes(L,a.type)&&b.contactPoint[a.type].push(a.value)});var d=c.updateContactPoint(b);d.then(function(){K.eventFormSaved(),_.isEmpty(a.contactInfo)||(a.contactInfoCssClass="state-complete"),a.savingContactInfo=!1},function(){a.contactInfoError=!0,a.savingContactInfo=!1})}}function u(b){var c=_.find(a.contactInfo,{type:b.type,booking:!0});return b.booking||!c}function v(){var b=_.find(a.contactInfo,{booking:!0});return!!b}function w(b){var c=b.type,d=b.booking?b.value:"";a.bookingModel[c]!==d&&(a.bookingModel[c]=d,C())}function x(b){_.includes(L,b)&&(a.bookingModel[b]="",C())}function y(){a.websitePreviewEnabled=!1,b.bookingInfo.urlLabel=a.bookingModel.urlLabel,""!==a.bookingModel.urlLabelCustom&&(b.bookingInfo.urlLabel=a.bookingModel.urlLabelCustom),C()}function z(){a.websitePreviewEnabled=!0}function A(b,c){a.contactInfo[c].booking=!1,w(b),a.contactInfo.splice(c,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete")}function B(b){var c={},d=b[a.mainLanguage].value;return _.each(a.translatableLanguages,function(b){c[b]=_.findWhere(a.bookingOptions[b],{value:d}).label}),c}function C(){var d={};_.each(a.translatableLanguages,function(a){d[a]=J("reserve_places",a)}),b.bookingInfo=angular.extend({},{url:"",urlLabel:d,email:"",phone:"",availabilityStarts:b.bookingInfo.availabilityStarts?moment(b.bookingInfo.availabilityStarts).format():"",availabilityEnds:b.bookingInfo.availabilityEnds?moment(b.bookingInfo.availabilityEnds).format():""},a.bookingModel),"string"!=typeof b.bookingInfo.urlLabel?b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel):b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel),a.savingBookingInfo=!0,a.bookingInfoError=!1;var e=c.updateBookingInfo(b);e.then(function(){K.eventFormSaved(),a.bookingInfoCssClass="state-complete",a.savingBookingInfo=!1,a.bookingInfoError=!1,D()},function(){a.savingBookingInfo=!1,a.bookingInfoError=!0})}function D(){var b=a.bookingModel.url,c=a.bookingModel.phone,d=a.bookingModel.email;a.contactInfo.some(function(a){return a.value===b}),a.contactInfo.some(function(a){return a.value===c}),a.contactInfo.some(function(a){return a.value===d}),t()}function E(){e.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController"})}function F(a){e.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{mediaObject:function(){return a}}})}function G(a){e.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{image:function(){return a}}})}function H(a){function d(){b.selectMainImage(a)}c.selectMainImage(b,a).then(d)}function I(){a.contactInfo=_.flatten(_.map(b.contactPoint,function(a,b){return _.contains(L,b)?_.map(a,function(a){return{type:b,value:a,booking:!1}}):[]})),b.bookingInfo.url&&a.contactInfo.push({type:"url",value:b.bookingInfo.url,booking:!0}),b.bookingInfo.phone&&a.contactInfo.push({type:"phone",value:b.bookingInfo.phone,booking:!0}),b.bookingInfo.email&&a.contactInfo.push({type:"email",value:b.bookingInfo.email,booking:!0}),a.contactInfo.length>0&&(a.contactInfoCssClass="state-complete"),b.priceInfo&&(a.price=b.priceInfo,a.priceCssClass="state-complete")}function J(a,b){var c=[];switch(b){case"nl":c=[{value:"buy_tickets",label:"Koop tickets"},{value:"reserve_places",label:"Reserveer plaatsen"},{value:"check_availability",label:"Controleer beschikbaarheid"},{value:"subscribe",label:"Schrijf je in"}];break;case"fr":c=[{value:"buy_tickets",label:"Achetez des tickets"},{value:"reserve_places",label:"Réservez des places"},{value:"check_availability",label:"Controlez la disponibilité"},{value:"subscribe",label:"Inscrivez-vous"}];break;case"en":c=[{value:"buy_tickets",label:"Buy tickets"},{value:"reserve_places",label:"Reserve places"},{value:"check_availability",label:"Check availability"},{value:"subscribe",label:"Subscribe"}];break;case"de":c=[{value:"buy_tickets",label:"Tickets kaufen"},{value:"reserve_places",label:"Platzieren Sie eine Reservierung"},{value:"check_availability",label:"Verfügbarkeit prüfen"},{value:"subscribe",label:"Melde dich an"}]}return _.findWhere(c,{value:a}).label}var K=this,L=Object.freeze({EMAIL:"email",PHONE:"phone",URL:"url"});a.eventFormData=b,a.mainLanguage=b.getMainLanguage(),a.description=b.getDescription(a.mainLanguage),a.descriptionCssClass=a.description?"state-complete":"state-incomplete",a.savingDescription=!1,a.descriptionError=!1,a.originalDescription="",a.organizerCssClass=b.organizer.name?"state-complete":"state-incomplete",a.organizer="",a.emptyOrganizerAutocomplete=!1,a.loadingOrganizers=!1,a.organizerError=!1,a.savingOrganizer=!1,a.disablePriceInfo=_.get(g.offerEditor,"disablePriceInfo"),a.translatableLanguages=g.translatableLanguages,a.editBookingPhone=!b.bookingInfo.phone,a.editBookingEmail=!b.bookingInfo.email,a.editBookingUrl=!b.bookingInfo.url,a.bookingModel={urlRequired:!1,emailRequired:!1,phoneRequired:!1,url:b.bookingInfo.urlLabel?b.bookingInfo.url:"",urlLabel:{},urlLabelCustom:"",phone:b.bookingInfo.phone?b.bookingInfo.phone:"",email:b.bookingInfo.email?b.bookingInfo.email:""},a.newBookingModel={},a.bookingOptions=[],_.each(a.translatableLanguages,function(b){a.bookingOptions[b]=[{value:"buy_tickets",label:J("buy_tickets",b)},{value:"reserve_places",label:J("reserve_places",b)},{value:"check_availability",label:J("check_availability",b)},{value:"subscribe",label:J("subscribe",b)}]}),b.bookingInfo.urlLabel?(a.bookingModel.urlLabel=[],a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{label:b.bookingInfo.urlLabel}),void 0===a.usedBookingOption&&(a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{value:"reserve_places"})),"string"==typeof b.bookingInfo.urlLabel?_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})}):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})})):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=a.bookingOptions[b][1]}),a.usedBookingOption&&!_.find(a.bookingOptions[a.mainLanguage],a.usedBookingOption)&&a.bookingOptions[a.mainLanguage].unshift(a.usedBookingOption),a.viaWebsite=!b.bookingInfo.url,a.viaEmail=!b.bookingInfo.email,a.viaPhone=!b.bookingInfo.phone,a.websitePreviewEnabled=!1,a.bookingPeriodPreviewEnabled=!1,a.bookingPeriodShowValidation=!1,a.bookingInfoCssClass="state-incomplete",a.toggleBookingType=w,a.saveBookingInfo=C,a.removeDuplicateContactBooking=D, -a.saveWebsitePreview=y,a.enableWebsitePreview=z,a.showBookingOption=u,a.deleteBookingInfo=A,a.removeBookingInfo=x,a.hasBookingInfo=v,a.translateBookingInfoUrlLabels=J,a.contactInfoCssClass="state-incomplete",a.savingContactInfo=!1,a.contactInfoError=!1,a.contactInfo=[],a.alterDescription=i,a.focusDescription=j,a.saveDescription=k,a.countCharacters=l,a.getOrganizers=m,a.selectOrganizer=n,a.deleteOrganizerHandler=o,a.openOrganizerModal=q,a.deleteContactInfo=s,a.saveContactInfo=t,a.addContactInfo=r,a.hasTicketSales=!1,a.hasUitpasError=!1,a.openUploadImageModal=E,a.removeImage=G,a.editImage=F,a.selectMainImage=H,I(),K.eventFormSaved=function(){f.$emit("eventFormSaved",b)},K.showAsyncOrganizerError=function(){a.organizerError=!0,a.savingOrganizer=!1},K.saveOrganizer=function(d){function e(){a.emptyOrganizerAutocomplete=!1,a.organizerError=!1,a.savingOrganizer=!0,a.organizer=""}function g(){K.eventFormSaved(),f.$emit("eventOrganizerSelected",d),a.organizerCssClass="state-complete",a.savingOrganizer=!1}b.organizer=d,e(),c.updateOrganizer(b).then(g,K.showAsyncOrganizerError)}}angular.module("udb.event-form").controller("EventFormStep5Controller",a),a.$inject=["$scope","EventFormData","eventCrud","udbOrganizers","$uibModal","$rootScope","appConfig","udbUitpasApi"]}(),function(){"use strict";function a(a,c,d){var e=function(e,f,g,h){a.call(this,e),this.type="export",this.exportUrl="",this.eventCount=f,this.format=g,this.extension=_.find(d,{type:g}).extension,this.details=h,this.messages={},this.messages[c.CREATED]=b(this,c.CREATED,c),this.messages[c.STARTED]=b(this,c.STARTED,c),this.messages[c.FINISHED]=b(this,c.FINISHED,c),this.messages[c.FAILED]=b(this,c.FAILED,c)};return e.prototype=Object.create(a.prototype),e.prototype.constructor=e,e.prototype.getTemplateName=function(){var a;switch(this.state){case c.FINISHED:a="export-job";break;case c.FAILED:a="failed-job";break;default:a="base-job"}return a},e.prototype.getDescription=function(){return b(this,this.state,c)},e.prototype.info=function(a){a.location&&(this.exportUrl=a.location)},e.prototype.getTaskCount=function(){return this.eventCount},e}function b(a,b,c){var d="";return d=b===c.FAILED?"Exporteren van items mislukt":"Document ."+a.extension+" met "+a.eventCount+" items"}angular.module("udb.entry").factory("EventExportJob",a),a.$inject=["BaseJob","JobStates","ExportFormats"]}(),function(){"use strict";function a(a,b,c,d,e){function f(a){h=0>a?0:a>g.steps.length?g.steps.length:a}var g=this;g.exportLogoUrl=e.exportLogoUrl,g.dayByDay=!1,g.eventProperties=[{name:"name",include:!0,sortable:!1,excludable:!1},{name:"description",include:!1,sortable:!1,excludable:!0},{name:"labels",include:!1,sortable:!1,excludable:!0},{name:"calendarSummary",include:!0,sortable:!1,excludable:!1},{name:"image",include:!1,sortable:!1,excludable:!0},{name:"videos",inclue:!1,sortable:!1,excludable:!0},{name:"location",include:!0,sortable:!1,excludable:!1},{name:"address",include:!0,sortable:!1,excludable:!0},{name:"organizer",include:!1,sortable:!1,excludable:!0},{name:"priceInfo",include:!1,sortable:!1,excludable:!0},{name:"kansentarief",include:!1,sortable:!1,excludable:!0,format:c.OOXML},{name:"contactPoint",include:!1,sortable:!1,excludable:!0},{name:"bookingInfo",include:!1,sortable:!1,excludable:!0},{name:"status",include:!1,sortable:!1,excludable:!0},{name:"bookingAvailability",include:!1,sortable:!1,excludable:!0},{name:"attendance",include:!1,sortable:!1,excludable:!0},{name:"creator",include:!1,sortable:!1,excludable:!0},{name:"terms.theme",include:!0,sortable:!1,excludable:!0},{name:"terms.eventtype",include:!0,sortable:!1,excludable:!0},{name:"created",include:!1,sortable:!1,excludable:!0},{name:"modified",include:!1,sortable:!1,excludable:!0},{name:"available",include:!1,sortable:!1,excludable:!0},{name:"endDate",include:!1,sortable:!1,excludable:!0},{name:"startDate",include:!1,sortable:!1,excludable:!0},{name:"calendarType",include:!1,sortable:!1,excludable:!0},{name:"sameAs",include:!1,sortable:!1,excludable:!0},{name:"typicalAgeRange",include:!1,sortable:!1,excludable:!0},{name:"language",include:!1,sortable:!1,excludable:!0},{name:"audience",include:!1,sortable:!1,excludable:!0,format:c.OOXML}],g.exportFormats=_.map(c),g.brands=e.exportBrands,g.restrictedBrands=e.restrictedExportBrands,g.templateUrl=e.exportTemplateUrl,g.templates=e.exportTemplateTypes,d.getMyRoles().then(function(a){angular.forEach(a,function(b,c){g.brands=g.brands.concat(_.where(g.restrictedBrands,{role:a[c].uuid}))})}),g.customizations={brand:"",logo:g.exportLogoUrl+g.brands[0].logo,title:"",subtitle:"",footer:"",publisher:"",template:""},g.exportSteps={format:{name:"format",incomplete:function(){var a=g.format,b=!!_.find(g.exportFormats,{type:a,customizable:!0});return b?g.steps=[g.exportSteps.format,g.exportSteps.customize,g.exportSteps.confirm]:g.steps=[g.exportSteps.format,g.exportSteps.filter,g.exportSteps.confirm],!a}},customize:{name:"customize",incomplete:function(){return!g.customizations.brand||!g.customizations.title||!g.customizations.template}},filter:{name:"filter",incomplete:function(){return!_.find(g.eventProperties,function(a){return a.include===!0})}},confirm:{name:"confirm"}},g.steps=[g.exportSteps.format,g.exportSteps.confirm];var h=0;g.nextStep=function(){g.isStepCompleted()?f(h+1):g.hasErrors=!0},g.previousStep=function(){f(h-1)},g.isStepCompleted=function(){if(-1===h)return!0;var a=g.steps[h].incomplete;return"undefined"==typeof a||"function"==typeof a&&!a()},g.isOnFirstStep=function(){return 0===h},g.getActiveStepName=function(){return-1===h?"finished":g.steps[h].name},g.onLastStep=function(){return h>=g.steps.length-1},g["export"]=function(){var a,c,d=_.find(g.exportFormats,{type:g.format}),e=d&&d.customizable===!0;e?(c=g.customizations,c.logo=g.exportLogoUrl+c.brand.logo,c.brand=c.brand.name,c.template=c.template.name,a=[]):(c={},a=_.pluck(_.filter(g.eventProperties,"include"),"name")),b["export"](g.format,g.email,a,g.dayByDay,c),h=-1},g.format=g.exportFormats[0].type,g.email="",g.close=function(){a.dismiss("cancel")},g.eventCount=b.activeExport.eventCount}angular.module("udb.export").controller("EventExportController",a),a.$inject=["$uibModalInstance","eventExporter","ExportFormats","udbApi","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.activeExport={query:{},eventCount:0,selection:[]},f["export"]=function(b,g,h,i,j){var k=' AND workflowStatus:("APPROVED" OR "READY_FOR_VALIDATION")',l="("+f.activeExport.query.queryString+")"+k,m=f.activeExport.selection||[],n=f.activeExport.eventCount,o=j.brand||"",p=null,q=e.getObject("user"),r=c.exportEvents(l,g,b,h,i,m,j);return p={format:b,user:q.id,brand:o,queryString:l},r.success(function(c){var e=new d(c.commandId,n,b,p);a.addJob(e),e.start()}),r}}angular.module("udb.export").service("eventExporter",a),a.$inject=["jobLogger","appConfig","udbApi","EventExportJob","$cookies"]}(),function(){"use strict";angular.module("udb.export").constant("ExportFormats",{OOXML:{type:"ooxml",extension:"xlsx",label:"Office Open XML (Excel)",description:"Het standaard formaat van Excel vanaf Microsoft Office 2007."},PDF:{type:"pdf",label:"Als PDF",extension:"pdf",description:"Druk snel en eenvoudig items uit de UiTdatabank af. Kies een Vlieg, UiT-, of UiTPAS-sjabloon.",customizable:!0},JSON:{type:"json",label:"Als json",extension:"json",description:"Exporteren naar event-ld om de informatie voor ontwikkelaars beschikbaar te maken."}})}(),function(){"use strict";function a(){return{templateUrl:"templates/export-modal-buttons.directive.html",restrict:"E"}}angular.module("udb.export").directive("udbExportModalButtons",a)}(),function(){"use strict";function a(){function a(a){var c="undefined"!=typeof a?a:b.queryString;b.queryString=c,b.onChange({query:c})}var b=this;b.queryString="",b.find=a}angular.module("udb.management").component("udbQuerySearchBar",{templateUrl:"templates/query-search-bar.html",controller:a,controllerAs:"qsb",bindings:{onChange:"&",searchLabel:"@",helpLink:"@",helpLabel:"@"}})}(),function(){"use strict";function a(){return{restrict:"A",require:"^form",link:function(a,b,c,d){var e=b[0].querySelector("[name]"),f=angular.element(e),g=f.attr("name");f.bind("blur",function(){var a=d[g].$invalid;b.toggleClass("has-error",a).toggleClass("has-success",!a)})}}}angular.module("udb.management").directive("udbFormGroup",a)}(),function(){"use strict";function a(a,b,c){function d(){function b(){c.go("split.manageLabels.list")}f.creating=!0,a.create(f.label.name,f.label.isVisible,f.label.isPrivate).then(b,e)["finally"](function(){f.creating=!1})}function e(a){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}var f=this;f.creating=!1,f.create=d,f.label={name:"",isPrivate:!1,isVisible:!0}}angular.module("udb.management.labels").controller("LabelCreatorController",a),a.$inject=["LabelManager","$uibModal","$state"]}(),function(){"use strict";function a(a,b,c,d){function e(){function b(a){j(a.uuid)}p.renaming=!0,a.copy(p.label).then(b,g)["finally"](function(){p.renaming=!1,p.saving=!1})}function f(){p.saving=!0;var a=[],b=p.originalLabel.name!==p.label.name;b?e():(p.originalLabel.isVisible!==p.label.isVisible&&a.push(n()),p.originalLabel.isPrivate!==p.label.isPrivate&&a.push(o()),d.all(a)["finally"](function(){p.saving=!1})["catch"](g))}function g(a){j(p.label.uuid);b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}function h(){var a=c.id;j(a)}function i(a){p.label=a,k(a),l(a),p.originalLabel=_.cloneDeep(p.label)}function j(b){p.loadingError=!1,p.label=!1,a.get(b).then(i,m)}function k(a){return"visible"===a.visibility?a.isVisible=!0:a.isVisible=!1,a}function l(a){return"public"===a.privacy?a.isPrivate=!1:a.isPrivate=!0,a}function m(){p.loadingError="Label niet gevonden!"}function n(){var b=p.label.isVisible;return b?a.makeVisible(p.label):a.makeInvisible(p.label)}function o(){var b=p.label.isPrivate;return b?a.makePrivate(p.label):a.makePublic(p.label)}var p=this;p.updateVisibility=n,p.updatePrivacy=o,p.saving=!1,p.renaming=!1,p.save=f,h()}angular.module("udb.management.labels").controller("LabelEditorController",a),a.$inject=["LabelManager","$uibModal","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findLabels(b,c,d,!1)},b.get=function(b){return a.getLabelById(b)},b.create=function(b,c,d){return a.createLabel(b,c,d)},b.copy=function(b){return a.createLabel(b.name,b.isVisible,b.isPrivate,b.uuid)},b["delete"]=function(b){return a.deleteLabel(b.uuid)},b.makeInvisible=function(b){return a.updateLabel(b.uuid,"MakeInvisible")},b.makeVisible=function(b){return a.updateLabel(b.uuid,"MakeVisible")},b.makePrivate=function(b){return a.updateLabel(b.uuid,"MakePrivate")},b.makePublic=function(b){return a.updateLabel(b.uuid,"MakePublic")}}angular.module("udb.management.labels").service("LabelManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(a){return""===i.query?!0:a.length>=k}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.labels").controller("LabelsListController",a),a.$inject=["SearchResultGenerator","rx","$scope","LabelManager"]}(),function(){"use strict";function a(a){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a){return void 0===a||-1===a.indexOf(";")}d.$validators.semicolonLabel=e}}}angular.module("udb.management.labels").directive("udbSemicolonLabelCheck",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueLabel=g}}}angular.module("udb.management.labels").directive("udbUniqueLabel",a),a.$inject=["LabelManager","$q"]}(),function(){"use strict";function a(a){return[{name:"Valideren",permission:a.AANBOD_MODEREREN,notificationCount:0,index:1,sref:"management.moderation.list",icon:"fa fa-flag"},{name:"Gebruikers",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:2,sref:"management.users.list",icon:"fa fa-user"},{name:"Rollen",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:3,sref:"split.manageRoles.list",icon:"fa fa-users"},{name:"Labels",permission:a.LABELS_BEHEREN,notificationCount:0,index:4,sref:"split.manageLabels.list",icon:"fa fa-tag"},{name:"Organisaties",permission:a.ORGANISATIES_BEHEREN,notificationCount:0,index:5,sref:"management.organizers.search",icon:"fab fa-slideshare"}]}angular.module("udb.management").factory("managementListItemDefaults",a),a.$inject=["RolePermission"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){var b="";return _.forEach(a,function(a){void 0!==a.constraints&&a.constraints.v3&&(b+=(b?" OR ":"")+a.constraints.v3)}),b=b?"("+b+")":"",c.find(b,10,0).then(function(a){return a.totalItems})}function h(b){var c=_.find(e,{permission:a.AANBOD_MODEREREN}),d=angular.copy(c);return d.notificationCount=b,d}function i(b){var c=d.defer(),e=_.filter(b,function(b){return _.includes(b.permissions,a.AANBOD_MODEREREN)});return e.length>0?g(e).then(h).then(function(a){c.resolve([a])}):c.resolve([]),c.promise}function j(b){var c=_.without(b,a.AANBOD_MODEREREN),f=_.filter(e,function(a){return _.includes(c,a.permission)});return d.resolve(f)}var k=b.getPermissions().then(j),l=c.getMyRoles().then(i);return d.all([k,l]).then(_.flatten)}angular.module("udb.management").factory("managementListItems",a),a.$inject=["RolePermission","authorizationService","ModerationService","$q","managementListItemDefaults","appConfig"]}(),function(){"use strict";function a(a,b,c,d){function e(a){p(a||{title:"Dit aanbod kon niet geladen worden."})}function f(){return"true"===r["continue"]}function g(){return r.offer.workflowStatus===c.READY_FOR_VALIDATION}function h(){return r.offer.workflowStatus===c.APPROVED}function i(){return r.offer.workflowStatus===c.REJECTED}function j(){r.error=!1,a.approve(r.offer).then(function(){q(c.APPROVED)})["catch"](p)}function k(){var a=d.open({templateUrl:"templates/reject-offer-confirm-modal.html",controller:"RejectOfferConfirmModalCtrl"});a.result.then(l)}function l(a){"DUPLICATE"===a?n():"INAPPROPRIATE"===a?o():m(a)}function m(b){r.error=!1,a.reject(r.offer,b).then(function(){q(c.REJECTED)})["catch"](p)}function n(){r.error=!1,a.flagAsDuplicate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function o(){r.error=!1,a.flagAsInappropriate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function p(a){r.error=a.title+(a.detail?" "+a.detail:"")}function q(a){r.offer.workflowStatus=a,window.parent.postMessage({source:"UDB",type:"OFFER_MODERATED",status:a},"*")}var r=this,s="nl";r.loading=!0,r.offer={},r.error=!1,r.isReadyForValidation=g,r.isApproved=h,r.isRejected=i,r.approve=j,r.askForRejectionReasons=k,r.continueValidation=f,a.getModerationOffer(r.offerId).then(function(a){a.updateTranslationState(),r.offer=b(a,s)})["catch"](e)["finally"](function(){r.loading=!1})}angular.module("udb.management.moderation").component("udbModerationOffer",{templateUrl:"templates/moderation-offer.html",controller:a,controllerAs:"moc",bindings:{"continue":"@",offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","OfferWorkflowStatus","$uibModal"]}(),function(){"use strict";function a(a,b,c,d){function e(a){f(a||{title:"Dit aanbod kon niet geladen worden."})}function f(a){g.error=a.title+(a.detail?" "+a.detail:"")}var g=this,h="nl";g.loading=!0,g.offer={},g.error=!1,g.uitId=_.get(d,"uitidUrl"),c.isGodUser().then(function(a){g.isGodUser=a}),a.getModerationOffer(g.offerId).then(function(a){a.updateTranslationState(),g.offer=b(a,h),_.isEmpty(g.offer.description)&&(g.offer.description="")})["catch"](e)["finally"](function(){g.loading=!1})}angular.module("udb.management.moderation").component("udbModerationSummary",{templateUrl:"templates/moderation-summary.html",controller:a,controllerAs:"moc",bindings:{offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","authorizationService","appConfig"]}(),function(){"use strict";function a(a,b,c){function d(){var d;return a.error=!1,a.response.type&&("OTHER"!==a.response.type||a.response.reason&&a.response.reason.length)?(d="OTHER"===a.response.type?a.response.reason:a.response.type,void b.close(c.resolve(d))):void(a.error="Gelieve een reden op te geven.")}function e(){b.dismiss()}a.cancel=e,a.reject=d,a.response={}}angular.module("udb.management.moderation").controller("RejectOfferConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","$q"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(b){return o=e.createObservableFunction(s,"queryChanged"),p=e.createObservableFunction(s,"pageChanged"),q=new d(a,o,p,t,b.constraints.v3),r=q.getSearchResult$(),r.safeApply(f,m).subscribe(),o.safeApply(f,function(){s.loading=!0}).subscribe(),p.subscribe(function(){h.scrollTop(0)}),g.resolve()}function k(a){var b=_.filter(a,function(a){var b=_.filter(a.permissions,function(a){return a===c.AANBOD_MODEREREN});return b.length>0});return b.length?(s.roles=b,s.selectedRole=s.roles[0],g.resolve(s.selectedRole)):g.reject({title:"Er is huidig geen moderator rol gekoppeld aan jouw gebruiker."})}function l(a){s.queryChanged(a.constraints.v3)}function m(a){var b=a.error;b?(n(b),s.searchResult={}):s.searchResult=a,s.loading=!1}function n(a){s.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return s.errorMessage}}})}var o,p,q,r,s=this,t=10;s.roles=[],s.loading=!0,s.errorMessage=!1,s.selectedRole={},s.searchResult={},s.findModerationContent=l,a.getMyRoles().then(k).then(j)["catch"](n)["finally"](function(){s.loading=!1})}angular.module("udb.management.moderation").controller("ModerationListController",a),a.$inject=["ModerationService","$uibModal","RolePermission","SearchResultGenerator","rx","$scope","$q","$document","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.getMyRoles=function(){return a.getMyRoles()},f.find=function(b,c,d){return a.findToModerate(b,d,c)},f.getModerationOffer=function(b){return a.getOffer(new URL(b))},f.approve=function(b){return a.patchOffer(b["@id"],"Approve")},f.reject=function(b,c){return a.patchOffer(b["@id"],"Reject",c)},f.flagAsDuplicate=function(b){return a.patchOffer(b["@id"],"FlagAsDuplicate")},f.flagAsInappropriate=function(b){return a.patchOffer(b["@id"],"FlagAsInappropriate")}}angular.module("udb.management.moderation").service("ModerationService",a),a.$inject=["udbApi","OfferWorkflowStatus","jobLogger","BaseJob","$q"]}(),function(){"use strict";angular.module("udb.management.moderation").constant("OfferWorkflowStatus",{DRAFT:"DRAFT",READY_FOR_VALIDATION:"READY_FOR_VALIDATION",APPROVED:"APPROVED",REJECTED:"REJECTED",DELETED:"DELETED"})}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){g.saving=!1,g.error=!0}g.error=!1,g.saving=!0,b["delete"](c).then(function(){a.close(),d.$emit("organizationDeleted",c)})["catch"](e)}function f(){a.dismiss()}var g=this;g.organization=c,g.saving=!1,g.error=!1,g.cancelRemoval=f,g.deleteOrganization=e}angular.module("udb.management.organizers").controller("OrganizationDeleteModalController",a),a.$inject=["$uibModalInstance","OrganizerManager","organization","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"A",templateUrl:"templates/organization-search-item.html",bindToController:{organizationSearchItem:"=a}}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e(k)),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.organizers").controller("OrganizationSearchController",a),a.$inject=["SearchResultGenerator","rx","$scope","OrganizerManager"]}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){a.saving=!1,a.error=!0}a.error=!1,a.saving=!0,c.deleteRole(d).then(b.close)["catch"](e)}function f(){b.dismiss()}a.item=d,a.saving=!1,a.error=!1,a.cancelRemoval=f,a.deleteRole=e}angular.module("udb.management.roles").controller("RoleDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","RoleManager","item"]}(),function(){"use strict";angular.module("udb.management.roles").constant("RolePermission",{AANBOD_BEWERKEN:"AANBOD_BEWERKEN",AANBOD_MODEREREN:"AANBOD_MODEREREN",AANBOD_VERWIJDEREN:"AANBOD_VERWIJDEREN",AANBOD_HISTORIEK:"AANBOD_HISTORIEK",ORGANISATIES_BEWERKEN:"ORGANISATIES_BEWERKEN",ORGANISATIES_BEHEREN:"ORGANISATIES_BEHEREN",GEBRUIKERS_BEHEREN:"GEBRUIKERS_BEHEREN",LABELS_BEHEREN:"LABELS_BEHEREN",VOORZIENINGEN_BEWERKEN:"VOORZIENINGEN_BEWERKEN",PRODUCTIES_AANMAKEN:"PRODUCTIES_AANMAKEN",FILMS_AANMAKEN:"FILMS_AANMAKEN"})}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){j().then(function(a){return z.availablePermissions=a,A?i(A):e.resolve()})["catch"](y)["finally"](function(){z.loadedRole=!0,z.loadedRolePermissions=!0,z.loadedRoleUsers=!0,z.loadedRoleLabels=!0})}function i(b){return a.get(b).then(function(a){z.role=a,z.role.users=[],z.role.labels=[],z.role.permissions=_.filter(z.availablePermissions,function(b){return _.contains(a.permissions,b.key)})},function(a){return a.detail=a.title,a.title="De rol kon niet gevonden worden.",e.reject(a)}).then(function(){return k(b)}).then(function(){return l(b)})}function j(){function a(a){return _.map(a,function(a,b){return{key:b,name:a}})}var b=_.values(g);return f(b).then(a)}function k(b){return a.getRoleUsers(b).then(function(a){z.role.users=a},function(a){return a.detail=a.title,a.title="De leden van deze rol konden niet geladen worden.",e.reject(a)})}function l(b){return a.getRoleLabels(b).then(function(a){z.role.labels=a},function(a){return a.detail=a.title,a.title="De labels van deze rol konden niet geladen worden.",e.reject(a)})}function m(a){A=a.roleId,z.role.uuid=A}function n(){!z.role.uuid&&z.role.name&&a.create(z.role.name).then(m,y)["finally"](function(){z.saving=!1})}function o(){return _.has(z.role.constraints,"v3")&&null!==z.role.constraints.v3}function p(){z.saving=!0,a.createRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function q(){z.saving=!0,a.updateRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function r(){z.saving=!0,a.removeRoleConstraint(A).then(function(){z.editConstraint=!1,_.has(z.role.constraints,"v3")&&delete z.role.constraints.v3},y)["finally"](function(){z.saving=!1})}function s(){z.saving=!0,a.updateRoleName(A,z.role.name).then(function(){z.editName=!1},y)["finally"](function(){z.saving=!1})}function t(b){z.loadedRolePermissions=!1;var c=e.reject();_.find(z.role.permissions,{key:b.key})?(z.role.permissions=_.reject(z.role.permissions,{key:b.key}),c=a.removePermissionFromRole(b.key,A)):(z.role.permissions.push(b),c=a.addPermissionToRole(b.key,A)),c["catch"](y)["finally"](function(){z.loadedRolePermissions=!0})}function u(b){z.saving=!0,a.addLabelToRole(A,b.uuid).then(function(){z.role.labels.push(b)},y)["finally"](function(){z.saving=!1})}function v(b){z.saving=!0,a.removeLabelFromRole(A,b.uuid).then(function(){var a=z.role.labels.indexOf(b);z.role.labels.splice(a,1)},y)["finally"](function(){z.saving=!1})}function w(b){var c=_.pick(z.role,["uuid","name","constraint"]);z.saving=!0,a.removeUserFromRole(c,b).then(function(){var a=z.role.users.indexOf(b);z.role.users.splice(a,1)},y)["finally"](function(){z.saving=!1})}function x(){z.addingUser=!0;var c=!1;b.findUserWithEmail(z.email).then(function(a){var b=!1;return c=a,angular.forEach(z.role.users,function(c){c.uuid===a.uuid&&(b=!0)}),b?e.reject({title:"De gebruiker hangt al aan deze rol."}):a}).then(function(b){var c=_.pick(z.role,["uuid","name","constraint"]);return a.addUserToRole(b,c)}).then(function(){z.role.users.push(c),z.form.email.$setViewValue(""),z.form.email.$setPristine(!0),z.form.email.$render()})["catch"](y)["finally"](function(){z.addingUser=!1})}function y(a){z.errorMessage=a.title+(a.detail?" "+a.detail:"");c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return z.errorMessage}}})}var z=this,A=d.id;z.saving=!1,z.loadedRole=!1,z.loadedRolePermissions=!1,z.loadedRoleUsers=!1,z.loadedRoleLabels=!1,z.addingUser=!1,z.role={permissions:[],users:[],labels:[]},z.availablePermissions=[],z.errorMessage=!1,z.editName=!1,z.editConstraint=!1,z.addUser=x,z.addLabel=u,z.createRole=n,z.removeLabel=v,z.removeUser=w,z.updatePermission=t,z.updateName=s,z.createConstraint=p,z.updateConstraint=q,z.removeConstraint=r,z.constraintExists=o,h()}angular.module("udb.management.roles").controller("RoleFormController",a),a.$inject=["RoleManager","UserManager","$uibModal","$stateParams","$q","$translate","RolePermission"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findRoles(b,c,d)},b.get=function(b){return a.getRoleById(b)},b.getRolePermissions=function(b){return a.getRolePermissions(b)},b.getRoleUsers=function(b){return a.getRoleUsers(b)},b.create=function(b){return a.createRole(b)},b.addPermissionToRole=function(b,c){return a.addPermissionToRole(b,c)},b.removePermissionFromRole=function(b,c){return a.removePermissionFromRole(b,c)},b.addUserToRole=function(b,c){return a.addUserToRole(b.uuid,c.uuid)},b.updateRoleName=function(b,c){return a.updateRoleName(b,c)},b.createRoleConstraint=function(b,c){return a.createRoleConstraint(b,c)},b.updateRoleConstraint=function(b,c){return a.updateRoleConstraint(b,c)},b.removeRoleConstraint=function(b){return a.removeRoleConstraint(b)},b.addLabelToRole=function(b,c){return a.addLabelToRole(b,c)},b.getRoleLabels=function(b){return a.getRoleLabels(b)},b.removeLabelFromRole=function(b,c){return a.removeLabelFromRole(b,c)},b.removeUserFromRole=function(b,c){return a.removeUserFromRole(b.uuid,c.uuid)},b.deleteRole=function(b){return a.removeRole(b.uuid)}}angular.module("udb.management.roles").service("RoleManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(a){return""===m.query?!0:a.length>=o}function i(a){m.problem=a}function j(){m.problem=!1}function k(a){var b=a.error;b?(i(b),m.searchResult={}):(j(),m.searchResult=a),m.loading=!1}function l(a){var b=e.open({templateUrl:"templates/role-delete-confirm-modal.html",controller:"RoleDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});b.result.then(function(){f.reload()})}var m=this,n=10,o=3,p=b.createObservableFunction(m,"queryChanged"),q=p.filter(h),r=b.createObservableFunction(m,"pageChanged"),s=new a(d,q,r,n),t=s.getSearchResult$();m.openDeleteConfirmModal=l,m.loading=!1,m.query="",m.page=0,m.minQueryLength=o,p.safeApply(c,function(a){m.query=a}).subscribe(),t.safeApply(c,k).subscribe(),q.merge(r).safeApply(c,function(){m.loading=!0}).subscribe(),r.subscribe(function(){g.scrollTop(0)})}angular.module("udb.management.roles").controller("RolesListController",a),a.$inject=["SearchResultGenerator","rx","$scope","RoleManager","$uibModal","$state","$document"]}(),function(){"use strict";function a(a){function b(b){a.find(b,6,0).then(function(a){d(a.member)})["finally"](function(){e.refreshing=!1})}function c(a){e.refreshing=!0,d([]),b(a)}function d(a){e.availableLabels=a}var e=this;e.availableLabels=[],e.suggestLabels=c,e.minimumInputLength=2,e.findDelay=300,e.label=null}angular.module("udb.management.roles").component("udbSearchLabel",{templateUrl:"templates/search-label.html",controller:a,controllerAs:"select",bindings:{labelAdded:"&",labelRemoved:"&"}}),a.$inject=["LabelManager"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueRole=g}}}angular.module("udb.management.roles").directive("udbUniqueRole",a),a.$inject=["RoleManager","$q"]}(),function(){"use strict";function a(a){function b(a,b){return{query:a,offset:b}}function c(a){return function(b){return(b-1)*a}}var d=function(d,e,f,g,h){h=h||"",this.searchService=d,this.itemsPerPage=g,this.query$=e.debounce(300).startWith(h),this.offset$=f.map(c(g)).startWith(0),this.searchParameters$=a.Observable.combineLatest(this.query$,this.offset$,b)};return d.prototype.constructor=d,d.prototype.find=function(b){var c=this;return a.Observable.fromPromise(c.searchService.find(b.query,c.itemsPerPage,b.offset))["catch"](function(b){return a.Observable.just({error:b})})},d.prototype.getSearchResult$=function(){var a=this;return a.searchParameters$.flatMap(a.find.bind(a))},d}angular.module("udb.management").factory("SearchResultGenerator",a),a.$inject=["rx"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.resolve({"@context":"http://www.w3.org/ns/hydra/context.jsonld","@type":"PagedCollection",itemsPerPage:10,totalItems:0,member:[],firstPage:"http://du.de/items?page=1",lastPage:"http://du.de/items?page=1",nextPage:"http://du.de/items?page=1"})}}angular.module("udb.management").service("SearchService",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b,c,d){function e(b){a.findUserWithEmail(b).then(function(b){f(b),a.getRoles(b.uuid).then(g)})}function f(a){j.user=a}function g(a){j.roles=a}function h(a){return d.when(a.task.promise)}function i(a){return a.perform()["catch"](a.undo)}var j=this,k=c.email;e(k),j.deleteRole=function(a){var c={role:a,style:"list-group-item-danger",perform:_.once(function(){return b.removeUserFromRole(a,j.user).then(h)}),undo:function(){console.log("¯\\_(ツ)_/¯")}};j.queueAction(c)},j.queueAction=function(a){var b=j.actions?j.actions:[];j.getRoleAction(a.role)||(b.push(a),j.actions=b)},j.getRoleStyle=function(a){var b=j.getRoleAction(a);return b?b.style:null},j.getRoleAction=function(a){return _.find(j.actions,{role:{uuid:a.uuid}})},j.lookupRoles=function(a){return b.find(a,20).then(function(a){return _.reject(a.member,function(a){return _.find(j.roles,{uuid:a.uuid})})})},j.addRole=function(a){if(!_.find(j.roles,{uuid:a.uuid})){j.roles.push(a),j.roleLookupName="";var c={role:a,style:"list-group-item-success",perform:_.once(function(){return b.addUserToRole(j.user,a).then(h); -}),undo:function(){j.roles=_.reject(j.roles,{uuid:a.uuid})}};j.queueAction(c)}},j.save=function(){j.saving=!0;var a=_.map(j.actions,i);d.all(a).then(function(){e(k),j.saving=!1,j.actions=[]})},j.undoAction=function(a){var b=j.getRoleAction(a);b.undo(),j.actions=_.reject(j.actions,{role:{uuid:a.uuid}})}}angular.module("udb.management.users").controller("UserEditorController",a),a.$inject=["UserManager","RoleManager","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.findUserWithEmail=function(b){return a.findUserWithEmail(b)},b.getRoles=function(b){return a.getUserRoles(b)}}angular.module("udb.management.users").service("UserManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){e.status="problem",e.problem=a}function d(){e.status="idle",e.problem=!1}var e=this;e.status="idle",e.query="",e.problem="",e.handleChange=function(){"problem"===e.status&&d()},e.handleSubmit=function(){e.status="loading",a.findUserWithEmail(e.query).then(function(a){e.status="idle",b.path("/manage/users/"+a.email)},function(a){404===a.status?e.status="notFound":c(a.title)})}}angular.module("udb.management.users").controller("UsersListController",a),a.$inject=["UserManager","$location"]}(),function(){"use strict";function a(a,b,c,d){var e=this;e.createImage=function(a,b,f,g){function h(a){return a.split("/").pop()}function i(a){return l.indexOf(a)>=0}function j(a){e.getImage(a.data.imageId).then(k.resolve,k.reject)}var k=c.defer(),l=["png","jpeg","jpg","gif"];return i(h(a.type))?d.uploadMedia(a,b,f,g).then(j,k.reject):k.reject({data:{title:"The uploaded file is not an image."}}),k.promise},e.getImage=function(a){function b(b){var d=b;return d.id=a,c.resolve(d)}return d.getMedia(a).then(b)}}angular.module("udb.media").service("MediaManager",a),a.$inject=["jobLogger","appConfig","$q","udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(){f()&&c.go(g.destination.state,{id:a.id})}function f(){return!!_.get(a,"location.id")}var g=this;g.completeMigration=e;var h={description:d.instant("eventForm.step4.continue"),state:"split.eventEdit"};g.destination=b.destination||h,g.migrationReady=f}angular.module("udb.migration").component("udbEventMigrationFooter",{templateUrl:"templates/event-migration-footer.component.html",controller:a,controllerAs:"migration"}),a.$inject=["EventFormData","$stateParams","$state","$translate"]}(),function(){"use strict";function a(){function a(a){return!!_.get(a,"location.id")}var b=this,c={location:a};b.checkRequirements=function(a){var b=_(c).pick(function(b){return!b(a)}).keys();return b.value()}}angular.module("udb.migration").service("eventMigration",a)}(),function(){"use strict";function a(a){function b(b){a.translateAddress(c.offer,b,c.translatedAddresses[b])}var c=this;c.translatedAddresses={},c.originalAddress=_.get(c.offer.address,c.offer.mainLanguage,"")||_.get(c.offer.address,"nl","")||_.get(c.offer,"address",""),c.translatedAddresses=_.get(c.offer,"address"),_.forEach(c.activeLanguages,function(a,b){void 0===c.translatedAddresses[b]&&(c.translatedAddresses[b]={postalCode:c.originalAddress.postalCode,addressLocality:c.originalAddress.addressLocality,addressCountry:c.originalAddress.addressCountry})}),c.saveTranslatedAddress=b}angular.module("udb.offer-translate").component("offerTranslateAddress",{templateUrl:"templates/translate-address.html",controller:a,controllerAs:"tac",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"description",b,c.translatedDescriptions[b]).then(function(){})}var c=this;c.translatedDescriptions={},c.originalDescription=_.get(c.offer.description,c.offer.mainLanguage,"")||_.get(c.offer.description,"nl","")||_.get(c.offer,"description",""),c.originalDescription=_.isEmpty(c.originalDescription)?"":c.originalDescription,c.translatedDescriptions=_.get(c.offer,"description"),c.saveTranslatedDescription=b}angular.module("udb.offer-translate").component("offerTranslateDescription",{templateUrl:"templates/translate-description.html",controller:a,controllerAs:"ttd",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d){function e(b){d.mainLanguage=b;a.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController",resolve:{EventFormData:function(){return d}}})}function f(a,b){var d=null,e=new XMLHttpRequest;e.open("GET",a.contentUrl),e.responseType="blob",e.onload=function(){d=e.response,c.createImage(d,a.description,a.copyrightHolder,b).then(i,j)},e.send()}function g(b){a.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{EventFormData:function(){return d},mediaObject:function(){return b}}})}function h(b){a.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{EventFormData:function(){return d},image:function(){return b}}})}function i(a){function c(){d.addImage(a)}b.addImage(d,a).then(c,j)}function j(a){var b=a.data.title,c="Er ging iets mis bij het opslaan van de afbeelding.";switch(b){case"The uploaded file is not an image.":c="Het geüpload bestand is geen geldige afbeelding. Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.";break;case"The file size of the uploaded image is too big.":c="Het geüpload bestand is te groot."}k.saving=!1,k.error=c}var k=this;d.init(),k.eventFormData=d,k.offer.mediaObject&&(d.mediaObjects=k.offer.mediaObject||[]),d.name=k.offer.name,d.apiUrl=k.offer.apiUrl,d.mainLanguage=k.offer.mainLanguage,k.openUploadImageModal=e,k.removeImage=h,k.editImage=g,k.copyImage=f}angular.module("udb.offer-translate").component("offerTranslateImages",{templateUrl:"templates/translate-images.html",controller:a,controllerAs:"tic",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["$uibModal","eventCrud","MediaManager","EventFormData"]}(),function(){"use strict";function a(a){function b(){for(var b in e.offer.priceInfo)if(b>0){var c={};c[e.offer.mainLanguage]=e.originalTariffs[b-1],e.offer.priceInfo[b].name=_.merge(c,e.translatedTariffs[b-1])}a.updatePriceInfo(e.offer)}function c(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name[e.offer.mainLanguage]?e.offer.priceInfo[b].name[e.offer.mainLanguage]:e.offer.priceInfo[b].name);return a}function d(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name);return a}var e=this;e.translatedTariffs=[],e.originalTariffs=c(),e.translatedTariffs=d(),e.saveTranslatedTariffs=b}angular.module("udb.offer-translate").component("offerTranslateTariffs",{templateUrl:"templates/translate-tariffs.html",controller:a,controllerAs:"ttsc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["eventCrud"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"name",b,c.translatedNames[b]).then(function(){})}var c=this;c.translatedNames={},c.originalName=_.get(c.offer.name,c.offer.mainLanguage,null)||_.get(c.offer.name,"nl",null)||_.get(c.offer,"name",""),c.translatedNames=_.get(c.offer,"name"),c.saveTranslatedName=b}angular.module("udb.offer-translate").component("offerTranslateTitle",{templateUrl:"templates/translate-title.html",controller:a,controllerAs:"ttc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(b){a.language=f.use()||"nl",a.cachedOffer=b,a.apiUrl=b.apiUrl,a.mainLanguage=b.mainLanguage?b.mainLanguage:"nl",a.translatedOffer=d(b,a.language,!0),a.originalName=a.translatedOffer.name,a.offerType=b.url.split("/").shift(),"event"===a.offerType?(a.isEvent=!0,a.isPlace=!1):(a.isEvent=!1,a.isPlace=!0),_.forEach(a.cachedOffer.name,function(b,c){a.activeLanguages[c]&&(a.activeLanguages[c].active=!0)}),a.activeLanguages[a.mainLanguage].main=!0,a.loaded=!0}function i(){console.log("offer not found")}function j(a){a?c.getOffer(a).then(h):i()}function k(){var b=a.cachedOffer.id.toString(),c=b.split("/").pop();g.go("split.eventEdit",{id:c})}function l(){g.go("split.footer.dashboard")}a.apiUrl="",a.loaded=!1,a.mainLanguage="",a.languages=["nl","fr","en","de"],a.activeLanguages={nl:{active:!1,main:!1},fr:{active:!1,main:!1},en:{active:!1,main:!1},de:{active:!1,main:!1}},a.openEditPage=k,a.goToDashboard=l,e.when(b).then(j,i)}angular.module("udb.offer-translate").controller("OfferTranslateController",a),a.$inject=["$scope","offerId","udbApi","jsonLDLangFilter","$q","$translate","$state"]}(),function(){"use strict";function a(){return{templateUrl:"templates/offer-translate.html",restrict:"EA"}}angular.module("udb.offer-translate").directive("udbOfferTranslate",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){s.availableCountries=e.offerEditor.countries,s.defaultCountry=_.find(s.availableCountries,function(a){return a["default"]}),s.selectedCountry=s.defaultCountry,""!==s.address.addressCountry?s.selectedCountry={code:s.address.addressCountry,"default":!0}:s.selectedCountry=s.defaultCountry,s.address.addressCountry=s.selectedCountry.code,s.cities="BE"===s.selectedCountry.code?c:d,s.selectedCity="",s.requiredAddress=!1,s.address.addressLocality&&(s.hasAddress=!0,s.selectedCity=s.address.postalCode+" "+s.address.addressLocality,s.requiredAddress=!0)}function i(){s.streetHasErrors=!1,s.cityHasErrors=!1,s.zipValidateError=!1,s.zipHasErrors=!1,s.addressHasErrors=!1,s.addressRemovedError=!1,s.addressRemovedSuccess=!1}function j(){i(),s.requiredAddress?((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))):(""!==s.selectedCity&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),""!==s.address.streetAddress&&(""===s.selectedCity&&(s.cityHasErrors=!0),(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),"NL"===s.selectedCountry.code&&""!==s.address.postalCode&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),s.zipValidateError=!k(s.address.postalCode))),r()}function k(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function l(a){return function(b){var c=(a.length,a.match(/\w+/g)),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}}function m(a){return function(c){return new b(a,c.label)}}function n(a,b){"BE"===s.selectedCountry.code&&(s.address.postalCode=a.zip),s.address.addressLocality=a.name,s.cityAutocompleteTextField="",s.selectedCity=b,j()}function o(){s.address.postalCode="",s.address.addressLocality="",s.selectedCity="",s.cityAutocompleteTextField="",j()}function p(){"NL"===s.selectedCountry.code?s.cities=d:s.cities=c,s.address.addressCountry=s.selectedCountry.code,o()}function q(){s.address.streetAddress="",o(),g.removeOrganizerAddress(t).then(function(a){s.hasAddress=!1,s.addressRemovedSuccess=!0})["catch"](function(a){s.addressRemovedError=!0})}function r(){s.addressHasErrors=s.streetHasErrors||s.cityHasErrors||s.zipHasErrors||s.zipValidateError,s.onUpdate({error:s.addressHasErrors})}var s=this,t=f.id;s.streetHasErrors=!1,s.cityHasErrors=!1,s.addressHasErrors=!1,s.zipHasErrors=!1,s.zipValidateError=!1,s.validateAddress=j,s.filterCities=l,s.orderByLevenshteinDistance=m,s.selectCity=n,s.changeCitySelection=o,s.changeCountrySelection=p,s.clearAddressInfo=q,s.$onInit=h,a.$on("organizerAddressSubmit",function(){s.organizerAddressForm.$setSubmitted(),i(),j()})}angular.module("udb.organizers").component("udbOrganizerAddress",{templateUrl:"templates/organizer-address.html",controller:a,controllerAs:"oac",bindings:{address:"=",onUpdate:"&"}}),a.$inject=["$scope","Levenshtein","citiesBE","citiesNL","appConfig","$stateParams","OrganizerManager"]}(),function(){"use strict";function a(a,b){function c(){_.find(j.contact,{value:""})||_.find(j.contact,{value:void 0})||j.organizerContactWrapper.$invalid&&j.organizerContactWrapper.$dirty?j.contactHasErrors=!0:j.contactHasErrors=!1,i()}function d(){j.newContact={type:"",value:""}}function e(a){j.newContact={type:a,value:""},j.isPristine=!0,j.addingContactEntry=!0}function f(){d(),j.addingContactEntry=!1,j.isPristine=!0}function g(){c(),j.contactHasErrors||(j.contact.push(j.newContact),d(),j.addingContactEntry=!1,j.isPristine=!0,i())}function h(a){j.contact.splice(a,1),c()}function i(){j.onUpdate({error:j.contactHasErrors})}var j=this;j.newContact={},j.addingContactEntry=!1,j.isPristine=!0,j.validateContact=c,j.addOrganizerContactEntry=e,j.cancelOrganizerContactEntry=f,j.addOrganizerContactInfo=g,j.deleteOrganizerContactInfo=h,j.sendUpdate=i,j.contactUrlRegex=(new b).regex.url,a.$on("organizerContactSubmit",function(){j.organizerContactWrapper.$setSubmitted()}),a.$watch(function(){return j.newContact},function(a){a&&a.value&&""!==a.value&&(j.isPristine=!1)},!0)}angular.module("udb.organizers").component("udbOrganizerContact",{templateUrl:"templates/organizer-contact.html",controller:a,controllerAs:"occ",bindings:{contact:"=",onUpdate:"&"}}),a.$inject=["$scope","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(b){a.get(b).then(h),f.getOrganizerPermissions(b).then(function(a){u.permissions=a.permissions})}function h(a){u.organizer=a}function i(b){u.labelSaving=!0,l(),a.addLabelToOrganizer(v,b.name)["catch"](r)["finally"](function(){u.labelSaving=!1,k()})}function j(b){u.labelSaving=!0,l(),k(),a.deleteLabelFromOrganizer(v,b.name)["catch"](q)["finally"](function(){u.labelSaving=!1})}function k(){a.removeOrganizerFromCache(v)}function l(){u.labelResponse="",u.labelsError=""}function m(){return-1!==w.indexOf("manage")}function n(){d.path("/manage/organizations")}function o(){p(u.organizer)}function p(a){var c=b.open({templateUrl:"templates/organization-delete.modal.html",controller:"OrganizationDeleteModalController",controllerAs:"odc",resolve:{organization:function(){return a}}});c.result.then(n)}function q(a){g(v),u.labelResponse="unlabelError",u.labelsError=a.title}function r(a){u.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return u.errorMessage}}})}function s(){return u.organizer&&!u.loadingError}function t(){return-1!==u.permissions.indexOf("Organisaties bewerken")}var u=this,v=c.id,w=e.current.name;u.labelSaving=!1,u.addLabel=i,u.deleteLabel=j,u.labelResponse="",u.labelsError="",u.deleteOrganization=o,u.isManageState=m,u.finishedLoading=s,u.canEdit=t,u.permissions=[],g(v)}angular.module("udb.organizers").controller("OrganizerDetailController",a),a.$inject=["OrganizerManager","$uibModal","$stateParams","$location","$state","udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){x.organizer={mainLanguage:A,website:"http://",name:"",address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},x.showAddressComponent=!0}function k(b){a.removeOrganizerFromCache(b),a.get(b).then(l,function(){x.loadingError=!0})["finally"](function(){x.showAddressComponent=!0})}function l(a){_.isEmpty(a.address)&&(a.address={streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""}),x.organizer=a,B=_.cloneDeep(a),x.originalName=B.name,null!==x.organizer.contactPoint&&(_.forEach(x.organizer.contactPoint,function(a,b){_.forEach(a,function(a){x.contact.push({type:b,value:a})})}),C=_.cloneDeep(x.contact))}function m(){return x.showWebsiteValidation=!0,x.organizerForm.website.$valid?void b.findOrganizersWebsite(x.organizer.website).then(function(a){x.urlError=!1,a.totalItems>0?a.member[0].name===x.originalName?(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1):(x.organizersWebsiteFound=!0,x.showWebsiteValidation=!1):(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1)},function(){x.websiteError=!0,x.showWebsiteValidation=!1})["finally"](function(){r()}):(x.showWebsiteValidation=!1,void(x.urlError=!0))}function n(){x.organizerForm.name.$valid?x.nameError=!1:x.nameError=!0,r()}function o(a){x.addressError=a,r()}function p(a){x.contactError=a,r()}function q(){return x.showValidation=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError?(x.hasErrors=!0,x.disableSubmit=!0,f.$broadcast("organizerAddressSubmit"),void f.$broadcast("organizerContactSubmit")):void(x.isNew?t():s())}function r(){D=!_.isEqual(x.organizer.website,B.website),E=!_.isEqual(x.organizer.name,B.name),F=!_.isEqual(x.organizer.address,B.address)&&!_.isEmpty(x.organizer.address.streetAddress),G=!_.isEqual(x.contact,C),D||E||F||G?x.disableSubmit=!1:x.disableSubmit=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError||(x.hasErrors=!1)}function s(){var b=[];D&&b.push(a.updateOrganizerWebsite(y,x.organizer.website)),E&&b.push(a.updateOrganizerName(y,x.organizer.name,A)),F&&b.push(a.updateOrganizerAddress(y,x.organizer.address,A)),G&&b.push(a.updateOrganizerContact(y,x.contact)),b.push(a.removeOrganizerFromCache(y)),e.all(b).then(function(){v()})["catch"](function(){x.hasErrors=!0,x.saveError=!0})}function t(){var b=_.clone(x.organizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,h.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&a.addLabelToOrganizer(b.data.organizerId,c),x.organizer.id=b.data.organizerId,v()},function(){x.hasErrors=!0,x.saveError=!0})}function u(){w()?c.go("management.organizers.search",{},{reload:!0}):c.go("split.footer.dashboard",{},{reload:!0})}function v(){a.removeOrganizerFromCache(x.organizer.id),c.go("split.organizerDetail",{id:x.organizer.id},{reload:!0})}function w(){return-1!==z.indexOf("manage")}var x=this,y=d.id,z=c.current.name,A=g.use()||"nl";x.language=A,x.showAddressComponent=!1,x.isNew=!0,x.loadingError=!1,x.contact=[],x.showWebsiteValidation=!1,x.urlError=!1,x.websiteError=!1,x.nameError=!1,x.addressError=!1,x.contactError=!1,x.hasErrors=!1,x.disableSubmit=!0,x.saveError=!1,x.validateWebsite=m,x.validateName=n,x.validateAddress=o,x.validateContact=p,x.checkChanges=r,x.validateOrganizer=q,x.cancel=u,x.isManageState=w;var B={},C=[],D=!1,E=!1,F=!1,G=!1;y?(x.isNew=!1,k(y)):j()}a.$inject=["OrganizerManager","udbOrganizers","$state","$stateParams","$q","$scope","$translate","eventCrud","appConfig"],angular.module("udb.organizers").controller("OrganizerFormController",a)}(),function(){"use strict";function a(a){var b=this;b["delete"]=function(b){return a.deleteOrganization(b)},b.find=function(b,c,d){return a.findOrganisations(d,c,null,b)},b.get=function(b){return a.getOrganizerById(b)},b.addLabelToOrganizer=function(b,c){return a.addLabelToOrganizer(b,c)},b.deleteLabelFromOrganizer=function(b,c){return a.deleteLabelFromOrganizer(b,c)},b.removeOrganizerFromCache=function(b){return a.removeItemFromCache(b)},b.updateOrganizerWebsite=function(b,c){return a.updateOrganizerWebsite(b,c)},b.updateOrganizerName=function(b,c,d){return a.updateOrganizerName(b,c,d)},b.updateOrganizerAddress=function(b,c,d){return a.updateOrganizerAddress(b,c,d)},b.removeOrganizerAddress=function(b){return a.removeOrganizerAddress(b)},b.updateOrganizerContact=function(b,c,d){return a.updateOrganizerContact(b,c,d)}}angular.module("udb.organizers").service("OrganizerManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/place-detail.html",restrict:"EA",controller:PlaceDetail}}angular.module("udb.place-detail").directive("udbPlaceDetail",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(b){var c=b[0],d=b[1];n.getPermissions().then(function(b){a.isGodUser=_.filter(b,function(a){return a===m.GEBRUIKERS_BEHEREN}).length>0,a.isGodUser?a.permissions={editing:!0,duplication:!0}:c?a.permissions={editing:!d.isExpired(),duplication:!0}:a.permissions={editing:!1,duplication:!1},p()})}function p(){a.isGodUser?a.tabs=[{id:"data"},{id:"history"},{id:"publication"}]:a.tabs=[{id:"data"},{id:"publication"}]}function q(b){B=b,a.place=e(b,A,!0),a.placeIdIsInvalid=!1,"object"==typeof a.place.description&&(a.place.description=a.place.description[A],void 0===a.place.description&&(a.place.description="")),a.finishedLoading=!0,b.typicalAgeRange.indexOf("-")===b.typicalAgeRange.length-1?a.ageRange=b.typicalAgeRange.slice(0,-1)+"+":a.ageRange=b.typicalAgeRange}function r(b){a.placeIdIsInvalid=!0}function s(a){function b(a,b){var c=g.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return b}}});c.result.then(z.goToDashboard)}f.findEventsAtPlace(a.apiUrl).then(function(c){b(a,c)})}function t(b){a.placeHistory=b}function u(b){var c=_.find(B.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?i.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):j.label(B,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.place.labels=angular.copy(B.labels)})}function v(){a.labelResponse="",a.labelsError=""}function w(b){a.place.labels=angular.copy(B.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function x(a){v(),j.unlabel(B,a.name)["catch"](w)}var y="data",z=this,A=l.use()||"nl";a.isOmdApp=!!_.get(k,"omdSpecific",!1),h.when(b,function(b){a.placeId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(q,r),h.all([e,d]).then(o)}),a.placeIdIsInvalid=!1,a.labelAdded=u,a.labelRemoved=x,a.labelResponse="",a.labelsError="",a.finishedLoading=!1,a.placeHistory=void 0,a.deletePlace=function(){s(a.place)},a.language=A;var B;a.placeLocation=function(a){return a.address.addressLocality?a.address.addressLocality:""},a.isTabActive=function(a){return a===y},a.makeTabActive=function(b){if(y=b,"history"===b&&!a.placeHistory){var d=a.placeId.split("/").pop();c.getHistory(d,"place").then(t)}},a.openEditPage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeEdit",{id:c})},a.openTranslatePage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeTranslate",{id:c})},z.goToDashboard=function(){d.go("split.footer.dashboard")},a.translateType=function(a){var b=l.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}}angular.module("udb.place-detail").controller("PlaceDetailController",a),a.$inject=["$scope","placeId","udbApi","$state","jsonLDLangFilter","eventCrud","$uibModal","$q","$window","offerLabeller","appConfig","$translate","RolePermission","authorizationService"]}(),function(){"use strict";function a(a,b){function c(a,b){g[a]=b}function d(a){_.each(a.member,function(a){var b=a["@id"],d=b.split("/").pop();c(d,b)})}function e(b){var c=g[b];return c?a.resolve(c):f(b)}function f(d){function e(a){if(1===a.totalItems){var b=a.member[0]["@id"];c(d,b),f.resolve(b)}else f.reject("Unable to determine the exact offer for this uuid.")}var f=a.defer(),g='id:"'+d+'"',h=0,i=!0;return b.findOffers(g,h,i).then(e)["catch"](f.reject),f.promise}var g={};this.get=e,this.add=c,this.addPagedCollection=d}angular.module("udb.router").service("offerLocator",a),a.$inject=["$q","udbApi"]}(),function(){"use strict";function a(a,b){var c=function(){b.close()},d=function(){b.dismiss("cancel")};a.cancel=d,a.confirm=c}angular.module("udb.saved-searches").controller("DeleteSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b,c,d,e){var f=function(){var b=a.queryName;a.wasSubmitted=!0,b&&d.close(b)},g=function(){d.dismiss("cancel")},h=function(b){return b===a.activeTabId},i=function(b){a.activeTabId=b},j=function(){return b.getSavedSearches().then(function(a){var b=a.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=e.instant(b);return c!==b&&(a.name=c),a});return c.resolve(b)})};j().then(function(b){a.savedSearches=b}),a.savedSearches=[],a.cancel=g,a.ok=f,a.isTabActive=h,a.makeTabActive=i,a.queryName="",a.activeTabId="new",a.wasSubmitted=!1}angular.module("udb.saved-searches").controller("SaveSearchModalController",a),a.$inject=["$scope","udbApi","$q","$uibModalInstance","$translate"]}(),function(){"use strict";function a(a,b){function c(c,e,f,g){c.saveSearch=function(){var e=b.open({templateUrl:"templates/save-search-modal.html",controller:"SaveSearchModalController"});e.result.then(function(b){a.createSavedSearch(b,c.queryString)["catch"](d)})}}function d(){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het opslaan van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})}var e={link:c,templateUrl:"templates/save-search.directive.html",restrict:"AE",scope:{queryString:"=udbQueryString"}};return e}angular.module("udb.saved-searches").directive("udbSaveSearch",a),a.$inject=["savedSearchesService","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){e.$emit("savedSearchesChanged",i)}var i=[],j=this;j.createSavedSearch=function(b,c){return f.createSavedSearch(b,c).then(function(){return i.push({name:b,query:c}),h(),a.resolve()})},j.getSavedSearches=function(){return f.getSavedSearches().then(function(b){var c=b.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=g.instant(b);return c!==b&&(a.name=c),a});return i=c,a.resolve(c)})},j.deleteSavedSearch=function(b){return f.deleteSavedSearch(b).then(function(){return _.remove(i,{id:b}),h(),a.resolve()})}}angular.module("udb.saved-searches").service("savedSearchesService",a),a.$inject=["$q","$http","$cookies","appConfig","$rootScope","udbApi","$translate"]}(),function(){"use strict";function a(a,b,c,d){a.savedSearches=[],a.editorOptions={mode:"solr",lineWrapping:!0,readOnly:!0},a.codemirrorLoaded=function(a){a.on("focus",function(){a.execCommand("selectAll")}),a.on("blur",function(){a.setCursor(0,0,!0)})};var e=b.getSavedSearches();e.then(function(b){a.savedSearches=b}),d.$on("savedSearchesChanged",function(b,c){a.savedSearches=c}),this.encodeURI=function(a){return encodeURIComponent(a)},a.encodeURI=this.encodeURI,this.deleteSavedSearch=function(a){var d=c.open({templateUrl:"templates/delete-search-modal.html",controller:"DeleteSearchModalController"});d.result.then(function(){var d=b.deleteSavedSearch(a);d["catch"](function(){c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het verwijderen van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})})})},a.deleteSavedSearch=this.deleteSavedSearch}angular.module("udb.saved-searches").controller("SavedSearchesListController",a),a.$inject=["$scope","savedSearchesService","$uibModal","$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-link.directive.html"};return a}angular.module("udb.event-form").directive("udbEventLink",a)}(),function(){"use strict";function a(a,b){function c(a){m.labels=f(_.get(a,"labels.currentValue",m.labels))}function d(a){m.currentLabel="",m.labelAdded({label:a}),m.labels.push(a)}function e(a){m.currentLabel="",m.labelRemoved({label:a}),m.labels=_.without(m.labels,a)}function f(a){return _.map(m.labels,function(a){return _.isString(a)?{name:a}:a})}function g(a){return a>=m.minimumInputLength&&a<=m.maxInputLength}function h(a){return m.regex.test(a)}function i(a){if(h(a)){var b=_.find(m.labels,function(b){return b.name.toUpperCase()===a.toUpperCase()});if(!b&&m.areLengthCriteriaMet(a.length)&&m.areContentCriteriaMet(a))return{name:a}}}function j(b){return a.getSuggestions(b,6).then(function(a){return a.push({name:b}),l(a)})}function k(a){return h(a)?(l([]),j(a)):void l([])}function l(a){return m.availableLabels=_.chain(a).filter(function(a){return h(a.name)}).reject(function(a){return _.find(m.labels,{name:a.name})}).uniq(function(a){return a.name.toUpperCase()}).value(),m.availableLabels}var m=this;m.availableLabels=[],m.suggestLabels=k,m.createLabel=i,m.areLengthCriteriaMet=g,m.areContentCriteriaMet=h,m.labels=f(m.labels),m.hiddenLabels=["new-entry-form","ook voor jongeren","ook voor kinderen"],m.minimumInputLength=2,m.maxInputLength=50,m.currentLabel="",m.onSelect=d,m.onRemove=e,m.$onChanges=c,m.regex=/^([a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]{1}[a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ_-\s]+)$/}angular.module("udb.search").component("udbLabelSelect",{templateUrl:"templates/label-select.html",controller:a,controllerAs:"select",bindings:{labels:"<",labelAdded:"&",labelRemoved:"&"}}),a.$inject=["offerLabeller","$q"]}(),function(){"use strict";function a(a,b){var c=this;c.changeFacilities=function(){b.open({templateUrl:"templates/search-facilities-modal.html",controller:"SearchFacilitiesModalController",resolve:{offer:function(){return c.offer},facilities:function(){return"place"===c.offerType?_.pick(a,"place"):_.omit(a,"place")}}})}}angular.module("udb.search").component("udbOfferAccessibilityInfo",{templateUrl:"templates/offer-accessibility-info.component.html",controller:a,bindings:{offerType:"<",offer:"="}}),a.$inject=["facilities","$uibModal"]}(),function(){"use strict";function a(a,b){return{templateUrl:"templates/query-editor-daterangepicker.directive.html",restrict:"E",link:function(c,d,e){var f={startOpened:!1,endOpened:!1,dateFormat:"dd/MM/yyyy"};a(["datepicker.CURRENT","datepicker.CLEAR","datepicker.CLOSE"]).then(function(a){b.currentText=a["datepicker.CURRENT"],b.clearText=a["datepicker.CLEAR"],b.closeText=a["datepicker.CLOSE"]}),f.openStart=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!0,f.endOpened=!1},f.openEnd=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!1,f.endOpened=!0},c.drp=f}}}function b(){return{restrict:"EAC",require:"ngModel",link:function(a,b,c,d){d.$formatters.shift()}}}angular.module("udb.search").directive("udbQueryEditorDaterangepicker",a),a.$inject=["$translate","uibDatepickerPopupConfig"],angular.module("udb.search").directive("datepickerPopup",b)}(),function(){"use strict";function a(a){function b(){var b;return b=d()?a.$parent.field:a.rootGroup}function c(){var b;return b=d()&&0===a.$index?"AND":a.$index?"OR":"FIRST"}function d(){var b=a.$parent;return"group"===b.field.type}function e(){var b=a.rootGroup;return b.nodes.length>1}a.addField=function(c){a.qe.addField(b(),c)},a.removeField=function(c){a.qe.removeField(b(),c,a.rootGroup)},a.addSubGroup=function(c){var e=a.rootGroup,f=_.uniqueId(),g=b();g.treeGroupId=f,d()&&(c=_.findIndex(e.nodes,function(a){return a.treeGroupId===f})),a.qe.addSubGroup(e,c)},a.isSubGroup=d,a.getOperatorClass=c,a.canRemoveField=e}angular.module("udb.search").controller("QueryEditorFieldController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor-field.directive.html",restrict:"E",controller:"QueryEditorFieldController"}}angular.module("udb.search").directive("udbQueryEditorField",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){var k=this;k.fieldOptions=_.filter(a,"editable");var l=_.chain(k.fieldOptions).map(function(a){return a.group}).uniq().value();_.forEach(k.fieldOptions,function(a){var b="queryFieldLabel."+a.name,c="queryFieldGroup."+a.group; -g([b,c]).then(function(d){a.label=d[b],a.groupIndex=_.indexOf(l,a.group),a.groupLabel=d[c]})}),k.getDefaultQueryTree=function(){return{type:"root",nodes:[{type:"group",operator:"OR",nodes:[{name:"title",field:"name.\\*",term:"",fieldType:"tokenized-string",transformer:"+"}]}]}},k.groupedQueryTree=f.getQueryTree()||k.getDefaultQueryTree(),k.transformers={},k.termOptions=_.groupBy(c,function(a){return"category_"+a.domain+"_name"}),k.termOptions.locationtype=j,k.termOptions.nisRegions=d,k.termOptions.category_eventtype_name=i,_.forEach(a,function(a){"choice"===a.type&&(k.termOptions[a.name]=a.options),k.transformers[a.name]=e[a.type]}),k.updateQueryString=function(){f.setQueryTree(k.groupedQueryTree),h.$emit("searchSubmitted"),k.stopEditing()},k.stopEditing=function(){h.$emit("stopEditingQuery")},k.addField=function(a,b){var c=b+1,d={field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"};a.nodes.splice(c,0,d),a.nodes.length&&(a.type="group")},k.removeField=function(a,b,c){c.nodes.length>1&&a.nodes.splice(b,1),k.cleanUpGroups()},k.cleanUpGroups=function(){k.removeEmptyGroups(),k.unwrapSubGroups()},k.unwrapSubGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){var b=a.nodes[0];if(b.nodes){var c=b.nodes;a.nodes.splice(0,1),_.forEach(c,function(b,c){a.nodes.splice(c,0,b)})}})},k.removeEmptyGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){_.remove(a.nodes,function(a){return a.nodes&&0===a.nodes.length})})},k.toggleExcludeGroup=function(a){a.excluded=!a.excluded},k.canRemoveGroup=function(){return!k.hasSingleGroup()},k.removeGroup=function(a){if(k.canRemoveGroup()){var b=k.groupedQueryTree,c=b.nodes[a];k.canRemoveGroup()&&c&&b.nodes.splice(a,1)}},k.resetGroups=function(){k.groupedQueryTree=k.getDefaultQueryTree()},k.addGroup=function(){var a=k.groupedQueryTree,b={type:"group",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.push(b)},k.addSubGroup=function(a,b){var c={type:"group",operator:"AND",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.splice(b+1,0,c)},k.fieldTypeSelected=function(b){var c=b.name,d=_.find(a,function(a){return a.name===c});d&&(b.field=d.field),b.fieldType!==d.type&&("date-range"===d.type?(b.lowerBound=moment().startOf("day").toDate(),b.upperBound=moment().endOf("day").toDate(),b.inclusive=!0):(b.term="",b.lowerBound=void 0,b.upperBound=void 0,b.inclusive=void 0),"check"===d.type&&(b.term=d.name),"number"===d.type&&(b.inclusive=!0),b.transformer&&_.contains(e[d.type],b.transformer)||(b.transformer=_.first(e[d.type])),b.fieldType=d.type)},k.hasSingleGroup=function(){return 1===k.groupedQueryTree.nodes.length}}angular.module("udb.search").controller("QueryEditorController",a),a.$inject=["queryFields","LuceneQueryBuilder","taxonomyTerms","sapi3CitiesBE","fieldTypeTransformers","searchHelper","$translate","$rootScope","eventTypes","placeTypes"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor.directive.html",restrict:"EA",controllerAs:"qe",controller:"QueryEditorController"}}angular.module("udb.search").directive("udbQueryEditor",a)}(),function(){"use strict";function a(a,b,c,d,e){return{templateUrl:"templates/search-bar.directive.html",restrict:"E",link:function(f,g,h){function i(a){return a.map(function(a){if(0===a.indexOf("Expected "))return d.instant("search.advancedQueryBuilder.syntaxError");var b=" is not a valid search field";if(-1!==a.indexOf(b)){var c=a.split(b)[0];return d.instant("search.advancedQueryBuilder.invalidField",{field:c})}return a})}function j(a){l.savedSearches=_.take(a,5)}var k,l={queryString:"",hasErrors:!1,errors:[],isEditing:!1,savedSearches:[]};l.editQuery=function(){b.$emit("startEditingQuery"),l.isEditing=!0,k=c.open({templateUrl:"templates/query-editor-modal.html",controller:"QueryEditorController",controllerAs:"qe",size:"lg"})},l.find=function(c){var d="undefined"!=typeof c?c:l.queryString;l.queryString=d,a.setQueryString(d),b.$emit("searchSubmitted")},l.queryChanged=function(){a.clearQueryTree()},f.sb=l,l.updateQuery=function(a,b){l.queryString=b.queryString,b.errors&&b.errors.length?(f.sb.hasErrors=!0,f.sb.errors=i(b.errors)):(f.sb.hasErrors=!1,f.sb.errors=[])},e.getSavedSearches().then(j);var m=b.$on("savedSearchesChanged",function(a,b){j(b)}),n=b.$on("stopEditingQuery",function(){f.sb.isEditing=!1,k&&k.dismiss()}),o=b.$on("searchQueryChanged",l.updateQuery);f.$on("$destroy",m),f.$on("$destroy",n),f.$on("$destroy",o)}}}angular.module("udb.search").directive("udbSearchBar",a),a.$inject=["searchHelper","$rootScope","$uibModal","$translate","savedSearchesService"]}(),function(){"use strict";angular.module("udb.search").value("eventTypes",[{label:"Begeleide uitstap of rondleiding",id:"0.7.0.0.0"},{label:"Beurs",id:"0.6.0.0.0"},{label:"Concert",id:"0.50.4.0.0"},{label:"Lessenreeks",id:"0.3.1.0.0"},{label:"Cursus met open sessies",id:"0.3.1.0.1"},{label:"Dansvoorstelling",id:"0.54.0.0.0"},{label:"Eet- of drankfestijn",id:"1.50.0.0.0"},{label:"Festival",id:"0.5.0.0.0"},{label:"Film",id:"0.50.6.0.0"},{label:"Kamp of vakantie",id:"0.57.0.0.0"},{label:"Festiviteit",id:"0.28.0.0.0"},{label:"Lezing of congres",id:"0.3.2.0.0"},{label:"Markt, braderie of kermis",id:"0.37.0.0.0"},{label:"Opendeurdag",id:"0.12.0.0.0"},{label:"Party of fuif",id:"0.49.0.0.0"},{label:"Fiets- of wandelroute",id:"0.17.0.0.0"},{label:"Spel of quiz",id:"0.50.21.0.0"},{label:"Sportactiviteit",id:"0.59.0.0.0"},{label:"Sportwedstrijd bekijken",id:"0.19.0.0.0"},{label:"Tentoonstelling",id:"0.0.0.0.0"},{label:"Theatervoorstelling",id:"0.55.0.0.0"}])}(),function(){"use strict";function a(){return function(a,b){var c={EUR:{symbol:"",thousand:".",decimal:",",format:"%s%v",precision:2}},d=c[b];return d||(d=c.EUR),accounting.formatMoney(a,d)}}angular.module("udb.search").filter("currency",a)}(),function(){"use strict";function a(){return function(a,b){var c=_.filter(a,function(a){return"undefined"!=typeof a?"schema:ImageObject"===a["@type"]&&(a.inLanguage===b||angular.isUndefined(a.inLanguage)):void 0});return c}}angular.module("udb.search").filter("imagesByLanguage",a)}(),function(){"use strict";function a(){return function(a,b,d){var e=_.cloneDeep(a);return e=c(e,b,d)}}function b(a){return 2===a.length}function c(a,d,e){return a=_.each(a,function(f,g){if(_.isObject(f)){var h=Object.keys(f);if(h.length>0&&h.every(b)){if(f[d])a[g]=f[d];else if(e){var i=h[0],j=f[i];a[g]=j}}else f=c(f,d,e)}})}angular.module("udb.search").filter("jsonLDLang",a)}(),function(){"use strict";angular.module("udb.search").value("placeTypes",[{label:"Archeologische site",id:"3CuHvenJ+EGkcvhXLg9Ykg"},{label:"Bibliotheek of documentatiecentrum",id:"kI7uAyn2uUu9VV6Z3uWZTA"},{label:"Bioscoop",id:"BtVNd33sR0WntjALVbyp3w"},{label:"Cultuur- of ontmoetingscentrum",id:"Yf4aZBfsUEu2NsQqsprngw"},{label:"Discotheek",id:"YVBc8KVdrU6XfTNvhMYUpg"},{label:"Horeca",id:"ekdc4ATGoUitCa0e6me6xA"},{label:"Jeugdhuis of jeugdcentrum",id:"JCjA0i5COUmdjMwcyjNAFA"},{label:"Monument",id:"0.14.0.0.0"},{label:"Museum of galerij",id:"GnPFp9uvOUyqhOckIFMKmg"},{label:"Natuur, park of tuin",id:"0.15.0.0.0"},{label:"Openbare ruimte",id:"0.8.0.0.0"},{label:"Recreatiedomein of centrum",id:"0.53.0.0.0"},{label:"School of onderwijscentrum",id:"rJRFUqmd6EiqTD4c7HS90w"},{label:"Sportcentrum",id:"eBwaUAAhw0ur0Z02i5ttnw"},{label:"Thema of pretpark",id:"0.41.0.0.0"},{label:"Winkel",id:"VRC6HX0Wa063sq98G5ciqw"},{label:"Speeltuin",id:"wwjRVmExI0w6xfQwT1KWpx"},{label:"Zaal of expohal",id:"OyaPaf64AEmEAYXHeLMAtA"}])}(),function(){"use strict";angular.module("udb.search").value("fieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],termNis:["=","!"],number:["=","><","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a),c=b.field===j,d="";switch(b.transformer){case"!":d="!";break;case"-":d="-";break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b.field=d+(c?"":b.field+":"),b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=moment(d).format()),e instanceof Date&&(e=moment(e).format()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";if(a.right)d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d);else{var f=a.field&&a.left.field===j&&a.left.prefix;d=f?a.field+":("+k(a.left)+")":l(a.left,b+1,c)}return d}var g="",h=k(a);if(a.field!==j&&null!==a.field){var i="";_.contains(["!","+","-"],a.transformer)&&(i=a.transformer),g+=i+a.field+":"}return g+=h,c+=g};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type){var h=b.name,i="(!"+b.name+")";a.term!==h&&a.term!==i&&(a.invalid=!0)}if("tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var j=moment(a.lowerBound),k=moment(a.upperBound);j.isValid()&&k.isValid()?j.isSame(k,"day")?a.transformer="=":a.transformer="><":(!j.isValid()&&k.isValid()&&(a.transformer="<"),!k.isValid()&&j.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("LuceneQueryBuilder",a),a.$inject=["LuceneQueryParser","QueryTreeValidator","QueryTreeTranslator","queryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").constant("queryFieldTranslations",{sapi2:{TYPE:"type",CDBID:"cdbid",LOCATION_ID:"location_id",ORGANISER_ID:"organiser_id",TITLE:"title",KEYWORDS:"keywords",CITY:"city",ORGANISER_KEYWORDS:"organiser_keywords",ZIPCODE:"zipcode",COUNTRY:"country",CATEGORY_NAME:"category_name",AGEFROM:"agefrom",DETAIL_LANG:"detail_lang",PRICE:"price",STARTDATE:"startdate",ENDDATE:"enddate",ORGANISER_LABEL:"organiser_label",LOCATION_NAME:"location_name",LOCATION_LABELS:"location_labels",EXTERNALID:"externalid",LASTUPDATED:"lastupdated",CREATIONDATE:"creationdate",CREATEDBY:"createdby",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"category_eventtype_name",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"category_theme_name",CATEGORY_FACILITY_NAME:"category_facility_name",CATEGORY_TARGETAUDIENCE_NAME:"category_targetaudience_name",CATEGORY_FLANDERSREGION_NAME:"category_flandersregion_name",AVAILABLEFROM:"availablefrom"},en:{TEXT:"text",KEYWORDS:"label",PHYSICAL_GIS:"geo",CATEGORY_NAME:"category",DETAIL_LANG:"translation",ORGANISER_LABEL:"organiser",LOCATION_LABEL:"location",CREATIONDATE:"created",CATEGORY_EVENTTYPE_NAME:"eventtype",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"theme",CATEGORY_FACILITY_NAME:"facility",CATEGORY_TARGETAUDIENCE_NAME:"targetaudience",CATEGORY_FLANDERSREGION_NAME:"region",AVAILABLEFROM:"available",LOCATION_ID:"locationid",ORGANISER_ID:"organizationid",DATE:"date"},fr:{LOCATION_LABEL:"location",TITLE:"titre"},nl:{TYPE:"type",TEXT:"tekst",LOCATION_ID:"locatieid",ORGANISER_ID:"organisatieid",TITLE:"titel",KEYWORDS:"label",CITY:"stad",ORGANISER_KEYWORDS:"organisatielabel",ZIPCODE:"postcode",COUNTRY:"land",CATEGORY_NAME:"categorie",AGEFROM:"leeftijd",DETAIL_LANG:"vertaling",PRICE:"prijs",DATE:"datum",STARTDATE:"startdatum",ENDDATE:"einddatum",ORGANISER_LABEL:"organisatienaam",LOCATION_LABEL:"locatienaam",EXTERNALID:"externalid",LASTUPDATED:"laatst_aangepast",CREATIONDATE:"gecreëerd",CREATEDBY:"gecreëerd_door",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"type",LOCATIONTYPE:"locatietype",OFFERTYPE:"aanbodtype",CATEGORY_THEME_NAME:"thema",CATEGORY_FACILITY_NAME:"voorzieningen",CATEGORY_TARGETAUDIENCE_NAME:"doelgroep",CATEGORY_FLANDERSREGION_NAME:"gemeente",AVAILABLEFROM:"datum_beschikbaar"}})}(),function(){"use strict";angular.module("udb.search").value("queryFields",[{name:"cdbid",field:"id",type:"string",group:"what",editable:!0},{name:"offertype",field:"_type",type:"choice",group:"what",editable:!0,options:["event","place"]},{name:"keywords",field:"labels",type:"string",group:"what",editable:!0},{name:"title",field:"name.\\*",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"locationtype",field:"terms.id",type:"term",group:"what",editable:!0},{name:"category_theme_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"text",field:"",type:"tokenized-string",group:"what",editable:!0},{name:"city",field:"address.\\*.addressLocality",type:"string",group:"where",editable:!0},{name:"zipcode",field:"address.\\*.postalCode",type:"string",group:"where",editable:!0},{name:"location_id",field:"location.id",type:"string",group:"where",editable:!0},{name:"country",field:"address.\\*.addressCountry",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",field:"location.name.\\*",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",field:"location.labels",type:"string",group:"where",editable:!0},{name:"nisRegions",field:"regions",type:"termNis",group:"where",editable:!0},{name:"date",field:"dateRange",type:"date-range",group:"when",editable:!0},{name:"permanent",field:"calendarType",type:"check",group:"when",editable:!0},{name:"lastupdated",field:"modified",type:"date-range",group:"input-information",editable:!0},{name:"creationdate",field:"created",type:"date-range",group:"input-information",editable:!0},{name:"createdby",field:"creator",type:"string",group:"input-information",editable:!0},{name:"availablefrom",field:"availableRange",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",field:"languages",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",field:"organizer.labels",type:"string",group:"other",editable:!0},{name:"organiser_id",field:"organizer.id",type:"string",group:"other",editable:!0},{name:"agefrom",field:"typicalAgeRange",type:"number",group:"other",editable:!0},{name:"attendance_mode",field:"attendanceMode",type:"choice",group:"other",editable:!0,options:["online","offline","mixed"]},{name:"price",field:"price",type:"number",group:"other",editable:!0},{name:"status",field:"status",type:"choice",group:"other",editable:!0,options:["Available","Unavailable","TemporarilyUnavailable"]},{name:"booking_availability",field:"bookingAvailability",type:"choice",group:"other",editable:!0,options:["available","unavailable"]},{name:"organiser_label",field:"organizer.name.\\*",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",field:"terms.id",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",field:"audienceType",type:"choice",group:"other",editable:!0,options:["everyone","members","education"]},{field:"calendarType",type:"string"},{field:"workflowStatus",type:"choice",options:["DRAFT","READY_FOR_VALIDATION","APPROVED","REJECTED","DELETED"]},{field:"name.nl",type:"tokenized-string"},{field:"name.fr",type:"tokenized-string"},{field:"name.de",type:"tokenized-string"},{field:"name.en",type:"tokenized-string"},{field:"description.nl",type:"tokenized-string"},{field:"description.fr",type:"tokenized-string"},{field:"description.de",type:"tokenized-string"},{field:"description.en",type:"tokenized-string"},{field:"terms.label",type:"string"},{field:"mediaObjectsCount",type:"number"},{field:"videosCount",type:"number"},{field:"address.\\*.streetAddress",type:"string"},{field:"location.id",type:"string"},{field:"location.name.nl",type:"tokenized-string"},{field:"location.name.fr",type:"tokenized-string"},{field:"location.name.de",type:"tokenized-string"},{field:"location.name.en",type:"tokenized-string"},{field:"location.terms.id",type:"string"},{field:"organizer.id",type:"string"},{field:"organizer.name.nl",type:"tokenized-string"},{field:"organizer.name.fr",type:"tokenized-string"},{field:"organizer.name.de",type:"tokenized-string"},{field:"organizer.name.en",type:"tokenized-string"},{field:"allAges",type:"string"},{field:"contributors",type:"string"},{name:"startdate",field:"dateRange",type:"date-range"},{name:"enddate",field:"dateRange",type:"date-range"}])}(),function(){"use strict";function a(a,b){var c=function(c,d){var e=_.findKey(a[d],function(a){return a===c}),f=void 0===e?void 0:_.find(b,{name:e.toLowerCase()});return void 0===f?c:f.field},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"sapi2"),a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("QueryTreeTranslator",a),a.$inject=["queryFieldTranslations","queryFields"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"field"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){var b=a.split(".");return b.pop(),b.join(".")}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==o&&o!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("QueryTreeValidator",a),a.$inject=["queryFields"]}(),function(){"use strict";angular.module("udb.search").value("sapi2FieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],number:["=","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+":"+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a);switch(b.transformer){case"!":b.field="!"+b.field;break;case"-":b.field="-"+b.field;break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=d.toISOString()),e instanceof Date&&(e=e.toISOString()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";return a.right?(d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d)):d=l(a.left,b+1,c),d}var f="",g=k(a);if(a.field!==j&&null!==a.field){var h="";_.contains(["!","+","-"],a.transformer)&&(h=a.transformer),f+=h+a.field+":"}return f+=g,c+=f};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type&&(_.contains(["TRUE","FALSE"],a.term.toUpperCase())?a.term=a.term.toUpperCase():a.invalid=!0),"tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var h=moment(a.lowerBound),i=moment(a.upperBound);h.isValid()&&i.isValid()?h.isSame(i,"day")?a.transformer="=":a.transformer="><":(!h.isValid()&&i.isValid()&&(a.transformer="<"),!i.isValid()&&h.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("sapi2QueryBuilder",a),a.$inject=["LuceneQueryParser","sapi2QueryTreeValidator","sapi2QueryTreeTranslator","sapi2QueryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").value("sapi2QueryFields",[{name:"cdbid",type:"string",group:"what",editable:!0},{name:"keywords",type:"string",group:"what",editable:!0},{name:"title",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",type:"term",group:"what",editable:!0},{name:"category_theme_name",type:"term",group:"what",editable:!0},{name:"city",type:"string",group:"where",editable:!0},{name:"zipcode",type:"string",group:"where",editable:!0},{name:"country",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",type:"string",group:"where",editable:!0},{name:"category_flandersregion_name",type:"term",group:"where",editable:!0},{name:"startdate",type:"date-range",group:"when",editable:!0},{name:"enddate",type:"date-range",group:"when",editable:!0},{name:"permanent",type:"check",group:"when",editable:!0},{name:"lastupdated",type:"date-range",group:"input-information",editable:!0},{name:"lastupdatedby",type:"string",group:"input-information",editable:!0},{name:"creationdate",type:"date-range",group:"input-information",editable:!0},{name:"createdby",type:"string",group:"input-information",editable:!0},{name:"availablefrom",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",type:"string",group:"other", -editable:!0},{name:"agefrom",type:"number",group:"other",editable:!0},{name:"price",type:"number",group:"other",editable:!0},{name:"organiser_label",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",type:"term",group:"other",editable:!0},{name:"category_publicscope_name",type:"term",group:"other",editable:!0},{name:"like_count",type:"number"},{name:"recommend_count",type:"number"},{name:"attend_count",type:"number"},{name:"comment_count",type:"number"},{name:"category_name",type:"term"},{name:"externalid",type:"string"},{name:"private",type:"check"},{name:"physical_gis",type:"string"}])}(),function(){"use strict";function a(a){var b=a,c=function(a,c){var d=a,e=_.findKey(b[c],function(b){return b===a});return e&&(d=e.toLowerCase()),d},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("sapi2QueryTreeTranslator",a),a.$inject=["queryFieldTranslations"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"name"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){return a.split(".")[0]}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==n&&n!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("sapi2QueryTreeValidator",a),a.$inject=["sapi2QueryFields"]}(),function(){"use strict";function a(a,b){var c=null,d=null;this.clearQueryTree=function(){d=null},this.setQueryString=function(b,e){var f=!1;c&&c.queryString===b||(f=a.createQuery(b),a.isValid(f),this.setQuery(f),d=null),c&&!f&&e&&this.setQuery(c)},this.setQueryTree=function(b){var c=a.unparseGroupedTree(b),e=a.createQuery(c);a.isValid(e),this.setQuery(e),d=b},this.setQuery=function(a){c=a,b.$emit("searchQueryChanged",a)},this.getQuery=function(){return c},this.getQueryTree=function(){return angular.copy(d)}}angular.module("udb.search").service("searchHelper",a),a.$inject=["LuceneQueryBuilder","$rootScope"]}(),function(){"use strict";function a(a){var b={ALL:{name:"all",icon:"fas fa-check-square"},NONE:{name:"none",icon:"far fa-square"},SOME:{name:"some",icon:"fas fa-minus-square"}},c=function(c,d){this.pageSize=c||30,this.events=[],this.totalItems=0,this.currentPage=d||1,this.loading=!0,this.lastQuery=null,this.eventProperties={description:{name:a.instant("search.description"),visible:!1},labels:{name:a.instant("search.labels"),visible:!1},image:{name:a.instant("search.picture"),visible:!1}},this.eventSpecifics=[{id:"input",name:a.instant("search.inputInformation")}],this.activeSpecific=this.eventSpecifics[0],this.selectedOffers=[],this.selectionState=b.NONE,this.querySelected=!1};return c.prototype={enableSpecifics:function(a){this.eventSpecifics=_.uniq(_.union(this.eventSpecifics,a),"id")},toggleSelection:function(){var a=this.selectionState;a===b.SOME||a===b.ALL?(this.deselectPageItems(),this.querySelected&&(this.deselectAll(),this.querySelected=!1)):this.selectPageItems()},selectQuery:function(){this.querySelected=!0,this.selectPageItems()},updateSelectionState:function(){var a=this.selectedOffers,c=_.filter(this.events,function(b){return _.contains(a,b)});c.length===this.pageSize?this.selectionState=b.ALL:c.length>0?this.selectionState=b.SOME:this.selectionState=b.NONE},toggleSelect:function(a){if(!this.querySelected){var b=_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]});if(b)this.selectedOffers=_.filter(this.selectedOffers,function(b){return b["@id"]!==a["@id"]});else{var c=_.find(this.events,function(b){return b["@id"]===a["@id"]});this.selectedOffers.push(c)}this.updateSelectionState()}},deselectAll:function(){this.selectedOffers=[],this.selectionState=b.NONE},deselectPageItems:function(){var a=this.selectedOffers;_.forEach(this.events,function(b){_.remove(a,function(a){return a["@id"]===b["@id"]})}),this.selectionState=b.NONE},selectPageItems:function(){var a=this.events,c=this.selectedOffers;_.each(a,function(a){c.push(a)}),this.selectedOffers=_.uniq(c),this.selectionState=b.ALL},isOfferSelected:function(a){return!!_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]})},setResults:function(a){var b=this;b.pageSize=a.itemsPerPage||30,b.events=a.member||[],b.totalItems=a.totalItems||0,b.loading=!1,this.querySelected&&this.selectPageItems(),this.updateSelectionState()},queryChanged:function(a){this.loading=!0,this.selectedOffers=[],this.querySelected=!1,this.lastQuery&&this.lastQuery!==a&&(this.currentPage=1),this.lastQuery=a},activateSpecific:function(a){this.activeSpecific=a},isShowingProperties:function(){var a=_.find(this.eventProperties,function(a){return a.visible});return!!a}},c}angular.module("udb.search").factory("SearchResultViewer",a),a.$inject=["$translate"]}(),function(){"use strict";angular.module("udb.search").constant("EventTranslationState",{ALL:{name:"all",icon:"fa-circle"},NONE:{name:"none",icon:"fa-circle-o"},SOME:{name:"some",icon:"fa-dot-circle-o"}})}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event.directive.html"};return a}angular.module("udb.search").directive("udbEvent",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l){function m(a){var b=k.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}function n(a){var d=a.facilities.sort(function(a,b){return a.label.localeCompare(b.label)});return a.facilities=d,v=a,v.updateTranslationState(),b.event=c(v,x,!0),b.offerType=b.event.url.split("/").shift(),b.translatedOfferType=m(b.event.type.label),w.offerExpired="event"===b.offerType?a.isExpired():!1,w.hasFutureAvailableFrom=a.hasFutureAvailableFrom(),w.fetching=!1,p(),v}function o(a){return a&&"event"===b.event.url.split("/").shift()?h.resolve(a):h.reject()}function p(){b.$watch(function(){return v.labels},function(a){b.event.labels=angular.copy(a)})}function q(a,b,c){var d=w.activeLanguage,f=c||a;b&&b!==v[a][d]&&e.translateProperty(v,f,d,b).then(v.updateTranslationState(v))}function r(){w.labelResponse="",w.labelsError=""}function s(a){b.event.labels=angular.copy(v.labels),w.labelResponse="unlabelError",w.labelsError=a.title}function t(a){r(),f.unlabel(v,a.name)["catch"](s)}function u(a){return b.event.location&&(b.event.location=c(b.event.location,x)),h.resolve(a)}var v,w=this,x=k.use()||"nl";w.translation=!1,w.activeLanguage=x,w.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],w.uitId=_.get(i,"uitidUrl"),w.labelRemoved=t,l.isGodUser().then(function(a){w.isGodUser=a}),w.init=function(){if(!b.event.title){if(w.fetching=!0,b.event.name){var c=a.formatJsonLDEntity(b.event);return void n(c)}return a.getOffer(b.event["@id"]).then(function(a){n(a)})}w.fetching=!1},h.when(w.init()).then(u).then(o)["finally"](function(){w.editable=!0}),w.hasActiveTranslation=function(){var a=v;return a&&a.translationState[w.activeLanguage]!==d.NONE},w.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return v&&a&&(b=v.translationState[a].icon),b},w.translate=function(){w.applyPropertyChanges("name"),w.applyPropertyChanges("description")},w.toggleLanguage=function(a){a===w.activeLanguage?w.stopTranslating():(w.activeLanguage=a,w.translation=c(v,w.activeLanguage))},w.hasPropertyChanged=function(a){var b=w.activeLanguage,c=w.translation;return w.translation&&v[a][b]!==c[a]},w.undoPropertyChanges=function(a){var b=w.activeLanguage,c=w.translation;c&&(c[a]=v[a][b])},w.applyPropertyChanges=function(a){var b=w.translation[a];q(a,b,a)},w.stopTranslating=function(){w.translation=void 0,w.activeLanguage=x},w.labelAdded=function(a){var c=_.find(v.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(v.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):(w.addedLabel=a.name,f.label(v,a.name).then(function(){w.labelResponse="success",b.event.labels=angular.copy(v.labels)})["catch"](function(){w.labelResponse="error"}))},w.showConcludedButton=function(){var a=_.get(i,"concludedButton.toggle",!1);if(!a)return!1;var c=_.get(i,"calendarHighlight.date"),d=moment(c).endOf("day");return"event"===b.offerType&&d=h;if(i)l("EVENT-EXPORT.TOO-MANY-ITEMS",{limit:h}).then(function(a){c.alert(a)});else if(f&&f.queryString.length&&m.isValid(f)){e.open({templateUrl:"templates/event-export-modal.html",controller:"EventExportController",controllerAs:"exporter",size:"lg"})}else l("EVENT-EXPORT.QUERY-IS-MISSING").then(function(a){c.alert(a)})}function t(a,b){w(b)}a.resultViewer=new f(30,q()),a.realQuery=!1,a.activeQuery=!1,a.queryEditorShown=!1,a.currentPage=q(),a.language=l.use()||"nl";var u=[{id:"accessibility",name:"Toegankelijkheidsinformatie",permission:n.editFacilities}];o.getPermissions().then(function(b){var c=_.filter(u,function(a){return!_.has(a,"permission")||_.contains(b,a.permission)});a.resultViewer.enableSpecifics(c)});var v=function(c){var e=(a.resultViewer.currentPage-1)*a.resultViewer.pageSize,f="string"==typeof c?c:c.queryString,g=a.resultViewer.currentPage>1?String(a.resultViewer.currentPage):null;d.search({query:p().queryString||null,page:g}),a.resultViewer.loading=!0,b.findOffers(f,e).then(function(c){c.member&&(c=b.reformatJsonLDData(c)),h.addPagedCollection(c),a.resultViewer.setResults(c)})},w=function(b){if(a.activeQuery=b,m.isValid(b)){var c=m.unparse(b);a.resultViewer.queryChanged(c),v(c),c!==b.originalQueryString?a.realQuery=c:a.realQuery=!1}},x=function(c){var d=a.resultViewer.selectedOffers;_.each(d,function(a){var d;d=b.getOffer(new URL(a["@id"])),d.then(function(a){a.label(c)})}),_.each(c,function(a){g.labelOffersById(d,a)})},y=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-label-modal.html",controller:"OfferLabelModalCtrl",controllerAs:"lmc"});d.result.then(x)},z=function(){var b=a.resultViewer.querySelected;b?r():y()},A=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-languages-modal.html",controller:"OfferLanguagesModalCtrl",controllerAs:"lmc"});d.result.then(x)};a.exportEvents=s,a.label=z,a.addLanguageIcons=A,a.startEditing=function(){a.queryEditorShown=!0},a.stopEditing=function(){a.queryEditorShown=!1};var B=1===a.currentPage;a.pageChanged=function(){var b=a.currentPage;B?(a.resultViewer.currentPage=b,v(a.activeQuery),c.scroll(0,0)):(a.currentPage=a.resultViewer.currentPage,B=!0)};var C=_.once(function(){var b=j.$on("searchQueryChanged",t),c=j.$on("startEditingQuery",a.startEditing),d=j.$on("stopEditingQuery",a.stopEditing);a.$on("$destroy",c),a.$on("$destroy",b),a.$on("$destroy",d)});C()}angular.module("udb.search").controller("SearchController",a),a.$inject=["$scope","udbApi","$window","$location","$uibModal","SearchResultViewer","offerLabeller","offerLocator","searchHelper","$rootScope","eventExporter","$translate","LuceneQueryBuilder","authorization","authorizationService"]}(),function(){"use strict";function a(){return{templateUrl:"templates/search.html",restrict:"EA",controller:"SearchController"}}angular.module("udb.search").directive("udbSearch",a)}(),function(){"use strict";function a(a,b,c){function d(){a.all([b.getEventCardSystems(n.id),b.findOrganisationsCardSystems(m.id)]).then(h,e)}function e(a){400===a.status&&(l.uitpasUnavailableType="already_has_ticketsales"),404===a.status&&(l.uitpasUnavailableType="not_found")}function f(){l.uitpasUnavailableType=void 0}function g(){l.availableCardSystems=void 0,f(),j(),d()}function h(a){var b=a[0],c=a[1];l.availableCardSystems=_.map(c,function(a){return _.assign(a,{assignedDistributionKey:i(b,a),active:!!_.find(b,{id:a.id})})})}function i(a,b){var c=_.find(a,{id:b.id});return _.first(!c||_.isEmpty(c.distributionKeys)?b.distributionKeys:c.distributionKeys)}function j(){l.persistingCardSystems=!1}function k(a){return a.assignedDistributionKey?l.distributionKeyAssigned(a):b.addEventCardSystem(n.id,a.id)}var l=this,m=l.organisation,n=l.offerData;l.$onInit=d,l.refresh=g,l.distributionKeyAssigned=function(d){if(!d.assignedDistributionKey)throw"card system distribution key is missing";return l.persistingCardSystems=!0,b.addEventCardSystemDistributionKey(n.id,d.id,d.assignedDistributionKey.id).then(function(){return c.$emit("uitpasDataSaved"),j(),a.resolve()})},l.activeCardSystemsChanged=function(a){function d(b){a.active=!a.active,e(b)}function f(){c.$emit("uitpasDataSaved")}l.persistingCardSystems=!0;var g=a.active?k(a):b.removeEventCardSystem(n.id,a.id);g.then(f,d)["finally"](j)}}angular.module("udb.uitpas").component("cardSystemSelector",{templateUrl:"templates/card-systems.html",controller:a,controllerAs:"cardSystemSelector",bindings:{organisation:"<",offerData:"<"}}),a.$inject=["$q","udbUitpasApi","$rootScope"]}(),function(){"use strict";function a(a,b,c){function d(b){b?(a.showUitpasInfo=_.get(g,"organizer.isUitpas",!1)&&c.isEvent,g.showCardSystems=g.price&&!!g.price.length):(g.showCardSystems=!1,a.showUitpasInfo=!1)}function e(){g.eventFormData=c,d(g.organizer),g.listeners=[b.$on("eventFormSaved",g.showCardSystemsIfPriceIsSelected),b.$on("eventOrganizerSelected",g.updateOrganizer),b.$on("eventOrganizerDeleted",g.updateOrganizer),b.$on("uitpasDataSaved",g.markUitpasDataAsCompleted)]}function f(){_.invoke(g.listeners,"call")}var g=this;a.showUitpasInfo=!1,a.uitpasCssClass="state-incomplete",g.listeners=[],g.showCardSystems=!1,g.$onInit=e,g.$onDestroy=f,g.showCardSystemsIfPriceIsSelected=function(a,b){g.showCardSystems=b.priceInfo&&!!b.priceInfo.length},g.markUitpasDataAsCompleted=function(){a.uitpasCssClass="state-complete"},g.updateOrganizer=function(a,b){g.organizer=b,d(b)}}angular.module("udb.uitpas").component("uitpasInfo",{templateUrl:"templates/uitpasInfo.html",controller:a,controllerAs:"upic",bindings:{organizer:"<",price:"<"}}),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";angular.module("udb.uitpas").constant("DefaultUitpasLabels",{PASPARTOE:"Paspartoe",UITPAS:"UiTPAS",UITPAS_GENT:"UiTPAS Gent",UITPAS_OOSTENDE:"UiTPAS Oostende",UITPAS_REGIO_AALST:"UiTPAS Regio Aalst",UITPAS_DENDER:"UiTPAS Dender",UITPAS_ZUIDWEST:"UiTPAS Zuidwest",UITPAS_MECHELEN:"UiTPAS Mechelen",UITPAS_KEMPEN:"UiTPAS Kempen",UITPAS_MAASMECHELEN:"UiTPAS Maasmechelen",UITPAS_LEUVEN:"UiTPAS Leuven",UITPAS_LIER:"UiTPAS Lier","UITPAS_HEIST-OP-DEN-BERG":"UiTPAS Heist-op-den-Berg",UITPAS_MEETJESLAND:"UiTPAS Meetjesland",UITPAS_WESTHOEK:"UiTPAS Westhoek"})}(),function(){"use strict";function a(a){var b=this;b.organisation=a.organisation,b.query=a.query}angular.module("udb.uitpas").controller("OrganisationSuggestionController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/organisation-suggestion.directive.html",controller:"OrganisationSuggestionController",controllerAs:"os",scope:{organisation:"<",query:"<"},restrict:"A"}}angular.module("udb.uitpas").directive("uitpasOrganisationSuggestion",a)}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){return"object"==typeof a.distributionKeys&&(a.distributionKeys=_.values(a.distributionKeys)),a}function h(b){var c="object"==typeof b.data?_.values(b.data):b.data;return a.resolve(_.map(c,g))}function i(b){return a.resolve(b.data)}function j(b,c,d){function g(g){return f().add(c,"seconds").isAfter(d)?a.reject(g):e(function(){return j(b,c,d)},c)}return b()["catch"](g)}var k=_.get(c,"uitpasUrl"),l=_.get(c,"uitpasMaxDelay",8),m={headers:{"Content-Type":"application/json",Authorization:"Bearer "+d.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}};this.getEventCardSystems=function(a){function c(){return b.get(k+"events/"+a+"/cardSystems/",m)}var d=f().add(l,"s");return j(c,2,d).then(h)},this.getTicketSales=function(c,d){function e(){return b.get(k+"events/"+c,m)}function g(a){return a.data.hasTicketSales}var h=a.defer(),i=f().add(l,"s");return d.isUitpas?h.resolve(j(e,2,i).then(g)):h.resolve(!1),h.promise},this.findOrganisationsCardSystems=function(a){return b.get(k+"organizers/"+a+"/cardSystems/",m).then(h)},this.addEventCardSystem=function(a,c){return b.put(k+"events/"+a+"/cardSystems/"+c,null,m).then(i)},this.removeEventCardSystem=function(a,c){return b["delete"](k+"events/"+a+"/cardSystems/"+c,m).then(i)},this.addEventCardSystemDistributionKey=function(a,c,d){return b.put(k+"events/"+a+"/cardSystems/"+c+"/distributionKey/"+d,null,m).then(i)}}angular.module("udb.uitpas").service("udbUitpasApi",a),a.$inject=["$q","$http","appConfig","uitidAuth","$timeout","moment"]}(),function(){"use strict";function a(){var a;this.useLabels=function(b){a=b},this.$get=["DefaultUitpasLabels",function(b){return a?a:b}]}angular.module("udb.uitpas").provider("UitpasLabels",a)}(),function(){angular.module("udb.core").run(["$templateCache",function(a){"use strict";a.put("templates/calendar-summary.directive.html",'\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n'),a.put("templates/image-detail.directive.html",'\n \n \n \n \n
    \n
  • \n
    \n \n {{::translateImageDetail(\'alt_image\', {index: $index}) }}\n \n
    \n
    \n \n

    {{image.description}}

    \n

    © {{image.copyrightHolder}}

    \n
    \n
    \n
  • \n
\n \n \n\n'),a.put("templates/udb.workflow-status.directive.html",'\n \n \n \n \n {{::cm.status | translate }}\n {{cm.event.availableFrom | date: \'dd/MM/yyyy\'}}\n \n \n

 

\n \n\n\n \n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n
\n \n\n'),a.put("templates/unexpected-error-modal.html",'\n\n\n'),a.put("templates/event-cultuurkuur.html",'
\n
\n

\n
\n
\n

\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n

Bekijk je evenement op cultuurkuur.be en voeg de juiste onderwijsniveaus toe zodat leerkrachten je vinden.

\n Doorgaan\n
\n
\n
\n
\n
\n

\n
\n
\n
\n'),a.put("templates/dashboard-item.directive.html",'\n \n \n \n \n Online op \n Publicatie afgewezen \n
\n \n \n \n - \n \n \n \n\n\n\n \n
\n \n \n
    \n
  • \n \n
  • \n
  • \n
  • \n \n
  • \n
\n
\n
\n \n
\n \n
\n \n
\n
\n\n'),a.put("templates/dashboard-organizer-item.directive.html",'\n \n \n \n
\n \n \n ,\n \n \n\n\n\n \n
\n \n
\n
\n\n'), -a.put("templates/event-delete-confirm-modal.html",'\n\n'),a.put("templates/place-delete-confirm-modal.html",'\n\n'),a.put("templates/dashboard.html",'

\n \n

\n\n
\n \n
\n\n
\n \n
\n\n
\n\n
\n
\n\n
\n \n
\n\n
\n \n
\n\n
\n
\n

\n
\n

\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n \n \n
\n \n\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n
\n \n\n
\n
\n\n
\n
\n\n
\n'),a.put("templates/event-duplication-footer.component.html",'
\n \n \n \n
'),a.put("templates/event-duplication-step.component.html",'

\n\n\n\n\n'),a.put("templates/event-duplication.html",'
\n \n \n
\n'),a.put("templates/job-logo.directive.html",'
\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
\n'),a.put("templates/offer-label-modal.html",'\n\n\n'),a.put("templates/offer-languages-modal.html",'\n\n\n'),a.put("templates/base-job.template.html",'

\n \n \n \n \n

\n'),a.put("templates/failed-job.template.html",'

\n \n \n \n \n \n \n \n

\n'),a.put("templates/job-log.component.html",'
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n \n\n
\n
\n
\n
\n'),a.put("templates/booking-info-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n
  • \n\n
  • \n
  • {{::bookingInfo.email}}
  • \n
  • Van {{::bookingInfo.availabilityStarts | date}} tot {{::bookingInfo.availabilityEnds | date}}
  • \n
\n \n \n\n'),a.put("templates/contact-point-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
\n \n \n\n'),a.put("templates/event-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n
{{::event.name}}
{{::translateType(event.type.label)}}
Toegang\n

\n \n \n
\n \n \n

\n \n \n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n
\n
{{eventLocation(event)}}\n {{eventLocation(event)}}\n
\n \n {{::event.onlineUrl}}\n \n \n
\n \n \n Probleem bij het ophalen van de kalenderinformatie\n \n
\n

\n
\n
\n

\n
\n
\n {{::event.organizer.name}}\n {{::event.organizer.name}}\n
\n \n \n \n \n \n
{{priceInfo.name}}\n \n \n {{priceInfo.price | currency}} \n \n
\n
\n {{ageRange}}\n \n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n Auth0 client id: \n
\n
\n Auth0 client name: \n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/form-age.html",'
\n \n \n
\n \n \n {{ translateAgeRange(ageRange.label) }}\n {{ getAgeRangeLabel(ageRange) }}\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n
\n \n
\n
\n\n'), +cancel:"Abbrechen","delete":"Löschen"}},entry:{exported_documents:"Exportierte Dokumente",notifications:"Benachrichtigungen",in_progress:"In Behandlung"},offerTypes:{Concert:"Konzert",Theatervoorstelling:"Theatervorstellung","Lezing of congres":"Lesung oder Kongress",Dansvoorstelling:"Tanzvorführung",Festival:"Festival",Film:"Film","Sportwedstrijd bekijken":"Sportwettkampf ansehen","Cursus met open sessies":"Kurs mit öffentlichen Sitzungen",Lessenreeks:"Vorlesungsreihe","Sport en beweging":"Sport und Bewegung","Kamp of vakantie":"Camp oder Ferienlager","Begeleide uitstap of rondleiding":"Begleiteter Rundgang",Route:"Ausflug","Spel of quiz":"Spiel oder Quiz","Party of fuif":"Party",Festiviteit:"Feiern","Congres of studiedag":"Kongress oder Studientag","Eet- of drankfestijn":"Spendenmahl","Themen- oder Vergnügungspark":"Themen- oder Vergnügungspark",Theater:"Theater","Jeugdhuis of jeugdcentrum":"Jugendzentrum","Cultuur- of ontmoetingscentrum":"Kultur- oder Begegnungszentrum",Discotheek:"Diskothek","Bibliotheek of documentatiecentrum":"Bibliothek oder Dokumentationszentrum",Bioscoop:"Kino",Horeca:"Gastgewerbe","Openbare ruimte":"Öffentliche Einrichtungen",Tentoonstelling:"Ausstellung","Markt, braderie of kermis":"Markt, Straßenfest oder Jahrmarkt","Natuur, park of tuin":"Natur, Park oder Garten",Beurs:"Messe",Monument:"Monument",Opendeurdag:"Tag der offenen Tür","Recreatiedomein of centrum":"Freizeitbereich oder -zentrum","Park of tuin":"Park oder Garten","Archeologische Site":"Archäologische Stätte","School of onderwijscentrum":"Schule oder Bildungszentrum",Sportcentrum:"Sportzentrum",Winkel:"Laden",Speeltuin:"Spielplats","Museum of galerij":"Museum oder Galerie","Zaal of expohal":"Saal oder Expo-Halle"},offerThemes:{"Antiek en brocante":"Antik und Trödel",Architectuur:"Architektur","Audiovisuele kunst":"Audiovisuelle Kunst",Beeldhouwkunst:"Bildhauerei",Fotografie:"Fotografie",Grafiek:"Grafik",Installatiekunst:"Installationskunst",Schilderkunst:"Malerei","Decoratieve kunst":"Dekorative Kunst",Design:"Design",Mode:"Mode","Meerdere kunstvormen":"Mehrere Kunstformen","Ballet en klassieke dans":"Ballett und klassische Tänze","Volksdans en werelddans":"Volkstanz und Welttänze","Stijl en salondansen":"Stil- und Salontanz","Moderne dans":"Moderner Tanz",Erfgoed:"Kulturerbe","Actie- en avonturenfilm":"Action- und Abenteuerfilm","Animatie en kinderfilms":"Animations- und Kinderfilme","Documentaires en reportages":"Dokumentationen und Reportagen","Griezelfilm of horror":"Gruselfilm oder Horror","Historische film":"Historischer Film",Komedie:"Komödie",Kortfilm:"Kurzfilm",Filmmusical:"Filmmusical",Drama:"Drama","Science fiction":"Science-Fiction",Cinefiel:"Filmliebhaber",Thriller:"Thriller","Meerdere filmgenres":"Mehrere Filmgenres",Geschiedenis:"Geschichte","Gezondheid en wellness":"Gesundheit und Wellness","Landbouw en platteland":"Landbau und Landleben","Milieu en natuur":"Umwelt und Natur",Literatuur:"Literatur","Poëzie":"Poesie",Fictie:"Fiction","Non fictie":"Sachbücher",Strips:"Comics","Klassieke muziek":"Klassische Musik","Jazz en blues":"Jazz und Blues","Pop en rock":"Pop und Rock","Hiphop, r&b en rap":"Hip-Hop, R&B und Rap","Dance muziek":"Dance-Music","Folk en wereldmuziek":"Volks- und Weltmusik",Amusementsmuziek:"Pomusik","Politiek en maatschappij":"Politik und Gesellschaft",Creativiteit:"Kreativität","Computer en techniek":"Computer und Technik",Opvoeding:"Erziehung","Persoon en relaties":"Persönliche Entwicklung und Beziehungen","Interculturele vorming":"Interkulturelle Entwicklung","Kunst en kunsteducatie":"Kunst und Kunsterziehung","Gezondheid en zorg":"Gesundheit und Pflege",Samenleving:"Gesellschaft","Bal en racketsport":"Ballsport und Rückschlagspiele","Atletiek, wandelen en fietsen":"Athletik, wandern und Radfahren","Zwemmen en watersport":"Schwimmen und Wassersport","Fitness, gymnastiek, dans en vechtsport":"Fitness, Gymnastik, Tanz und Kampfsport","Outdoor en Adventure sport":"Outdoor- und Abenteuersport","Lucht en motorsport":"Flug- und Motorsport",Volkssporten:"Volkssportarten","Omnisport en andere":"Omnisport und andere","Tekst- en muziektheater":"Text- und Musiktheater","Humor en comedy":"Humor und Comedy",Musical:"Musical","Figuren en poppentheater":"Figur- und Puppentheater","Opera en operette":"Opera und Operette","Mime en bewegingstheater":"Pantomimen- und Bewegungstheater",Wetenschap:"Wissenschaft","Zingeving, filosofie en religie":"Sinngebung, Philosophie und Religion","Thema onbepaald":"Thema unbestimmt",Circus:"Zirkus",Voeding:"Ernährung",Economie:"Wirtschaft",Avontuur:"Abenteuer",Natuur:"Natur",Sport:"Sport",Technologie:"Technologie",Koken:"Kochen",Themakamp:"Themencamp","Taal en communicatie":"Sprache"},offerThemesGroups:{Dans:"Tanz","Kunst en erfgoed":"Kunst und Kulturerbe",Muziek:"Musik",Sport:"Sport",Varia:"Diverses"},weekdays:{monday:{label:"Mo",name:"Montag"},tuesday:{label:"Di",name:"Dienstag"},wednesday:{label:"Mi",name:"Mittwoch"},thursday:{label:"Do",name:"Donnerstag"},friday:{label:"Fr",name:"Freitag"},saturday:{label:"Sa",name:"Samstag"},sunday:{label:"So",name:"Sonntag"}},search:{search:"Suchen",advanced:"Erweitert",label:"Labeln",deselect:"Auswahl aufheben",savedSearches:{savedSearches:"Gespeicherte Suchanfragen",items:{"Von mir eingegeben":"Von mir eingegeben"},mySearches:"Meine Suchanfragen",title:"Titel",viewResults:"Ergebnisse ansehen",yourSearch:"Ihre Suchanfrage",save:"Speichern"},manage:"Verwalten",oneResult:"1 Ergebnis",multipleResults:"{{count}} Ergebnisse",description:"Beschreibung",labels:"Labels",picture:"Abbildung",what:"Was",where:"Wo",when:"Wann",inputInformation:"Eingabeinformation",noEventsFound:"Keine Veranstaltungen gefunden, probieren Sie eine andere Suchanfrage.",exportButton:"Aktivitäten exportieren",modal:"Ihre Auswahl enthält keine Aktivitäten, probieren Sie, eine andere Suchanfrage zu exportieren.",advancedQueryBuilder:{title:"Ersteller erweiterte Suchanfragen",header:{info:"Hier können Sie komplexe Suchanfragen erstellen. Benötigen Sie Hilfe? Lesen Sie",link:"unsere Anleitung"},group:"Gruppe ",include:"Einschließen",exclude:"Ausschließen",addGroup:"Gruppe hinzufügen",cancel:"Abbrechen",search:"Suchen",syntaxError:'Ihre Abfrage enthält einen Fehler. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage',invalidField:'{{field}} ist kein gültiges Suchfeld. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage'}}})}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k){function l(a){var b=_.cloneDeep(a);return b.withCredentials=!1,delete b.headers.Authorization,b}function m(a,b){var c={};switch(a){case"event":c=new g;break;case"place":c=new h;break;case"organizers":c=new i;break;default:console.warn("Unsupported "+a+" in UdbApi.formateOfferClass")}return c.parseJson(b),c}function n(b){return a.resolve(b.data)}function o(b){if(b){var d={type:new URL(_.get(b,"data.type",c.baseUrl+"problem")),title:_.get(b,"data.title","Something went wrong."),detail:_.get(b,"data.detail","We failed to perform the requested action!"),status:b.status};return a.reject(d)}}var p=c.baseApiUrl,q={headers:{"Content-Type":"application/json",Authorization:"Bearer "+e.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}},r=f("offerCache");this.mainLanguage=k.use()||"nl",this.removeItemFromCache=function(a){var b=r.get(a);b&&r.remove(a)},this.createSavedSearch=function(a,d){var e={name:a,query:d};return b.post(c.baseUrl+"saved-searches/v3",e,q).then(n)},this.getSavedSearches=function(){return b.get(c.baseUrl+"saved-searches/v3",q).then(n)},this.deleteSavedSearch=function(a){return b["delete"](c.baseUrl+"saved-searches/v3/"+a,q).then(n)},this.editSavedSearch=function(a,d,e){return b.put(c.baseUrl+"saved-searches/v3/"+a,{name:d,query:e},q).then(n)},this.findOffers=function(a,d,e){var f=d||0,g={start:f,disableDefaultFilters:!0,workflowStatus:"READY_FOR_VALIDATION,APPROVED",embed:!0},h=_.cloneDeep(q);return h.params=g,a.length&&(g.q=a),e&&(g.workflowStatus="DRAFT,"+g.workflowStatus),b.get(c.baseUrl+"offers/",l(h)).then(n,o)},this.findEvents=function(a,c){var d=c||0,e={start:d},f=_.cloneDeep(q);return f.params=e,a.length&&(e.query=a),b.get(p+"search",f).then(n,o)},this.findToModerate=function(a,d,e){var f=c.baseUrl+"events/?q="+a,g=moment.utc().format(),h={start:d,limit:e,workflowStatus:"READY_FOR_VALIDATION",audienceType:"everyone",availableFrom:g,availableTo:"*"},i=_.cloneDeep(q);return i.params=h,b.get(f,i).then(n,o)},this.getOffer=function(c){function d(a){var b=a["@id"].split("/").reverse()[1],d=m(b,a);d.parseJson(a),r.put(c,d),e.resolve(d)}var e=a.defer(),f=r.get(c);return f?e.resolve(f):b.get(c.toString()+"?embedUitpasPrices=false",q).success(d).error(e.reject),e.promise},this.reformatJsonLDData=function(a){return a.member=a.member.map(function(a){var b=a["@context"]?a["@context"].split("/").pop():"";return b=b.charAt(0).toUpperCase()+b.slice(1),a["@type"]=a["@type"]?a["@type"]:b,a}),a},this.formatJsonLDEntity=function(a){var b=a["@type"].toLowerCase(),c=m(b,a);return c},this.getOrganizerByLDId=function(a){var b=a.split("/").pop();return this.getOrganizerById(b)},this.getOrganizerById=function(d){var e=a.defer(),f=r.get(d);if(f)e.resolve(f);else{var g=b.get(c.baseUrl+"organizers/"+d,q);g.success(function(a){var b=new i;b.parseJson(a),r.put(d,b),e.resolve(b)})}return e.promise},this.findOrganisations=function(a,d,e,f){var g={limit:d?d:10,start:a?a:0,embed:!0};e&&(g.website=e),f&&(g.name=f);var h=_.set(l(q),"params",g);return b.get(c.baseUrl+"organizers/",h).then(n)},this.addLabelToOrganizer=function(a,d){return b.put(c.baseUrl+"organizers/"+a+"/labels/"+d,{},q).then(n,o)},this.deleteLabelFromOrganizer=function(a,d){return b["delete"](c.baseUrl+"organizers/"+a+"/labels/"+d,q).then(n,o)},this.updateOrganizerWebsite=function(a,d){var e={url:d};return b.put(c.baseUrl+"organizers/"+a+"/url",e,q).then(n,o)},this.updateOrganizerName=function(a,d,e){var f={name:d};return b.put(c.baseUrl+"organizers/"+a+"/name/"+e,f,q).then(n,o)},this.updateOrganizerAddress=function(a,d,e){return b.put(c.baseUrl+"organizers/"+a+"/address/"+e,d,q).then(n,o)},this.removeOrganizerAddress=function(a){return b["delete"](c.baseUrl+"organizers/"+a+"/address",q).then(n,o)},this.updateOrganizerContact=function(a,d){return b.put(c.baseUrl+"organizers/"+a+"/contactPoint",d,q).then(n,o)},this.getOrganizerPermissions=function(a){var d=q;return b.get(c.baseUrl+"organizers/"+a+"/permissions",d).then(n,o)},this.getHistory=function(a,d){var e="place"===d?"places/":"event/";return b.get(c.baseUrl+e+a+"/history",q).then(n)},this.getMe=function(){function f(a){var b={id:a.id,nick:a.nick,uuid:a.uuid,username:a.username,email:a.email};d.putObject("user",b),g.resolve(b)}var g=a.defer(),h=e.getUser();return h?g.resolve(h):e.getToken()?(q.headers.Authorization="Bearer "+e.getToken(),b.get(c.baseUrl+"user",q).success(f).error(g.reject)):g.reject(),g.promise},this.getMyPermissions=function(){function d(a){r.put(g,a),f.resolve(a)}var f=a.defer(),g=e.getToken();if(g){var h=r.get(g);h?f.resolve(h):b.get(c.baseUrl+"user/permissions/",q).success(d).error(function(a,b){-1!==b&&(window.parent.postMessage({source:"UDB",type:"HTTP_ERROR_CODE",code:b||403},"*"),f.reject())})}else window.parent.postMessage({source:"UDB",type:"HTTP_ERROR_CODE",code:401},"*"),f.reject();return f.promise},this.hasPermission=function(a){return b.get(a+"/permission",q).then(function(a){return!!a.data.hasPermission})},this.labelOffers=function(a,d){return b.post(c.baseUrl+"offers/labels",{label:d,offers:a},q)},this.labelQuery=function(a,d){return b.post(c.baseUrl+"query/labels",{label:d,query:a},q)},this.exportEvents=function(a,d,e,f,g,h,i){var j={query:a,selection:_.map(h,function(a){return a.toString()}),order:{},include:f,perDay:g,customizations:i||{}};return d&&(j.email=d),b.post(c.baseUrl+"events/export/"+e,j,q)},this.translateProperty=function(a,c,d,e){var f={};return f[c]=e,"name"===c&&(c="title"),b.post(a+"/"+d+"/"+c,f,q)},this.translateAddress=function(a,d,e){return b.put(c.baseUrl+"places/"+a+"/address/"+d,{addressCountry:e.addressCountry,addressLocality:e.addressLocality,postalCode:e.postalCode,streetAddress:e.streetAddress},q)};var s={typicalAgeRange:"typical-age-range"};this.updateProperty=function(a,c,d){var e={};e[c]=d;var f=s[c]?s[c]:c;return b.post(a+"/"+f,e,q)},this.updateTypicalAgeRange=function(a,c){var d={typicalAgeRange:c};return b.put(a+"/typicalAgeRange",d,q)},this.updatePriceInfo=function(a,c){return b.put(a+"/priceInfo",c,q)},this.updateOfferFacilities=function(a,c){return b.put(a+"/facilities/",{facilities:c},q)},this.labelOffer=function(a,c){return b.post(a+"/labels",{label:c},q)},this.unlabelOffer=function(a,c){return b["delete"](a+"/labels/"+encodeURIComponent(c),q)["catch"](o)},this.deleteOffer=function(a){return b["delete"](a["@id"],q)},this.deleteOrganization=function(a){return b["delete"](a["@id"],q)["catch"](o)},this.createOffer=function(a,d){return b.post(c.baseUrl+a,d,q).then(function(a){return new URL(a.data.url)})},this.findEventsAtPlace=function(d){function e(b){var d=_.map(b.events,function(a){return{"@id":c.baseUrl+"event/"+a["@id"]}});return a.resolve(d)}return b.get(d+"/events",q).then(function(a){return n(a).then(e)})},this.createOrganizer=function(a){return b.post(c.baseUrl+"organizers/",a,q)},this.updateMajorInfo=function(a,c){return b.post(a+"/major-info",c,q)},this.deleteTypicalAgeRange=function(a){return b["delete"](a+"/typical-age-range",q)},this.deleteOfferOrganizer=function(a,c){return b["delete"](a+"/organizer/"+c,q)},this.addImage=function(a,c){var d={mediaObjectId:c};return b.post(a+"/images",d,q)},this.updateImage=function(a,c,d,e){var f={description:d,copyrightHolder:e};return b.post(a+"/images/"+c,f,q)},this.removeImage=function(a,c){return b["delete"](a+"/images/"+c,q)},this.selectMainImage=function(a,c){var d={mediaObjectId:c};return b.post(a+"/images/main",d,q)},this.setAudienceType=function(a,c){return b.put(a.toString()+"/audience",{audienceType:c},q).then(n,o)},this.getDashboardItems=function(a){var d={disableDefaultFilters:!0,workflowStatus:"DRAFT,READY_FOR_VALIDATION,APPROVED,REJECTED","sort[modified]":"desc",limit:50,start:50*(a-1),embed:!0},e=_.get(c,"created_by_query_mode","uuid");return this.getMe().then(function(a){var f=a.uuid,g=a.email;"uuid"===e?d.creator=f:"email"===e?d.creator=g:"mixed"===e&&(d.q="creator:("+f+" OR "+g+")");var h=_.cloneDeep(q);return h.params=d,b.get(c.baseUrl+"offers/",h).then(n)})},this.getDashboardOrganizers=function(a){var d=_.cloneDeep(q);return this.getMe().then(function(e){var f=e.uuid;return d.params={creator:f,"sort[modified]":"desc",limit:50,start:50*(a-1),embed:!0},b.get(c.baseUrl+"organizers/",d).then(n)})},this.uploadMedia=function(a,b,d,e){var f={url:c.baseUrl+"images/",fields:{description:b,copyrightHolder:d,language:e},file:a},g=_.assign(q,f);return j.upload(g)},this.getMedia=function(a){return b.get(c.baseUrl+"media/"+a,q).then(n)},this.createLabel=function(a,d,e,f){var g={name:a,visibility:d?"visible":"invisible",privacy:e?"private":"public"};return f&&(g.parentId=f),b.post(c.baseUrl+"labels/",g,q).then(n,o)},this.updateLabel=function(a,d){return b.patch(c.baseUrl+"labels/"+a,{command:d},q).then(n,o)},this.deleteLabel=function(a){return b["delete"](c.baseUrl+"labels/"+a,q).then(n,o)},this.getLabelById=function(a){return b.get(c.baseUrl+"labels/"+a,q).then(n)},this.findLabels=function(a,d,e,f){var g=_.cloneDeep(q);return g.params={query:a,suggestion:f===!1?void 0:!0,limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"labels/",g).then(n)},this.getRoleById=function(a){return b.get(c.baseUrl+"roles/"+a,q).then(n,o)},this.findRoles=function(a,d,e){var f=_.cloneDeep(q);return f.params={query:a,limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"roles/",f).then(n)},this.createRole=function(a){var d={name:a};return b.post(c.baseUrl+"roles/",d,q).then(n,o)},this.updateRoleName=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=RenameRole";var f={name:d};return b.patch(c.baseUrl+"roles/"+a,f,e).then(n,o)},this.createRoleConstraint=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=addConstraint";var f={query:d};return b.post(c.baseUrl+"roles/"+a+"/constraints/",f,e).then(n,o)},this.updateRoleConstraint=function(a,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model=updateConstraint";var f={query:d};return b.put(c.baseUrl+"roles/"+a+"/constraints/",f,e).then(n,o)},this.removeRoleConstraint=function(a){var d=_.cloneDeep(q);return d.headers["Content-Type"]="application/ld+json;domain-model=removeConstraint",b["delete"](c.baseUrl+"roles/"+a+"/constraints/",d).then(n,o)},this.getPermissions=function(){var a=q;return b.get(c.baseUrl+"permissions/",a).then(n,o)},this.getRolePermissions=function(a){var d=q;return b.get(c.baseUrl+"roles/"+a+"/permissions/",d).then(n,o)},this.getRoleUsers=function(a){var d=q;return b.get(c.baseUrl+"roles/"+a+"/users/",d).then(n,o)},this.addPermissionToRole=function(a,d){var e=q;return b.put(c.baseUrl+"roles/"+d+"/permissions/"+a,{},e).then(n,o)},this.removePermissionFromRole=function(a,d){var e=q;return b["delete"](c.baseUrl+"roles/"+d+"/permissions/"+a,e).then(n,o)},this.addUserToRole=function(a,d){var e=q;return b.put(c.baseUrl+"roles/"+d+"/users/"+a,{},e).then(n,o)},this.findUsersByEmail=function(a,d,e){var f=_.cloneDeep(q);return f.params={email:a?a:"",limit:d?d:30,start:e?e:0},b.get(c.baseUrl+"users/",f).then(n,o)},this.findUserWithEmail=function(a){var d=_.cloneDeep(q);return b.get(c.baseUrl+"users/emails/"+a,d).then(n,o)},this.removeRole=function(a){return b["delete"](c.baseUrl+"roles/"+a,q).then(n,o)},this.getRoleLabels=function(a){return b.get(c.baseUrl+"roles/"+a+"/labels/",q).then(n,o)},this.addLabelToRole=function(a,d){return b.put(c.baseUrl+"roles/"+a+"/labels/"+d,{},q).then(n,o)},this.removeLabelFromRole=function(a,d){return b["delete"](c.baseUrl+"roles/"+a+"/labels/"+d,q).then(n,o)},this.removeUserFromRole=function(a,d){return b["delete"](c.baseUrl+"roles/"+a+"/users/"+d,q).then(n,o)},this.getUser=function(a){return b.get(c.baseUrl+"users/"+a,q).then(n,o)},this.getUserRoles=function(a){return b.get(c.baseUrl+"users/"+a+"/roles/",q).then(n,o)},this.getMyRoles=function(){return b.get(c.baseUrl+"user/roles/",q).then(n,o)},this.patchOffer=function(a,c,d){var e=_.cloneDeep(q);e.headers["Content-Type"]="application/ld+json;domain-model="+c;var f={reason:d};return b.patch(a,d?f:{},e).then(n,o)},this.publishOffer=function(a,c){var d=_.cloneDeep(q);d.headers["Content-Type"]="application/ld+json;domain-model=Publish";var e=c instanceof Date?{publicationDate:c}:{};return b.patch(a.toString(),e,d).then(n,o)},this.getCalendarSummary=function(a,d,e){var f=_.cloneDeep(q),g=c.baseUrl+"events/"+a,h=e+"_BE";return f.headers.Accept="text/html",b.get(g+"/calsum?format="+d+"&langCode="+h,f).then(n)},this.duplicateEvent=function(a,c){return b.post(a+"/copies/",c,q).then(n,o)}}angular.module("udb.core").service("udbApi",a),a.$inject=["$q","$http","appConfig","$cookies","uitidAuth","$cacheFactory","UdbEvent","UdbPlace","UdbOrganizer","Upload","$translate"]}(),function(){"use strict";function a(a,b,c){function d(a,b){var c,d=_.find(a.terms,function(a){return a.domain===b});return d&&(c=d.label),d}function e(a){var b=h.UNKNOWN;if(a.bookingInfo&&a.bookingInfo.length>0){var c=parseFloat(a.bookingInfo[0].price);b=c>0?h.PAYED:h.FREE}return b}function f(b){var c={en:!1,fr:!1,de:!1},d=["name","description"];_.forEach(c,function(e,f){var g,h=0;_.forEach(d,function(a){b[a]&&b[a][f]&&++h}),g=h?h===d.length?a.ALL:a.SOME:a.NONE,c[f]=g}),b.translationState=c}function g(a){var b=[];if(a.mediaObject)for(var c=0;c0&&(this.price=parseFloat(a.bookingInfo[0].price)),this.pricing=e(a),this.priceInfo=a.priceInfo||[],this.publisher=a.publisher||"",this.created=new Date(a.created),this.modified=new Date(a.modified),this.creator=a.creator||"",this.type=d(a,"eventtype")||"",this.theme=d(a,"theme")||"",this.onlineUrl=a.onlineUrl,this.attendanceMode=a.attendanceMode,this.status=a.status,this.bookingAvailability=a.bookingAvailability,this.calendarType=a.calendarType||"",this.startDate=a.startDate,this.endDate=a.endDate,this.subEvent=a.subEvent||[],this.openingHours=a.openingHours||[],this.mediaObject=a.mediaObject||[],this.typicalAgeRange=a.typicalAgeRange||"",this.bookingInfo=a.bookingInfo||{},this.bookingInfo.urlLabel&&(this.bookingInfo.urlLabel=_.get(a.bookingInfo.urlLabel,a.mainLanguage,a.bookingInfo.urlLabel)),this.contactPoint=a.contactPoint||{url:[],phone:[],email:[]},this.url="event/"+this.id,this.sameAs=a.sameAs,this.additionalData=a.additionalData||{},a.typicalAgeRange&&(this.typicalAgeRange=a.typicalAgeRange),a.available&&(this.available=a.available),a.workflowStatus&&(this.workflowStatus=a.workflowStatus),this.availableFrom=a.availableFrom,this.uitpasData={},this.audience={audienceType:_.get(a,"audience.audienceType","everyone")},this.educationFields=[],this.educationLevels=[],this.educationTargetAudience=[],a.terms&&(this.educationFields=_.filter(a.terms,"domain","educationfield"),this.educationLevels=_.filter(a.terms,"domain","educationlevel"),this.educationTargetAudience=_.filter(a.terms,function(a){var b="2.1.14.0.0",c="2.1.13.0.0";return"targetaudience"===a.domain&&(a.id===b||a.id===c)})),this.facilities=_.filter(_.get(a,"terms",[]),{domain:"facility"}),this.mainLanguage=a.mainLanguage||"nl",this.languages=a.languages||[]},setName:function(a,b){this.name[b]=a},getName:function(a){return this.name[a]},setEventType:function(a,b){this.type={id:a,label:b,domain:"eventtype"}},getEventType:function(){return this.type},getEventTypeLabel:function(){return this.type.label?this.type.label:""},setTheme:function(a,b){this.theme={id:a,label:b,domain:"thema"}},getTheme:function(){return this.theme},getThemeLabel:function(){return this.theme.label?this.theme.label:""},resetOpeningHours:function(){this.openingHours=[]},getOpeningHours:function(){return this.openingHours},setLocation:function(a){this.location=a},getLocation:function(){return this.location},label:function(a){var b=[],c=this.labels;_.isArray(a)&&(b=a),_.isString(a)&&(b=[a]),b=_.filter(b,function(a){var b=_.find(c,function(b){return b.toUpperCase()===a.toUpperCase()});return!b}),this.labels=_.union(this.labels,b)},unlabel:function(a){_.remove(this.labels,function(b){return b===a})},updateTranslationState:function(a){a=a||this,f(a)},isExpired:function(){return"permanent"!==this.calendarType&&new Date(this.endDate)a?!0:!1}return!1}},i}angular.module("udb.core").factory("UdbEvent",a),a.$inject=["EventTranslationState","UdbPlace","UdbOrganizer"]}(),function(){"use strict";function a(a){var b={restrict:"A",link:function(b,c,d){if(b.organizer.title)b.fetching=!1;else{b.fetching=!0;var e=a.getOrganizerByLDId(b.organizer.id);e.then(function(a){b.organizer=a,b.fetching=!1})}}};return b}angular.module("udb.core").directive("udbOrganizer",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){return d(a.labels)||d(a.hiddenLabels)}function d(b){return e(b)&&!_.isEmpty(_.intersection(e(b),_.values(e(a))))}function e(a){var b=[];return _.each(a,function(a,c){b[c]=a.toLowerCase()}),b}function f(a,b){return _.chain(a).get(b,[]).first().value()}function g(a){var c={en:!1,fr:!1,de:!1},d=["name"];_.forEach(c,function(e,f){var g,h=0;_.forEach(d,function(b){a[b]&&a[b][f]&&++h}),g=h?h===d.length?b.ALL:b.SOME:b.NONE,c[f]=g}),a.translationState=c}var h=function(a){this.id="",this.name="",a&&this.parseJson(a)};return h.prototype={parseJson:function(a){this["@id"]=a["@id"],this.id=a["@id"].split("/").pop(),this.name=_.get(a.name,a.mainLanguage,null)||_.get(a.name,"nl",null)||_.get(a,"name",""),this.description=_.get(a.description,a.mainLanguage,null)||_.get(a.description,"nl",null)||_.get(a,"description",""),this.educationalDescription=_.get(a.educationalDescription,a.mainLanguage,null)||_.get(a.educationalDescription,"nl",null)||_.get(a,"educationalDescription",""),this.address=_.get(a.address,a.mainLanguage,null)||_.get(a.address,"nl",null)||a.address||[],this.email=f(a,"contactPoint.email"),this.phone=f(a,"contactPoint.phone"),this.website=a.url,this.contactPoint=a.contactPoint,this.mediaObject=a.images||[],this.image=a.mainImage,this.labels=_.union(a.labels,a.hiddenLabels),this.hiddenLabels=a.hiddenLabels||[],this.isUitpas=c(a),this.created=new Date(a.created),this.deleted=Boolean("DELETED"===a.workflowStatus),this.detailUrl="/organizer/"+this.id},updateTranslationState:function(a){a=a||this,g(a)},regex:{url:new RegExp(/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i)}},h}angular.module("udb.core").factory("UdbOrganizer",a),a.$inject=["UitpasLabels","EventTranslationState"]}(),function(){"use strict";function a(a,b,c,d){this.suggestOrganizers=function(c){function e(a){var b=_.map(a.member,function(a){return new d(a)});f.resolve(b)}var f=a.defer();return b.findOrganisations(0,10,null,c).then(e),f.promise},this.findOrganizersWebsite=function(a){return b.findOrganisations(0,10,a,null)},this.findOrganizersCardsystem=function(a){return c.findOrganisationsCardSystems(a)}}angular.module("udb.core").service("udbOrganizers",a),a.$inject=["$q","udbApi","udbUitpasApi","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c){function d(a,b){var c=_.find(a.terms,function(a){return a.domain===b});return c?c:void 0}function e(a,b){var c=[];if(a.terms)for(var d=0;da?!0:!1}return!1}},h}angular.module("udb.core").factory("UdbPlace",a),a.$inject=["EventTranslationState","placeCategories","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c){this.getUdb3ContentForCurrentUser=function(){return b.get(c.baseApiUrl+"udb3_content_current_user")}}angular.module("udb.core").service("udb3Content",a),a.$inject=["$q","$http","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){function f(){d.remove("token"),d.remove("user")}function g(){var a=b.protocol()+"://"+b.host(),c=b.port(); +return 80===c?a:a+":"+c}this.logout=function(){var b=g(),d=c.authUrl+"logout";f(),d+="?destination="+encodeURIComponent(b),a.location.href=d},this.login=function(d){var e=b.absUrl(),g=c.authUrl+"connect";f(),g+="?destination="+encodeURIComponent(e)+"&lang="+d,a.location.href=g},this.register=function(d){var e=b.absUrl(),g=c.authUrl+"register";f(),g+="?destination="+encodeURIComponent(e)+"&lang="+d,a.location.href=g},this.setToken=function(a){d.put("token",a),d.remove("user")},this.getToken=function(){var a=this,c=d.get("token"),e=b.search(),f=e.jwt;return f&&f!==c&&(c=f,a.setToken(f),window===window.parent&&b.search("jwt",null)),c},this.getUser=function(){return d.getObject("user")}}angular.module("udb.core").service("uitidAuth",a),a.$inject=["$window","$location","appConfig","$cookies","jwtHelper"]}(),function(){"use strict";function a(a,b,c){function d(a){return"?utm_source=uitdatabank.be&utm_medium=referral&utm_campaign=udb3&utm_content="+a+"&uid="+f.user.id}function e(a){var b=f.event.labels.concat(f.event.hiddenLabels),d=b.filter(function(b){return c[a].indexOf(b)>-1}).map(function(a){return a.replace("cultuurkuur_","")});return d}var f=this;if(f.cultuurkuurMaintenance=_.get(a,"cultuurkuur.maintenance"),f.cultuurkuurMaintenance)f.cultuurkuurMessage=_.get(a,"cultuurkuur.cultuurkuurMessage");else{var g=_.get(a,"cultuurkuur.cultuurkuurUrl");f.user=b.getUser(),f.previewLink=g+"agenda/e/x/"+f.event.id+d("preview1.0"),f.editLink=g+"event/"+f.event.id+"/edit"+d("edit1.0"),f.continueLink=g+"event/"+f.event.id+"/edit"+d("continue1.0"),f.educationFieldsViaLabels=e("educationFields"),f.educationLevelsViaLabels=e("educationLevels"),f.targetAudienceViaLabels=e("targetAudience"),f.cultuurKuurInfo={levels:f.educationLevelsViaLabels.length>0?f.educationLevelsViaLabels:_.pluck(f.event.educationLevels,"label"),fields:f.educationFieldsViaLabels.length>0?f.educationFieldsViaLabels:_.pluck(f.event.educationFields,"label"),targetAudience:f.targetAudienceViaLabels.length>0?f.targetAudienceViaLabels:_.pluck(f.event.educationTargetAudience,"label")},f.isIncomplete=0===f.cultuurKuurInfo.levels.length&&0===f.cultuurKuurInfo.fields.length,f.forSchools="education"===f.event.audience.audienceType}}angular.module("udb.cultuurkuur").component("udbEventCultuurkuurComponent",{bindings:{event:"<",permission:"<"},templateUrl:"templates/event-cultuurkuur.html",controller:a}),a.$inject=["appConfig","uitidAuth","cultuurkuurLabels"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"offerCtrl",templateUrl:"templates/dashboard-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardEventItem",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OrganizerController",controllerAs:"organizerCtrl",templateUrl:"templates/dashboard-organizer-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardOrganizerItem",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"offerCtrl",templateUrl:"templates/dashboard-item.directive.html"};return a}angular.module("udb.dashboard").directive("udbDashboardPlaceItem",a)}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){a.saving=!1,a.error=!0}a.error=!1,a.saving=!0,c.deleteOffer(d).then(b.close)["catch"](e)}function f(){b.dismiss()}a.item=d,a.saving=!1,a.error=!1,a.cancelRemoval=f,a.deleteEvent=e}angular.module("udb.dashboard").controller("EventDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","eventCrud","item"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){b.$watch(function(){return o.labels},function(a){b.event.labels=angular.copy(a)})}function k(a,b,c){var d=p.activeLanguage,f=c||a;b&&b!==o[a][d]&&e.translateProperty(o,f,d,b).then(o.updateTranslationState(o))}function l(){p.labelResponse="",p.labelsError=""}function m(a){b.event.labels=angular.copy(o.labels),p.labelResponse="unlabelError",p.labelsError=a.title}function n(a){l(),f.unlabel(o,a.name)["catch"](m)}var o,p=this,q=i.use()||"nl";p.translation=!1,p.activeLanguage=q,p.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],p.labelRemoved=n,p.init=function(){return b.event.name?(b.event=c(b.event,q,!0),b.event.id=b.event["@id"].split("/").pop(),b.offerType="organizer",p.fetching=!1,void 0):(p.fetching=!0,a.getOffer(b.event["@id"]).then(function(a){return o=a,o.updateTranslationState(),b.event=c(o,q,!0),b.offerType="organizer",p.fetching=!1,j(),o}))},h.when(p.init())["finally"](function(){p.editable=!0}),p.hasActiveTranslation=function(){var a=o;return a&&a.translationState[p.activeLanguage]!==d.NONE},p.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return o&&a&&(b=o.translationState[a].icon),b},p.translate=function(){p.applyPropertyChanges("name")},p.toggleLanguage=function(a){a===p.activeLanguage?p.stopTranslating():(p.activeLanguage=a,p.translation=c(o,p.activeLanguage))},p.hasPropertyChanged=function(a){var b=p.activeLanguage,c=p.translation;return p.translation&&o[a][b]!==c[a]},p.undoPropertyChanges=function(a){var b=p.activeLanguage,c=p.translation;c&&(c[a]=o[a][b])},p.applyPropertyChanges=function(a){var b=p.translation[a];k(a,b,a)},p.stopTranslating=function(){p.translation=void 0,p.activeLanguage=q},p.labelAdded=function(a){var c=_.find(o.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(o.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):f.label(o,a.name).then(function(a){a.success?(p.labelResponse="success",p.addedLabel=a.name):(p.labelResponse="error",p.labelsError=a),b.event.labels=angular.copy(o.labels)})}}angular.module("udb.dashboard").controller("OrganizerController",a),a.$inject=["udbApi","$scope","jsonLDLangFilter","EventTranslationState","offerTranslator","offerLabeller","$window","$q","$translate"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(){function e(){a.saving=!1,a.error=!0}a.saving=!0,a.error=!1,c.deleteOffer(d).then(b.close)["catch"](e)}function h(){b.dismiss()}a.place=d,a.saving=!1,a.events=e?e:[],a.hasEvents=a.events.length>0,a.baseUrl=f.udb3BaseUrl,a.cancelRemoval=h,a.deletePlace=g}angular.module("udb.dashboard").controller("PlaceDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","eventCrud","place","events","appConfig"]}(),function(){!function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){function k(a){u.username=a.username}function l(a){return a.member&&(a.member=a.member.map(function(a){var b=a["@context"]?a["@context"].split("/").pop():"";return b=b.charAt(0).toUpperCase()+b.slice(1),a["@type"]=a["@type"]?a["@type"]:b,a})),a}function m(b){b=l(b),e.addPagedCollection(b),u.pagedItemViewer.setResults(b),a.scrollTop(0)}function n(){c.getDashboardItems(u.pagedItemViewer.currentPage).then(m)}function o(b){b=l(b),e.addPagedCollection(b),u.pagedItemViewerOrganizers.setResults(b),a.scrollTop(0)}function p(){c.getDashboardOrganizers(u.pagedItemViewer.currentPage).then(o)}function q(a){var c=b.open({templateUrl:"templates/event-delete-confirm-modal.html",controller:"EventDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});c.result.then(function(){a.showDeleted=!0})}function r(a){function c(a,c){var d=b.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return c}}});d.result.then(function(){a.showDeleted=!0})}function e(b){c(a,b)}d.findEventsAtPlace(a.apiUrl).then(e)}function s(a){var b=-1===a["@id"].indexOf("place")?"event":"place";a.name=a.name.replace(/'/g,""),"event"===b?q(a):r(a)}function t(){var a=b.open({templateUrl:"templates/event-form-organizer-modal.html",controller:"EventFormOrganizerModalController",resolve:{organizerName:function(){return""}}});a.result.then(function(a){i.go("management.organizers.detail",{id:a.id})})}var u=this,v=j.use();if(u.pagedItemViewer=new f(50,1),u.pagedItemViewerOrganizers=new f(50,1),u.openDeleteConfirmModal=s,u.updateItemViewer=n,u.openCreateOrganizerModal=t,u.updateOrganizerViewer=p,u.toggleInfoMessage=g.toggleInfoMessage,u.username="",u.hideOnlineDate=!1,g.infoMessage&&g.infoMessage[v]&&(u.infoMessage=g.infoMessage[v]),"undefined"!=typeof g.addOffer?("undefined"!=typeof g.addOffer.toggle?(u.toggleAddOffer=g.addOffer.toggle,g.addOffer.toggle&&("undefined"!=typeof g.addOffer.expirationDate||""!==g.addOffer.expirationDate)&&(h().isAfter(h(g.addOffer.expirationDate))?u.toggleAddOffer=!1:u.toggleAddOffer=!0)):u.toggleAddOffer=!0,"undefined"!=typeof g.addOffer.expirationMessage||""!==g.addOffer.expirationMessage?u.addOfferExpirationMessage=g.addOffer.expirationMessage:u.addOfferExpirationMessage=""):u.toggleAddOffer=!0,"undefined"!=typeof g.offerEditor.defaultPublicationDate){var w=g.offerEditor.defaultPublicationDate;""!==w&&(u.hideOnlineDate=!0)}if("undefined"!=typeof g.publicationRulesLink){var x=g.publicationRulesLink;""!==x&&(u.publicationRulesLink=x)}if("undefined"!=typeof g.enableMyOrganizers){var y=g.enableMyOrganizers;""!==y&&(u.enableMyOrganizers=y)}c.getMe().then(k),n(),p()}angular.module("udb.dashboard").controller("DashboardController",a),a.$inject=["$document","$uibModal","udbApi","eventCrud","offerLocator","SearchResultViewer","appConfig","moment","$state","$translate"]}()}(),function(){"use strict";function a(){return{templateUrl:"templates/dashboard.html",controller:"DashboardController",controllerAs:"dash",restrict:"EA"}}angular.module("udb.dashboard").directive("udbDashboard",a)}(),function(){"use strict";function a(a,b,c,d,e){function f(a){c.$emit("duplicateTimingChanged",a)}var g=this,h=a.clone();d("BaseCalendarController",{calendar:g,$scope:e}),g.init(h,_.cloneDeep(b)),g.timeSpans.forEach(function(a){a.status={type:"Available"}}),g.timeSpans.forEach(function(a){a.bookingAvailability={type:"Available"}}),g.formData.timingChanged$.subscribe(f)}angular.module("udb.duplication").controller("DuplicationCalendarController",a),a.$inject=["EventFormData","OpeningHoursCollection","$rootScope","$controller","$scope"]}(),function(){"use strict";function a(){return{restrict:"AE",controller:"DuplicationCalendarController",controllerAs:"calendar",templateUrl:"templates/form-event-calendar.component.html"}}angular.module("udb.duplication").directive("udbEventDuplicationCalendar",a)}(),function(){"use strict";function a(a){return a[1]}function b(b,c,d,e){function f(a){d.go("split.eventEdit",{id:a})}function g(){i.asyncError=!0,i.duplicating=!1}function h(){i.asyncError=!1,i.duplicating=!0}var i=this,j=b.$eventToObservable("duplicateTimingChanged").map(a),k=e.createObservableFunction(i,"createDuplicate"),l=j.startWith(!1);l.subscribe(function(a){i.readyForDuplication=!!a}),k.withLatestFrom(l,function(a,b){b&&(h(),c.duplicate(b).then(f,g))}).subscribe()}angular.module("udb.duplication").component("udbEventDuplicationFooter",{templateUrl:"templates/event-duplication-footer.component.html",controller:b,controllerAs:"duplication"}),b.$inject=["$rootScope","eventDuplicator","$state","rx"]}(),function(){"use strict";function a(a){var b=this;b.eventId=a.id,b.readyToDuplicate=function(){return!1}}angular.module("udb.duplication").component("udbEventDuplicationStep",{templateUrl:"templates/event-duplication-step.component.html",controller:a,controllerAs:"duplication"}),a.$inject=["EventFormData"]}(),function(){"use strict";function a(a,b){function c(a){return b.add(a.eventId,a.url),a.eventId}var d=["calendar"];this.duplicate=function(b){var e=_.pick(b,d);return b.openingHours&&(e.calendar.openingHours=b.openingHours),a.duplicateEvent(b.apiUrl,e.calendar).then(c)}}angular.module("udb.duplication").service("eventDuplicator",a),a.$inject=["udbApi","offerLocator"]}(),function(){"use strict";angular.module("udb.entry").constant("JobLogoStates",{WARNING:"warning",COMPLETE:"complete",BUSY:"busy",IDLE:"idle"})}(),function(){"use strict";function a(a,b,c){var d=this;d.updateCurrentState=function(){var c=[{state:a.WARNING,check:!_.isEmpty(b.getFailedJobs())},{state:a.COMPLETE,check:!_.isEmpty(b.getFinishedExportJobs())},{state:a.BUSY,check:b.hasActiveJobs()},{state:a.IDLE,check:!0}],e=_.find(c,function(a){return a.check}).state;d.state=e},d.getState=function(){return d.state},d.updateCurrentState(),c.$on("jobListsUpdated",d.updateCurrentState)}angular.module("udb.entry").controller("JobLogoController",a),a.$inject=["JobLogoStates","jobLogger","$rootScope"]}(),function(){"use strict";function a(){function a(a,b,c){}var b={templateUrl:"templates/job-logo.directive.html",restrict:"EA",link:a,controllerAs:"jl",controller:"JobLogoController"};return b}angular.module("udb.entry").directive("udbJobLogo",a)}(),function(){"use strict";function a(a,b,c,d,e){function f(a){var b=_.pick(a,function(a,b){var c="$"===b.charAt(b.length-1);return(_.isDate(a)||!_.isEmpty(a))&&!c});return b.location&&b.location.id&&(b.location=b.location.id),b.calendar.status=b.status,b.openingHours&&(b.calendar.openingHours=b.openingHours),b}function g(b,c,d){return a.updateProperty(b.apiUrl,c,b[c]).then(i(b))}function h(a,b){j.updateMajorInfo(b)}function i(b){function c(c){a.removeItemFromCache(b.apiUrl.toString())}return c}var j=this;j.createOffer=function(b){var d=b.isEvent?"event":"place",g=function(d){return b.apiUrl=d,b.id=d.toString().split("/").pop(),e.add(b.id,b.apiUrl),c.$emit("eventFormSaved",b),a.getOffer(d).then(function(a){c.$emit("offerCreated",a)}),b},h=f(b);return a.createOffer(d,h).then(g)},j.findEventsAtPlace=function(b){return a.findEventsAtPlace(b)},j.deleteOffer=function(b){function c(){b.showDeleted=!0}return a.deleteOffer(b).then(c)},j.updateMajorInfo=function(b){var c=f(b);a.updateMajorInfo(b.apiUrl,c).then(i(b))},j.createOrganizer=function(b){return a.createOrganizer(b)},j.updateDescription=function(b){return a.translateProperty(b.apiUrl,"description",b.mainLanguage,b.description[b.mainLanguage]).then(i(b))},j.translateAddress=function(a){return g(a,"typicalAgeRange","updateTypicalAgeRange")},j.updateTypicalAgeRange=function(b){var c=b.isEvent?"events":"places",d=b.apiUrl.origin+"/"+c+"/"+b.id;return a.updateTypicalAgeRange(d,b.typicalAgeRange).then(i(b))},j.deleteTypicalAgeRange=function(b){return a.deleteTypicalAgeRange(b.apiUrl).then(i(b))},j.updateOrganizer=function(b){return a.updateProperty(b.apiUrl,"organizer",b.organizer.id).then(i(b))},j.deleteOfferOrganizer=function(b){return a.deleteOfferOrganizer(b.apiUrl,b.organizer.id).then(i(b))},j.updateEventUitpasData=function(a){return b.updateEventUitpasData(a.usedDistributionKeys,a.id).then(i(a))},j.getEventUitpasData=function(a){return b.getEventUitpasData(a)},j.updatePriceInfo=function(b){return a.updatePriceInfo(b.apiUrl,b.priceInfo).then(i(b))},j.updateContactPoint=function(a){return g(a,"contactPoint","updateContactInfo")},j.updateBookingInfo=function(b){var c=["url","urlLabel","email","phone","availabilityStarts","availabilityEnds"],d=_.pick(b.bookingInfo,function(a,b){return _.includes(c,b)&&(_.isDate(a)||!_.isEmpty(a))});return _.has(d,"url")||(d=_.omit(d,"urlLabel")),0===_.intersection(_.keysIn(d),["url","phone","email"]).length&&(d={}),a.updateProperty(b.apiUrl,"bookingInfo",d).then(i(b))},j.updateFacilities=function(b,c){return a.updateOfferFacilities(b.apiUrl,_.map(c,"id")).then(i(b))},j.addImage=function(b,c){var d=c.id||c["@id"].split("/").pop();return a.addImage(b.apiUrl,d).then(i(b))},j.updateImage=function(b,c,d,e){var f=c["@id"].split("/").pop();return a.updateImage(b.apiUrl,f,d,e).then(i(b))},j.removeImage=function(b,c){var d=c["@id"].split("/").pop();return a.removeImage(b.apiUrl,d).then(i(b))},j.selectMainImage=function(b,c){var d=c["@id"].split("/").pop();return a.selectMainImage(b.apiUrl,d).then(i(b))},j.setAudienceType=function(b,c){return a.setAudienceType(b.apiUrl,c).then(i(b))},j.publishOffer=function(b,c){return a.publishOffer(b.apiUrl,c).then(i(b))},c.$on("eventTypeChanged",h),c.$on("eventThemeChanged",h),c.$on("eventTimingChanged",h),c.$on("eventTitleChanged",h)}angular.module("udb.entry").service("eventCrud",a),a.$inject=["udbApi","udbUitpasApi","$rootScope","$q","offerLocator"]}(),function(){"use strict";function a(a,c){var d=function(d,e,f){a.call(this,d),this.type="label_batch",this.events=e,this.addEventsAsTask(e),this.label=f,this.messages={},this.messages[c.CREATED]=b(this,c.CREATED,c),this.messages[c.STARTED]=b(this,c.STARTED,c),this.messages[c.FINISHED]=b(this,c.FINISHED,c),this.messages[c.FAILED]=b(this,c.FAILED,c)};return d.prototype=Object.create(a.prototype),d.prototype.constructor=d,d.prototype.addEventsAsTask=function(a){var b=this;_.forEach(a,function(a){b.addTask({id:a})})},d.prototype.getDescription=function(){return b(this,this.state,c)},d}function b(a,b,c){var d;return d=b===c.FAILED?"Labelen van items mislukt":"Label "+a.events.length+' items met "'+a.label+'"'}angular.module("udb.entry").factory("OfferLabelBatchJob",a),a.$inject=["BaseJob","JobStates"]}(),function(){"use strict";function a(a){function b(){f.alert=!1;var b=f.labelSelection.filter(function(a){return a.selected}).map(function(a){return a.name}),c=e(f.labelNames);if(!f.alert){var d=_.union(b,c);a.close(d)}}function c(){a.dismiss("cancel")}function d(a){return a>=f.minimumInputLength&&a<=f.maxInputLength}function e(a){var b=a.split(";");b=_.each(b,function(a,c){b[c]=a.trim()}),b=_.without(b,"");var c;for(c=0;c',restrict:"E",link:function(a,b,c){a.jobTemplateUrl="templates/"+a.job.getTemplateName()+".template.html",a.taskCount=0,a.completedTaskCount=0}};return a}angular.module("udb.entry").directive("udbJob",a)}(),function(){"use strict";function a(a,b){var c=io.connect(b.socketUrl),d=a({ioSocket:c});return d}angular.module("udb.entry").factory("udbSocket",a),a.$inject=["socketFactory","appConfig"]}(),function(){"use strict";function a(a,b){return{restrict:"C",link:function(c,d,e){c.working=!1,a.setInterval(function(){c.working=b.hasActiveJobs(),d.toggleClass("working",c.working)},2e3)}}}angular.module("udb.entry").directive("udbWorkIndicator",a),a.$inject=["$window","jobLogger"]}(),function(){"use strict";function a(a){this.translateProperty=function(b,c,d,e){return"title"===c&&(c="name"),a.translateProperty(b.apiUrl,c,d,e).then(function(){b[c][d]=e})},this.translateAddress=function(b,c,d){return a.translateAddress(b.id,c,d).then(function(){b.address[c]=d})}}angular.module("udb.entry").service("offerTranslator",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/event-detail.html",restrict:"EA",controller:EventDetail}}angular.module("udb.event-detail").directive("udbEventDetail",a)}(),function(){"use strict";function a(a){a.isEmpty=_.isEmpty,a.hasAtLeastOneContactPoint=function(){return a.bookingInfo.phone||a.bookingInfo.url||a.bookingInfo.email}}angular.module("udb.event-detail").directive("udbBookingInfoDetail",function(){return{templateUrl:"templates/booking-info-detail.directive.html",controller:a,restrict:"A",scope:{bookingInfo:"0});c.length&&p(b).then(function(b){angular.forEach(b.member,function(b){b["@id"]===a.eventId&&(a.moderationPermission=!0)})})})}function v(){a.eventIdIsInvalid=!0}function w(a){var b=f.open({templateUrl:"templates/event-delete-confirm-modal.html",controller:"EventDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});b.result.then(E.goToDashboard)}function x(b){var c=_.find(H.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?h.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):i.label(H,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.event.labels=angular.copy(H.labels)})}function y(){a.labelResponse="",a.labelsError=""}function z(b){a.event.labels=angular.copy(H.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function A(a){y(),i.unlabel(H,a.name)["catch"](z)}function B(){var b=_.filter(a.event.contactPoint,function(a){return a.length>0});a.hasContactPointResults=b.length>0}function C(){var b=a.event.bookingInfo;a.hasBookingInfoResults=!(""===b.phone&&""===b.email&&""===b.url)}var D="data",E=this,F="udb-filminvoer";a.cultuurkuurEnabled=_.get(k,"cultuurkuur.enabled"),a.isOmdApp=!!_.get(k,"omdSpecific",!1),g.when(b,function(b){a.eventId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(u,v),g.all([e,d]).then(o)}),a.eventIdIsInvalid=!1,a.labelAdded=x,a.labelRemoved=A,a.eventHistory=void 0,a.calendarSummary=void 0,a.deleteEvent=function(){w(a.event)},a.isEmpty=_.isEmpty;var G=j.use()||"nl";a.language=G;var H;a.eventLocation=function(b){var c=d(b.location,G,!0),e=[c.name];return b.location.type&&e.push(a.translateType(b.location.type.label)),b.location.address.streetAddress&&e.push(b.location.address.streetAddress),b.location.address.addressLocality&&e.push(b.location.address.addressLocality),e.join(", ")},a.eventIds=function(a){return _.union([a.id],a.sameAs)},a.isUrl=function(a){return/^(https?)/.test(a)},a.isTabActive=function(a){return a===D},a.makeTabActive=function(b){if(D=b,"history"===b&&!a.eventHistory){var d=a.eventId.toString().split("/").pop();c.getHistory(d).then(r)}},a.openEditPage=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventEdit",{id:c})},a.openEditPageMovies=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventEditMovie",{id:c})},a.duplicateMovie=function(){var b=a.eventId.toString(),d=_.pick(a.event,["calendarType","subEvent"]);d.subEvent.length>0&&d.subEvent.forEach(function(a){a.status={type:"Available"},a.bookingAvailability={type:"Available"}}),c.duplicateEvent(b,d).then(function(a){var b=a.eventId,d=a.url;c.labelOffer(d,F).then(function(){e.go("split.eventEditMovie",{id:b})})["catch"](function(a){throw a})})["catch"](function(a){console.log("error",a)})},a.openTranslatePage=function(){var b=a.eventId.toString(),c=b.split("/").pop();e.go("split.eventTranslate",{id:c})},E.goToDashboard=function(){e.go("split.footer.dashboard")},a.translateAudience=function(a){return j.instant("audience."+a)},a.translateType=function(a){var b=j.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b},a.finishedLoading=function(){return a.event&&a.permissions}}angular.module("udb.event-detail").controller("EventDetailController",a),a.$inject=["$scope","eventId","udbApi","jsonLDLangFilter","$state","$uibModal","$q","$window","offerLabeller","$translate","appConfig","ModerationService","RolePermission","authorizationService"]}(),function(){"use strict";angular.module("udb.event-form").constant("calendarLabels",[{label:"Eén of meerdere dagen",id:"single",eventOnly:!0},{label:"Van ... tot ... ",id:"periodic",eventOnly:!0},{label:"Permanent",id:"permanent",eventOnly:!1}])}(),function(){"use strict";function a(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a){var b=parseInt(a);if(isNaN(b))return d.$setViewValue(void 0),void d.$render();var c=Math.abs(b);return c.toString()!==a&&(d.$setViewValue(c.toString()),d.$render()),c}d.$formatters.push(e),d.$parsers.splice(0,0,e)}}}angular.module("udb.event-form").directive("udbAgeInput",a); +}(),function(){"use strict";function a(a,b,c,d){function e(){i();var b=n.minAge,d=n.maxAge,e=n.formData.getTypicalAgeRange();if(!e||e.min!==b||e.max!==d){if(_.isNumber(b)&&_.isNumber(d)&&b>d)return n.hasError=!0,void h(c.instant("eventForm.step4.age.error_max_lower_than_min"));n.formData.setTypicalAgeRange(b,d),a.$emit("changeTypicalAgeRange",n.formData.typicalAgeRange)}}function f(){a.$apply(e)}function g(){n.delayedSaveAgeRange.cancel(),e()}function h(a){n.error=a}function i(){n.error="",n.hasError=!1}function j(a,b){return function(c){var d=c.min===a&&c.max===b,e=!(isNaN(a)&&isNaN(b))&&c===o.CUSTOM;return d?d:e}}function k(a){n.formData=a;var b=a.getTypicalAgeRange();b&&l(b.min,b.max)}function l(a,b){var c=_.findKey(o,j(a,b));n.minAge=a,n.maxAge=b,n.rangeInputEnabled=c&&"ALL"!==c,n.activeAgeRange=c}function m(a){var b=o[a];b&&("CUSTOM"!==a&&(n.minAge=b.min,n.maxAge=b.max),n.rangeInputEnabled="ALL"!==a,n.activeAgeRange=a,e())}var n=this,o=Object.freeze({ALL:{label:"All ages"},TODDLERS:{label:"Toddlers",min:0,max:2},PRESCHOOLERS:{label:"Preschoolers",min:3,max:5},KIDS:{label:"Kids",min:6,max:11},TEENAGERS:{label:"Teenagers",min:12,max:15},YOUNGSTERS:{label:"Youngsters",min:16,max:26},ADULTS:{label:"Adults",min:18},SENIORS:{label:"Seniors",min:65},CUSTOM:{label:"Custom"}});n.ageRanges=angular.copy(o),n.activeAgeRange=void 0,n.minAge=void 0,n.maxAge=void 0,n.setAgeRangeByType=m,n.delayedSaveAgeRange=_.debounce(f,1e3),n.instantSaveAgeRange=g,n.error="",n.formData=void 0,k(b),a.translateAgeRange=function(a){return c.instant("eventForm.step4.age."+a)},a.getAgeRangeLabel=function(a){return"undefined"==typeof a.min&&"undefined"==typeof a.max?"":"number"==typeof a.min&&"number"==typeof a.max?a.min.toString()+"-"+a.max.toString():a.min.toString()+"+"}}angular.module("udb.event-form").controller("FormAgeController",a),a.$inject=["$scope","EventFormData","$translate","$rootScope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-age.html",restrict:"EA",controller:"FormAgeController",controllerAs:"fagec"}}angular.module("udb.event-form").directive("udbFormAge",a)}(),function(){"use strict";function a(a,b,c){function d(c){b.setAudienceType(a,c)}function e(){return a.getLocation().isDummyPlaceForEducationEvents}var f=this,g=_.get(c,"offerEditor.disableAudience");f.enabled=!g&&a.isEvent,f.audienceType=e()?"education":a.audienceType,f.setAudienceType=d,f.isBookableEvent=e}angular.module("udb.event-form").controller("FormAudienceController",a),a.$inject=["EventFormData","eventCrud","appConfig"]}(),function(){"use strict";function a(){return{templateUrl:"templates/form-audience.html",restrict:"EA",controller:"FormAudienceController",controllerAs:"fac"}}angular.module("udb.event-form").directive("udbFormAudience",a)}(),function(){"use strict";function a(a){function b(b,c){function d(b){a.scrollTo(b.target,100,e,f)}var e=1e3,f=function(a){return.5>a?2*a*a:-1+(4-2*a)*a};c.on("click focusin",d)}return{restrict:"A",link:b}}angular.module("udb.event-form").directive("udbAutoScroll",a),a.$inject=["$document"]}(),function(){"use strict";function a(a,b,c){function d(b,c){a.formData=b,a.isEvent=b.isEvent,a.isPlace=b.isPlace,a.offerStatus=b.status,a.subEvent=b.subEvent,a.timeSpans=_.isEmpty(b.calendar.timeSpans)?[]:b.calendar.timeSpans,a.setType(b.calendar.calendarType?b.calendar.calendarType:"single"),a.openingHoursCollection=c}function e(a){return"permanent"===a||"periodic"===a}function f(b){a.formData.setCalendarType(b),a.type=b,a.weeklyRecurring=e(b),"single"===b&&_.isEmpty(a.timeSpans)&&g()}function g(){a.timeSpans=[{allDay:!0,start:moment().startOf("day").toDate(),end:moment().endOf("day").toDate(),endTouched:!1,status:{type:"Available"}}]}function h(){if(_.isEmpty(a.timeSpans))g(),a.instantTimeSpanChanged();else{var b=_.cloneDeep(_.last(a.timeSpans));b.status={type:"Available"},b.bookingAvailability={type:"Available"},a.timeSpans.push(b)}}function i(b){a.timeSpans.length>1&&(a.timeSpans=_.without(a.timeSpans,b),a.instantTimeSpanChanged())}function j(a){b.$apply(m(a))}function k(){a.delayedTimeSpanChanged.cancel(),m()}function l(a){a.allDay?(a.start=moment(a.start).set({hour:0,minute:0,millisecond:0}).toDate(),a.end=moment(a.end).endOf("day").toDate()):(a.start=moment(a.start).set({hour:moment().startOf("hour").format("H"),minute:0}).toDate(),a.end=moment(a.end).set({hour:moment().startOf("hour").add(4,"h").format("H"),minute:0,second:0}).toDate()),k()}function m(b){var c=_.map(a.timeSpans,p);_.isEmpty(_.flatten(c))?(a.timeSpans.length>1?"multiple"!==a.type&&f("multiple"):"single"!==a.type&&f("single"),n(),_.each(a.timeSpans,function(a){"end"!==b||a.endTouched||(a.endTouched=!0),a.allDay&&(a.start=moment(a.start).startOf("day").toDate(),a.end=moment(a.end).endOf("day").toDate()),"start"!==b||a.endTouched||a.start>a.end&&(a.end=moment(a.start).endOf("day").toDate())}),a.formData.saveTimeSpans(a.timeSpans)):o(c)}function n(){a.timeSpanRequirements=[]}function o(b){a.timeSpanRequirements=b}function p(b){var c={timedWhenNotAllDay:function(a){return!(a.allDay||a.start&&a.end)},startBeforeEndDay:function(a){return a.endTouched&&a.start&&a.end&&moment(a.start).isAfter(a.end,"day")},startBeforeEnd:function(a){return!a.allDay&&a.start&&a.end&&moment(a.start).isSame(a.end,"day")&&moment(a.start).isAfter(a.end)},tooFarInFuture:function(c){var d=moment().add(a.maxYearTimeSpan,"y");return moment(b.end).isAfter(d)}},d=_.pick(c,function(a){return a(b)});return _.keys(d)}a.type="",a.setType=f,a.createTimeSpan=h,a.timeSpans=[],a.timeSpanRequirements=[],a.removeTimeSpan=i,a.weeklyRecurring=!1,a.delayedTimeSpanChanged=_.debounce(j,1e3),a.instantTimeSpanChanged=k,a.toggleAllDay=l,a.init=d,a.maxYearTimeSpan=_.get(c,"offerEditor.calendar.maxYearTimeSpan",10)}angular.module("udb.event-form").controller("BaseCalendarController",a),a.$inject=["calendar","$scope","appConfig"]}(),function(){"use strict";function a(a){function b(b){if(""!==a.calendarHighlight.date){var c=moment(b.date),d=moment(a.calendarHighlight.date);if(c.isSame(d,b.mode))return a.calendarHighlight.extraClass}}var c=this,d={minDate:new Date,showWeeks:!1,customClass:b};c.$onInit=function(){c.isOpen=!1,c.options=d,c.ngModel.$render=function(){c.date=new Date(c.ngModel.$viewValue)}},c.open=function(){c.isOpen=!0},c.changed=function(){if(c.date){var a=moment(c.ngModel.$viewValue),b=moment(c.date).hour(a.hour()).minute(a.minute());c.ngModel.$setViewValue(b.toDate())}}}angular.module("udb.event-form").component("udbFormCalendarDatepicker",{templateUrl:"templates/form-calendar-datepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"datepicker"}),a.$inject=["appConfig"]}(),function(){"use strict";function a(){var a=this;a.calendarType=a.formData.calendar.calendarType}angular.module("udb.event-form").component("udbFormCalendarPeriod",{templateUrl:"templates/form-calendar-period.component.html",controller:a,bindings:{formData:"=",disabled:"=ngDisabled"}})}(),function(){"use strict";function a(){var a=this;a.$onInit=function(){a.ngModel.$render=function(){a.time=new Date(a.ngModel.$viewValue)}},a.changed=function(){a.time&&a.ngModel.$setViewValue(a.time)}}angular.module("udb.event-form").component("udbFormCalendarTimepicker",{templateUrl:"templates/form-calendar-timepicker.component.html",controller:a,require:{ngModel:"^ngModel"},bindings:{disabled:"=ngDisabled"},controllerAs:"timepicker"})}(),function(){"use strict";function a(a,b,c,d){var e=this;d("BaseCalendarController",{calendar:e,$scope:c}),e.init(a,b)}angular.module("udb.event-form").controller("FormCalendarController",a),a.$inject=["EventFormData","OpeningHoursCollection","$scope","$controller"]}(),function(){"use strict";angular.module("udb.event-form").component("udbFormEventCalendar",{templateUrl:"templates/form-event-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";angular.module("udb.event-form").component("udbFormPlaceCalendar",{templateUrl:"templates/form-place-calendar.component.html",controller:"FormCalendarController",controllerAs:"calendar"})}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){function f(){a.saving=!1,a.error=!0}function g(){var a=angular.copy(e);a.description=h,a.copyrightHolder=i,c.updateMediaObject(a),b.close(a)}var h=a.description,i=a.copyrightHolder;d.updateImage(c,e,h,i).then(g,f)}function h(){return a.description&&a.copyrightHolder&&a.description.length<=250&&a.copyrightHolder.length>=2}a.saving=!1,a.error=!1,a.description=e.description||"",a.copyrightHolder=e.copyrightHolder||"",a.cancel=f,a.updateImageInfo=g,a.allFieldsValid=h}angular.module("udb.event-form").controller("EventFormImageEditController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","mediaObject"]}(),function(){"use strict";function a(a,b,c,d,e){function f(){b.dismiss("cancel")}function g(){a.error=!0,a.saving=!1}function h(){a.saving=!0,a.error=!1}function i(){function f(){c.removeMediaObject(e),a.saving=!1,b.close()}h(),d.removeImage(c,e).then(f,g)}a.saving=!1,a.error=!1,a.cancel=f,a.removeImage=i}angular.module("udb.event-form").controller("EventFormImageRemoveController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","image"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){function k(){a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.showAgreements=!1,h.confirm()}function l(){b.dismiss("cancel")}function m(){a.error=!1}function n(b,c){if(a.selectedFile=b?b:null,c.length){var d=q[c[0].$error];a.error=d?d:q["default"]}else m()}function o(){function e(b){var c=b.data.title,d=i.instant("eventForm.imageUpload.somethingWentWrongError");switch(c){case"The uploaded file is not an image.":d=i.instant("eventForm.imageUpload.formatNotValidError")+i.instant("eventForm.imageUpload.extensionsAllowed");break;case"The file size of the uploaded image is too big.":d=i.instant("eventForm.imageUpload.sizeError")}a.saving=!1,a.error=d}function h(f){function g(){a.saving=!1,c.addImage(f),l.resolve(f),b.close(f)}d.addImage(c,f).then(g,e)}if(!a.selectedFile)return void(a.error=i.instant("eventForm.imageUpload.noFileSelectedError"));a.saving=!0;var j=a.description,k=a.copyright,l=g.defer(),m=c.mainLanguage?c.mainLanguage:"nl";return f.createImage(a.selectedFile,j,k,m).then(h,e),l.promise}function p(){return a.description&&a.copyright&&a.selectedFile&&a.description.length<=250&&a.copyright.length>=2}a.userAgreementUrl=j("translate")("images.conditions_url"),a.copyrightUrl="/"+i.use()+_.get(e,"media.copyrightUrl","/copyright"),a.saving=!1,a.error=!1,a.showAgreements=!h.confirmed(),a.modalTitle=i.instant("eventForm.imageUpload.modalTitle"),a.description="",a.copyright="",a.maxFileSize=_.get(e,"media.fileSizeLimit","1MB"),a.acceptAgreements=k,a.cancel=l,a.addImage=o,a.clearError=m,a.selectFile=n,a.allFieldsValid=p;var q={"default":i.instant("eventForm.imageUpload.defaultError"),maxSize:i.instant("eventForm.imageUpload.maxSize")+a.maxFileSize+"."}}angular.module("udb.event-form").controller("EventFormImageUploadController",a),a.$inject=["$scope","$uibModalInstance","EventFormData","eventCrud","appConfig","MediaManager","$q","copyrightNegotiator","$translate","$filter"]}(),function(){"use strict";function a(a,b){function c(a){i=_.cloneDeep(a.getOpeningHours()),0===i.length&&a.createNewOpeningHours(),j.openingHoursCollection=a}function d(){f();var b=j.openingHoursCollection.validate();_.isEmpty(b)?a.close(j.openingHoursCollection.serialize()):e(b)}function e(a){j.errors=a}function f(){j.errors={}}function g(){j.openingHoursCollection.createNewOpeningHours()}function h(a){j.openingHoursCollection.removeOpeningHours(a),f()}var i,j=this;c(b),j.saveOpeningHours=d,j.createNewOpeningHours=g,j.removeOpeningHours=h,j.errors={}}angular.module("udb.event-form").controller("OpeningHoursEditorModalController",a),a.$inject=["$uibModalInstance","openingHoursCollection"]}(),function(){"use strict";function a(a,b){function c(a){return b.instant("weekdays."+a+".label")}function d(a){return b.instant("weekdays."+a+".name")}function e(a){return _.all(_.map(a,function(a){return a.opensAsDate instanceof Date&&a.closesAsDate instanceof Date}))}function f(b){return _.all(_.map(b,function(b){return a(b.opensAsDate).isBefore(b.closesAsDate)}))}function g(a){return _.all(_.map(a,function(a){return!_.isUndefined(_.find(a.dayOfWeek,"open"))}))}function h(b){return angular.forEach(b,function(b,c){b.opens=a(b.opensAsDate).format("HH:mm"),b.closes=a(b.closesAsDate).format("HH:mm"),b.label=_.pluck(_.filter(b.dayOfWeek,"open"),"name").join(", ")}),b}function i(a){return a.clone().year(1970).dayOfYear(1)}function j(a){return _.pick(a,function(a){return a.open})}var k={openAndClose:e,dayOfWeek:g,openIsBeforeClose:f},l={monday:{label:c("monday"),name:d("monday"),open:!1},tuesday:{label:c("tuesday"),name:d("tuesday"),open:!1},wednesday:{label:c("wednesday"),name:d("wednesday"),open:!1},thursday:{label:c("thursday"),name:d("thursday"),open:!1},friday:{label:c("friday"),name:d("friday"),open:!1},saturday:{label:c("saturday"),name:d("saturday"),open:!1},sunday:{label:c("sunday"),name:d("sunday"),open:!1}},m={openingHours:[],getOpeningHours:function(){return this.openingHours},setOpeningHours:function(a){this.openingHours=h(a)},removeOpeningHours:function(a){var b=this.openingHours;this.setOpeningHours(_.without(b,a))},createNewOpeningHours:function(){var a=this.openingHours||[],b={dayOfWeek:_.cloneDeep(l),opens:"00:00",opensAsDate:new Date(1970,0,1),closes:"00:00",closesAsDate:new Date(1970,0,1)};a.push(b),this.setOpeningHours(a)},deserialize:function(b){return this.setOpeningHours(_.map(b,function(b){return{dayOfWeek:_.mapValues(l,function(a,c){var d=_.cloneDeep(a);return d.open=_.includes(b.dayOfWeek,c),d}),opens:b.opens||"00:00",opensAsDate:b.opens?i(a(b.opens,"HH:mm")).toDate():new Date(1970,0,1),closes:b.closes||"00:00",closesAsDate:b.closes?i(a(b.closes,"HH:mm")).toDate():new Date(1970,0,1)}})),this},serialize:function(){return _.map(this.openingHours,function(b){return{dayOfWeek:_.keys(j(b.dayOfWeek)),opens:a(b.opensAsDate).format("HH:mm"),closes:a(b.closesAsDate).format("HH:mm")}})},validate:function(){var a=this.openingHours;return _(k).pick(function(b){return!b(a)}).keys().value()}};return m}angular.module("udb.event-form").factory("OpeningHoursCollection",a),a.$inject=["moment","$translate"]}(),function(){"use strict";function a(a){function b(){var b=a.open({templateUrl:"templates/opening-hours-editor.modal.html",controller:"OpeningHoursEditorModalController",controllerAs:"ohemc",size:"lg",resolve:{openingHoursCollection:function(){return angular.copy(d.openingHoursCollection)}}});b.result.then(c)}function c(a){d.formData.openingHours=a,d.formData.saveOpeningHours(a),d.openingHoursCollection.deserialize(a)}var d=this;d.edit=b}angular.module("udb.event-form").component("udbEventFormOpeningHours",{bindings:{openingHoursCollection:"=openingHours",formData:"=",disabled:"=ngDisabled"},templateUrl:"templates/event-form-openinghours.html",controller:a,controllerAs:"cm"}),a.$inject=["$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){b.dismiss("cancel")}function k(){return a.showWebsiteValidation=!0,a.organizerForm.website.$valid?void c.findOrganizersWebsite(a.newOrganizer.website).then(function(b){b.totalItems>0?(a.organizersWebsiteFound=!0,a.firstOrganizerFound=new d(b.member[0]),a.showWebsiteValidation=!1,a.disableSubmit=!0):(a.showWebsiteValidation=!1,a.organizersWebsiteFound=!1,a.firstOrganizerFound="",a.newOrganizer.name&&(a.disableSubmit=!1))},function(){a.websiteError=!0,a.showWebsiteValidation=!1}):void(a.showWebsiteValidation=!1)}function l(){a.newOrganizer.name&&!a.websiteError?a.disableSubmit=!1:a.disableSubmit=!0}function m(b){a.addressError=b}function n(b){a.contactError=b}function o(){if(a.showValidation=!0,a.organizerForm.$valid){a.$broadcast("organizerAddressSubmit"),a.$broadcast("organizerContactSubmit");var b=f.resolve([]);return a.error=!1,a.saving=!0,a.addressError||a.contactError?(a.error=!0,void(a.saving=!1)):void b.then(function(b){b.length>0?(a.organizersFound=!0,a.organizers=b,a.saving=!1):q()},function(){a.error=!0,a.saving=!1})}}function p(a){b.close(a)}function q(){a.saving=!0,a.saveError=!1;var b=_.clone(a.newOrganizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,e.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&h.addLabelToOrganizer(b.data.organizerId,c),a.newOrganizer.id=b.data.organizerId,p(a.newOrganizer),a.saving=!1},function(){a.saveError=!0,a.saving=!1})}a.organizer=g,a.organizersWebsiteFound=!1,a.organizersFound=!1,a.saving=!1,a.error=!1,a.addressError=!1,a.contactError=!1,a.showWebsiteValidation=!1,a.showValidation=!1,a.organizers=[],a.selectedCity="",a.disableSubmit=!0,a.contactUrlRegex=(new d).regex.url,a.newOrganizer={mainLanguage:"nl",website:"http://",name:a.organizer,address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},a.cancel=j,a.validateWebsite=k,a.updateName=l,a.validateAddress=m,a.validateContact=n,a.validateNewOrganizer=o,a.selectOrganizer=p,a.saveOrganizer=q}angular.module("udb.event-form").controller("EventFormOrganizerModalController",a),a.$inject=["$scope","$uibModalInstance","udbOrganizers","UdbOrganizer","eventCrud","$q","organizerName","OrganizerManager","appConfig"]}(),function(){!function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return{name:a.title,eventType:{id:""},address:{addressCountry:a.location.address.addressCountry,addressLocality:a.location.address.addressLocality,postalCode:a.location.address.postalCode,streetAddress:"",locationNumber:""}}}function j(){a.newPlace=i(),b.dismiss()}function k(){return a.showValidation=!0,a.placeForm.$valid?p(a.newPlace.address.streetAddress)?"NL"!==a.newPlace.address.addressCountry||q(a.newPlace.address.postalCode)?void l():(a.error=!0,void(a.invalidNlPostalCode=!0)):(a.error=!0,void(a.invalidStreet=!0)):void 0}function l(){function b(){a.saving=!1,a.error=!0}function e(b){i.id=b.id,m(i),a.saving=!0,a.error=!1}a.saving=!0,a.error=!1;for(var f="",g=0;ga.availabilityEnds?void(a.errorMessage="De gekozen einddatum moet na de startdatum vallen."):(a.errorMessage="",void e())}function e(){moment(a.availabilityStarts).isValid()&&moment(a.availabilityEnds).isValid()?(b.bookingInfo.availabilityStarts=moment(a.availabilityStarts).hours(0).minutes(0).seconds(0).format(),b.bookingInfo.availabilityEnds=moment(a.availabilityEnds).hours(23).minutes(59).seconds(59).format()):(b.bookingInfo.availabilityStarts="",b.bookingInfo.availabilityEnds=""),a.onBookingPeriodSaved()}function f(){a.availabilityStarts="",a.availabilityEnds="",a.haveBookingPeriod=!1,e()}function g(){a.haveBookingPeriod||(a.haveBookingPeriod=!0)}function h(){(b.bookingInfo.availabilityStarts||b.bookingInfo.availabilityEnds)&&(a.haveBookingPeriod=!0),b.bookingInfo.availabilityStarts?a.availabilityStarts=new Date(b.bookingInfo.availabilityStarts):a.availabilityStarts=new Date,b.bookingInfo.availabilityEnds?a.availabilityEnds=new Date(b.bookingInfo.availabilityEnds):a.availabilityEnds=new Date}a.haveBookingPeriod=!1,a.availabilityStarts="",a.availabilityEnds="",a.errorMessage="",a.popup1={opened:!1},a.popup2={opened:!1},a.validateBookingPeriod=d,a.saveBookingPeriod=e,a.deleteBookingPeriod=f,a.changeHaveBookingPeriod=g,a.initBookingPeriodForm=h,a.dateOptions={formatYear:"yyyy",minDate:new Date,startingDay:1},h(),a.open1=function(){a.popup1.opened=!0},a.open2=function(){a.popup2.opened=!0}}angular.module("udb.event-form").controller("ReservationPeriodController",a),a.$inject=["$scope","EventFormData","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"AE",scope:{onBookingPeriodSaved:"&"},controller:"ReservationPeriodController",templateUrl:"templates/reservation-period.html"}}angular.module("udb.event-form").directive("udbReservationPeriod",a)}(),function(){"use strict";function a(a){function b(b){function c(){b.timeLastSaved=new Date}b.timeLastSaved=void 0;var d=a.$on("eventFormSaved",c);b.$on("$destroy",d)}var c='
';return{template:c,restrict:"EA",link:b}}angular.module("udb.event-form").directive("udbEventFormSaveTimeTracker",a),a.$inject=["$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbEventPreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbEventSuggestion",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-preview.directive.html"};return a}angular.module("udb.event-form").directive("udbPlacePreview",a)}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"placeCtrl",templateUrl:"templates/place-suggestion.directive.html"};return a}angular.module("udb.event-form").directive("udbPlaceSuggestion",a)}(),function(){!function(){"use strict";function a(a,b,c,d,e){function f(a){return function(b){return-1!==b["@id"].indexOf(a)}}function g(){var b=a.currentSuggestionIndex-1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function h(){var b=a.currentSuggestionIndex+1,c=d.events[b.toString()];c?(a.currentSuggestion=c,a.currentSuggestionIndex=b):i()}function i(){b.close()}a.previousSuggestion=g,a.nextSuggestion=h,a.currentSuggestionId=c,a.currentSuggestionIndex=_.findIndex(d.events,f(c)),a.closePreview=i,a.suggestionCount=d.totalItems,a.currentSuggestion=_.find(d.events,f(c)),a.suggestions=d.events,a.suggestionType=e}angular.module("udb.event-form").controller("SuggestionPreviewModalController",a),a.$inject=["$scope","$uibModalInstance","selectedSuggestionId","resultViewer","suggestionType"]}()}(),function(){"use strict";function a(){function a(a,d,e,f){function g(){""!==f.$modelValue.value&&(f.$setValidity("contactinfo",!0),a.infoErrorMessage="",h())}function h(){if(""===f.$modelValue.value||void 0===f.$modelValue.value)a.infoErrorMessage="Gelieve dit veld niet leeg te laten.",f.$setValidity("contactinfo",!1);else if("email"!==f.$modelValue.type||c.test(f.$modelValue.value)){if("url"===f.$modelValue.type){var d=f.$viewValue;b.test(d.value)||(a.infoErrorMessage="Gelieve een geldige url in te vullen.",f.$setValidity("contactinfo",!1))}}else a.infoErrorMessage="Gelieve een geldig e-mailadres in te vullen.",f.$setValidity("contactinfo",!1)}function i(){f.$modelValue.value="",f.$modelValue.booking=!1,a.infoErrorMessage="",f.$setValidity("contactinfo",!0)}a.loadInfo=g,a.validateInfo=h,a.clearInfo=i,a.infoErrorMessage="",a.$on("organizerContactRefresh",function(){h()})}var b=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,c=/^[a-z0-9!#$%&'*+\/=?^_`{|}~.-]+@[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$/i;return{restrict:"A",require:"ngModel",link:a}}angular.module("udb.event-form").directive("udbContactInfoValidation",a)}(),function(){"use strict";function a(a){var b=this,c="copyright-agreement-confirmed";b.confirm=function(){var b=moment().add(1,"year").toDate(),d={confirmed:!0};a.putObject(c,d,{expires:b})},b.confirmed=function(){var b=a.getObject(c);return b?b.confirmed:!1}}angular.module("udb.event-form").service("copyrightNegotiator",a),a.$inject=["$cookies"]}(),function(){"use strict";function a(a,b,c,d,e,f){var g={init:function(){this.apiUrl="",this.isEvent=!0,this.isPlace=!1,this.showStep1=!0,this.showStep2=!1,this.showStep3=!1,this.showStep4=!1,this.showStep5=!1,this.majorInfoChanged=!1,this.id="",this.mainLanguage=f.use()||"nl",this.name="",this.description={},this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}},this.address={addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""},this.place={},this.type={},this.theme={},this.calendar={},this.calendar.calendarType="",this.calendar.timeSpans=[],this.calendar.openingHours=[],this.typicalAgeRange="",this.organizer={},this.contactPoint={url:[],phone:[],email:[]},this.facilities=[],this.bookingInfo={},this.mediaObjects=[],this.image=[],this.additionalData={},this.priceInfo=[],this.workflowStatus="DRAFT",this.availableFrom="",this.labels=[],this.audienceType="everyone",this.timingChanged$=a.createObservableFunction(this,"timingChangedCallback")},clone:function(){var b=_.cloneDeep(this);return b.timingChanged$=a.createObservableFunction(b,"timingChangedCallback"),b},showStep:function(a){this["showStep"+a]=!0},hideStep:function(a){this["showStep"+a]=!1},setName:function(a,b){this.name[b]=a},getName:function(a){return this.name[a]},getMainLanguage:function(){return this.mainLanguage},setMainLanguage:function(a){this.mainLanguage=a},setDescription:function(a,b){this.description[b]=a},getDescription:function(a){return this.description[a]},setEventType:function(a){this.type=a,this.removeTheme()},removeType:function(){this.type={}},getEventType:function(){return this.type},getEventTypeLabel:function(){return this.type.label?this.type.label:""},setTheme:function(a){this.theme=a},removeTheme:function(){this.theme={}},getTheme:function(){return this.theme},getThemeLabel:function(){return this.theme.label?this.theme.label:""},getPeriodicStartDate:function(){return this.calendar.startDate},setPeriodicStartDate:function(a){this.calendar.startDate=a},getPeriodicEndDate:function(){return this.calendar.endDate},setPeriodicEndDate:function(a){var b=c(a).endOf("day").toDate();this.calendar.endDate=b},resetLocation:function(){this.location={id:null,name:"",address:{addressCountry:"BE",addressLocality:"",postalCode:"",streetAddress:""}}},setLocation:function(a){this.location=a},getLocation:function(){return this.location},addTimeSpan:function(a,b,d,e){var f="00:00"===c(a).format("HH:mm")&&"23:59"===c(b).format("HH:mm");this.calendar.timeSpans.push({start:c(a).toISOString(),end:c(b).toISOString(),allDay:f,status:d?d:{type:"Available"},bookingAvailability:e?e:{type:"Available"}})},resetCalendar:function(){this.calendar.timeSpans=[],this.calendar.calendarType="",this.calendar.activeCalendarLabel="",this.calendar.activeCalendarType=""},getFirstStartDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.first(this.calendar.timeSpans).start),"periodic"===g.calendar.calendarType&&(a=this.calendar.startDate),a; +},getLastEndDate:function(){var a=null;return("single"===this.calendar.calendarType||"multiple"===this.calendar.calendarType)&&(a=_.last(this.calendar.timeSpans).end),"periodic"===g.calendar.calendarType&&(a=this.calendar.endDate),a},getType:function(){return this.isEvent?"event":"place"},resetOrganizer:function(){this.organizer={}},resetContactPoint:function(){this.contactPoint={url:[],phone:[],email:[]}},setBookingInfo:function(a){this.bookingInfo=a},addImage:function(a){this.mediaObjects=_.union(this.mediaObjects,[a])},editMediaObject:function(a,b,c,d,e){this.image[a]={url:b,thumbnailUrl:c,description:d,copyrightHolder:e},this.image[a]["@type"]="ImageObject"},updateMediaObject:function(a){this.mediaObjects=_.map(this.mediaObjects,function(b){var c;return c=b["@id"]===a["@id"]?a:b})},removeMediaObject:function(a){this.mediaObjects=_.reject(this.mediaObjects,{"@id":a["@id"]})},selectMainImage:function(a){var b=_.without(this.mediaObjects,a);b.unshift(a),this.mediaObjects=b},setTypicalAgeRange:function(a,b){this.typicalAgeRange=(isNaN(a)?"":a)+"-"+(isNaN(b)?"":b)},getTypicalAgeRange:function(){if(!_.isEmpty(this.typicalAgeRange)){var a={min:void 0,max:void 0},b=this.typicalAgeRange.split("-");return b[0]&&(a.min=parseInt(b[0])),b[1]&&(a.max=parseInt(b[1])),a}},hasValidPeriodicRange:function(){var a=this.getPeriodicStartDate(),b=this.getPeriodicEndDate();return"periodic"===this.calendar.calendarType&&!!a&&!!b&&b>a},initCalendar:function(){var a=this,c=_.findWhere(b,{id:a.calendar.calendarType});c&&(this.calendar.activeCalendarLabel=c.label,this.calendar.activeCalendarType=a.calendar.calendarType)},timingChanged:function(){this.showStep2&&this.showStep(3),this.timingChangedCallback(this)},timingChangedCallback:function(){},initOpeningHours:function(a){d.deserialize(a)},setCalendarType:function(a){var b=this;if("permanent"===a&&(b.calendar.startDate=void 0,b.calendar.endDate=void 0,b.timingChanged()),b.calendar.calendarType!==a){if(b.resetCalendar(),b.calendar.calendarType=a,"single"===b.calendar.calendarType){if(b.openingHours=[],e.calendarHighlight.date){var d=e.calendarHighlight.startTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.startTime,"YYYY-MM-DD HH:mm").toDate():"",f=e.calendarHighlight.endTime?c(e.calendarHighlight.date+" "+e.calendarHighlight.endTime,"YYYY-MM-DD HH:mm").toDate():"";b.addTimeSpan(d,f)}else b.addTimeSpan(c().startOf("day"),c().endOf("day"));b.saveTimeSpans(b.calendar.timeSpans)}if("periodic"===b.calendar.calendarType){if(b.calendar.startDate=c().startOf("day").toDate(),e.addOffer&&e.addOffer.defaultEndPeriod){var g=e.addOffer.defaultEndPeriod;b.calendar.endDate=c(b.calendar.startDate).add(g,"d").startOf("day").toDate()}else b.calendar.endDate=c().add(1,"y").startOf("day").toDate();b.timingChanged()}b.initCalendar(),b.id&&(b.majorInfoChanged=!0)}},isValidDate:function(a){return a instanceof Date},toggleStartHour:function(a){if(a.showStartHour){var b=c(a.date),d=c(a.date).endOf("day");a.startHour=b.format("HH:mm"),a.startHourAsDate=b.toDate(),a.endHour=d.format("HH:mm"),a.endHourAsDate=d.toDate(),a.showEndHour=!1}else a.start.setHours(0),a.start.setMinutes(0),a.end.setHours(0),a.end.setMinutes(0),this.timingChanged()},toggleEndHour:function(a){var b=a.date;if(a.showEndHour){var d=c(a.startHourAsDate).add(3,"hours").minutes(0);b.setHours(d.hours()),b.setMinutes(d.minutes()),a.endHour=c(b).format("HH:mm"),a.endHourAsDate=b}else b.setHours(23),b.setMinutes(59),a.endHour="23:59",a.endHourAsDate=b,this.timingChanged()},hoursChanged:function(a){var b,d;(a.showStartHour||a.showEndHour)&&(a.showStartHour&&(void 0!==a.startHourAsDate?b=c(a.startHourAsDate):(b=c(a.startHourAsDate),b.hours(0),b.minutes(0)),a.startHour=b.format("HH:mm")),a.showEndHour&&(d=void 0!==a.endHourAsDate?c(a.endHourAsDate):b,a.endHour=d.format("HH:mm")),this.timingChanged())},saveOpeningHours:function(a){this.calendar.openingHours=a,this.timingChanged()},saveTimeSpans:function(a){this.calendar.timeSpans=a,this.calendar.startDate=this.getFirstStartDate(),this.calendar.endDate=this.getLastEndDate(),this.timingChanged()},periodicTimingChanged:function(){var a=this;a.id;var b=this.getPeriodicEndDate();this.setPeriodicEndDate(b),a.hasValidPeriodicRange()?(a.periodicRangeError=!1,a.timingChanged()):a.periodicRangeError=!0}};return g.init(),g}angular.module("udb.event-form").factory("EventFormData",a),a.$inject=["rx","calendarLabels","moment","OpeningHoursCollection","appConfig","$translate"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){c.initOpeningHours([]);var b=_.get(h,"calendarHighlight");c.isEvent&&b&&b.date&&k(b),a.language=c.mainLanguage,a.loaded=!0}function k(a){c.calendar.calendarType="single",c.addTimeSpan(a.startTime?e(a.date+" "+a.startTime,"YYYY-MM-DD HH:mm"):"",a.endTime?e(a.date+" "+a.endTime,"YYYY-MM-DD HH:mm"):""),c.initCalendar()}function l(a){a?d.getOffer(a).then(m):j()}function m(b){var d=b.url.split("/").shift();if(c.status=b.status,"event"===d){if(c.isEvent=!0,c.isPlace=!1,c.subEvent=b.subEvent,n(b),b.location&&b.location.id){var e=f(b.location,b.mainLanguage,!0);c.location={id:e.id.split("/").pop(),name:e.name,address:e.address,isDummyPlaceForEducationEvents:e.isDummyPlaceForEducationEvents}}c.audienceType=b.audience.audienceType}if("place"===d&&(c.isEvent=!1,c.isPlace=!0,n(b),b.address)){var g=f(b,b.mainLanguage,!0);c.address=g.address}i.use()!==a.language&&(a.showLangWarning=!0)}function n(b){var d=["id","type","theme","openingHours","description","typicalAgeRange","organizer","bookingInfo","contactPoint","priceInfo","facilities","image","additionalData","apiUrl","workflowStatus","availableFrom","labels","mainLanguage"];b.isDummyPlaceForEducationEvents&&(c.isDummyPlaceForEducationEvents=b.isDummyPlaceForEducationEvents);for(var f=0;fb?!1:o.hasNoDefault&&n(o.eventFormData.workflowStatus)}function i(){o.saving=!0,o.error="",c.publishOffer(b,o.eventFormData.availableFrom).then(function(){k(),l()})["catch"](function(){o.error="Dit event kon niet gepubliceerd worden, gelieve later opnieuw te proberen."})}function j(){g.open({templateUrl:"templates/event-form-publish-modal.html",controller:"EventFormPublishModalController",controllerAs:"efpmc",resolve:{eventFormData:function(){return o.eventFormData},publishEvent:function(){return o.publish}}})}function k(){return b.workflowStatus=d.READY_FOR_VALIDATION,e.resolve()}function l(){f.path("/"+b.getType()+"/"+b.id+"/published")}function m(){f.path("/"+b.getType()+"/"+b.id+"/saved")}function n(a){return a===d.DRAFT}var o=this;o.publish=i,o.canPublishLater=h,o.publishLater=j,o.preview=m,o.isDraft=n,o.saving=!1,o.eventFormData=b;var p=_.get(a,"offerEditor.defaultPublicationDate");o.hasNoDefault=isNaN(Date.parse(p)),!o.hasNoDefault&&n&&(o.eventFormData.availableFrom=p)}angular.module("udb.event-form").controller("EventFormPublishController",a),a.$inject=["appConfig","EventFormData","eventCrud","OfferWorkflowStatus","$q","$location","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(d,e){c.id!==d.id&&(a.activeEventType=d.id,e?(c.isEvent=!0,c.isPlace=!1):("permanent"!==c.calendar.calendarType&&c.resetCalendar(),c.isEvent=!1,c.isPlace=!0,c.calendar.calendarType="permanent"),c.setEventType(d),c.id&&b.$emit("eventTypeChanged",c),k.updateEventTypeAndThemePicker(c),c.showStep(2),c.showStep(3))}function h(a){c.getTheme().id!==a.id&&(c.setTheme(a),c.showStep(2),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c))}function i(){a.showAllEventTypes=!a.showAllEventTypes}function j(){a.showAllPlaces=!a.showAllPlaces}var k=this;a.eventFormData=c,a.eventTypeLabels=d,a.placeLabels=e,a.canRefine=!1,a.canRefineByGroups=!1,a.showAllEventTypes=!1,a.showAllPlaces=!1,a.eventThemeLabels=[],a.eventGroupLabels=[],a.activeEventType="",a.activeEventTypeLabel="",a.activeTheme="",a.activeThemeLabel="",a.splitTypes=!0,k.updateEventTypeAndThemePicker=function(b){var c,g=b.getEventType().id,h=b.getTheme().id,i=_.union(d,e),j=_.findWhere(i,{id:g});if(j){if(a.activeEventType=j.id,a.activeEventTypeLabel=f.instant("offerTypes."+j.label),a.eventThemeLabels=j.themes,a.eventGroupLabels=j.groups,a.isLessonSeries="0.3.1.0.0"===a.activeEventType,j.themes&&(c=_.findWhere(j.themes,{id:h})),j.groups){var k=_.find(j.groups,function(a){return _.where(a.themes,{id:h}).length>0});k&&(c=_.findWhere(k.themes,{id:h}))}}else a.activeEventType="",a.activeEventTypeLabel="";c?(a.activeTheme=c.id,a.activeThemeLabel=f.instant("offerThemes."+c.label)):(a.activeTheme="",a.activeThemeLabel=""),a.canRefine=j&&!_.isEmpty(j.themes)&&!c,a.canRefineByGroups=j&&!_.isEmpty(j.groups)&&!c},k.resetEventType=function(){c.removeType(),k.updateEventTypeAndThemePicker(c)},k.resetTheme=function(){c.removeTheme(),k.updateEventTypeAndThemePicker(c),k.eventThemeChanged(c)},k.eventThemeChanged=function(a){a.id&&b.$emit("eventThemeChanged",a)},a.setEventType=g,a.resetEventType=k.resetEventType,a.toggleEventTypes=i,a.togglePlaces=j,a.setTheme=h,a.resetTheme=k.resetTheme,k.init=function(b){b.id&&(k.updateEventTypeAndThemePicker(b),a.splitTypes=!1),_.where(a.eventTypeLabels,{primary:!0}).length===a.eventTypeLabels.length&&(a.showAllEventTypes=!0),_.where(a.placeLabels,{primary:!0}).length===a.placeLabels.length&&(a.showAllPlaces=!0)},a.translateOfferTypes=function(a){return f.instant("offerTypes."+a)},a.translateOfferThemes=function(a){return f.instant("offerThemes."+a)},a.translateOfferThemesGroups=function(a){return f.instant("offerThemesGroups."+a)},k.init(c)}angular.module("udb.event-form").controller("EventFormStep1Controller",a),a.$inject=["$scope","$rootScope","EventFormData","eventCategories","placeCategories","$translate"]}(),function(){"use strict";function a(a,b,c){var d=this;a.eventFormData=c,d.eventTimingChanged=function(){c.id&&b.$emit("eventTimingChanged",c)},c.timingChanged$.subscribe(d.eventTimingChanged)}angular.module("udb.event-form").controller("EventFormStep2Controller",a),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){var a={id:null,name:"",address:{addressCountry:"",addressLocality:"",postalCode:"",streetAddress:""}};return _.cloneDeep(a)}function o(b){return a.availableCountries.filter(function(a){return!b||"ZZ"!==a.code})}function p(){b.resetLocation(),a.selectedCity="",a.placeStreetAddress="",a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.locationAutocompleteTextField="",a.bookableEventShowStep4=!1,C(),E.stepUncompleted()}function q(){"NL"===a.selectedCountry.code?a.cities=g:a.cities=f,p()}function r(){var c=b.getLocation();c.id="",c.name="";var d={};d.zip=c.address.postalCode,d.name=c.address.addressLocality,b.setLocation(c),a.selectedLocation=!1,a.locationAutocompleteTextField="",a.asyncPlaceSuggestion="",a.locationsSearched=!1,a.selectedCityObj=d,E.stepUncompleted()}function s(a){return function(b){return new h(a,b.name+""+b.address.streetAddress)}}function t(){function c(c){b.place=c,a.selectedCity=c.address.postalCode+" "+c.address.addressLocality;var d={id:c.id,name:c.name,address:{addressCountry:a.selectedCountry.code,addressLocality:c.address.addressLocality,postalCode:c.address.postalCode,streetAddress:c.address.streetAddress}};b.setLocation(d),a.selectedLocation=angular.copy(d),E.stepCompleted()}var d=e.open({templateUrl:"templates/event-form-place-modal.html",controller:"EventFormPlaceModalController",resolve:{location:function(){return a.eventFormData.location},categories:function(){return a.categories},title:function(){return a.locationAutocompleteTextField}}});d.result.then(c)}function u(a){return a.split(" ").pop()||""}function v(a){if(a){var b=15;return u(a).length<=b}}function w(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function x(c){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),a.step3Form.$valid){if(!v(c))return a.showStreetValidation=!0,void a.step3Form.street.$setValidity("invalid",!1);var d=b.address,e={streetAddress:c};b.address=_.merge(n().address,d,e),a.placeStreetAddress=c,E.stepCompleted()}}function y(c,d){if(a.showValidation=!0,a.step3Form.street.$setValidity("invalid",!0),"NL"===a.selectedCountry.code&&a.step3Form.postalCode.$setValidity("invalid",!0),a.step3Form.$valid&&(v(c)||(a.showStreetValidation=!0,a.step3Form.street.$setValidity("invalid",!1)),"NL"===a.selectedCountry.code&&(w(d)||(a.showZipValidation=!0,a.step3Form.postalCode.$setValidity("invalid",!1))),!a.showStreetValidation&&!a.showZipValidation)){var e=b.address,f={streetAddress:c,postalCode:d};b.address=_.merge(n().address,e,f),a.placeStreetAddress=c,E.stepCompleted()}}function z(){a.showValidation=!1,a.showStreetValidation=!1}function A(){a.showValidation=!1,a.showZipValidation=!1}function B(){a.newPlaceStreetAddress=a.placeStreetAddress?a.placeStreetAddress:"",a.placeStreetAddress="",a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,E.stepUncompleted()}function C(){a.isBookableEvent="ZZ"===a.selectedCountry.code?!0:!1}function D(){b.id&&(b.majorInfoChanged=!0)}var E=this,F=k.use()||"nl";a.eventFormData=b,a.categories=d,a.cityAutocompleteTextField="",a.bookableEventLocationId=m.offerEditor.bookableEvent.dummyLocationId,a.locationAutocompleteTextField="",a.availableCountries=m.offerEditor.countries,a.defaultCountry=_.find(a.availableCountries,function(a){return a["default"]}),a.selectedCountry=a.defaultCountry,a.searchingCities=!1,a.cityAutoCompleteError=!1,a.loadingPlaces=!1,a.locationAutoCompleteError=!1,a.locationsSearched=!1,a.selectedCity="",a.selectedLocation=void 0,a.placeStreetAddress="",a.newPlaceStreetAddress="",a.openPlaceModal=t,a.showValidation=!1,a.showStreetValidation=!1,a.showZipValidation=!1,a.locationsForCity=[],a.cities="BE"===a.selectedCountry.code?f:g,a.changeCountrySelection=q,a.changeCitySelection=p,a.changeLocationSelection=r,a.setPlaceStreetAddress=x,a.setNLPlaceStreetAddress=y,a.changePlaceStreetAddress=B,a.resetStreetValidation=z,a.resetZipValidation=A,a.setMajorInfoChanged=D,a.filterAvailableCountries=o,a.filterCities=function(a){return function(b){var c=a.match(/.+/g),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}},a.orderByLevenshteinDistance=function(a){return function(b){return new h(a,b.label)}},E.selectCity=function(c,d){var e=c.zip,f=c.name,g={postalCode:e,addressLocality:f,addressCountry:a.selectedCountry.code};if(b.isPlace){var h=a.eventFormData.address;a.eventFormData.address=_.merge(n().address,h,g)}else{var i={address:g},j=a.eventFormData.getLocation(),k=_.merge(n(),j,i);b.setLocation(k)}a.cityAutocompleteTextField="",a.asyncPlaceSuggestion="",a.selectedCity=d,a.selectedCityObj=c,a.selectedLocation=void 0,D()},a.selectCity=E.selectCity,E.selectLocation=function(d,e){function f(c){a.selectedLocation=c,a.locationAutocompleteTextField="";var f=b.getLocation();f.id=d,f.name=e,f.address=c.address,f.isDummyPlaceForEducationEvents=c.isDummyPlaceForEducationEvents,b.setLocation(f),E.stepCompleted(),D(),j.$emit("locationSelected",f)}var g=null;return a.isBookableEvent?c.getPlaceById(d).then(function(b){g=b,e=g.name,f(g),a.bookableEventShowStep4=!0}):(g=_.find(a.locationsForCity,function(a){return a.id===d}),void f(g))},a.selectLocation=E.selectLocation,E.getPlaces=function(b){function d(c){_.each(c,function(a,b){c[b]=l(c[b],F,!0)});var d=c.filter(function(a){return!a.isDummyPlaceForEducationEvents}),e=null;return e=d.sort(s(b)),a.locationsForCity=e,e}function e(){return a.locationAutoCompleteError=!0,[]}return b.length<3?void(a.locationsSearched=!1):(a.locationsSearched=!0,"BE"===a.selectedCountry.code?c.getPlacesByZipcode(a.selectedCityObj.zip,"BE",b).then(d,e):"NL"===a.selectedCountry.code?c.getPlacesByCity(a.selectedCityObj.name,"NL").then(d,e):void 0)},a.getPlaces=E.getPlaces,E.cityHasLocations=function(){return a.locationsForCity instanceof Array&&a.locationsForCity.length>0},E.stepCompleted=function(){b.showStep(4),b.id&&i.updateMajorInfo(b)},E.stepUncompleted=function(){b.id||b.hideStep(4)},E.init=function(b){var c;b.isEvent&&b.location.name&&(c=_.get(b,"location.address"),b.location.name&&(a.selectedLocation=angular.copy(b.location)),b.location.isDummyPlaceForEducationEvents&&(a.isBookableEvent=b.location.isDummyPlaceForEducationEvents,a.bookableEventShowStep4=!0)),b.isPlace&&b.address.postalCode&&(c=b.address,a.placeStreetAddress=c.streetAddress),c&&(a.selectedCity=c.addressLocality,a.selectedCountry=_.find(a.availableCountries,function(a){return a.code===c.addressCountry})),a.isBookableEvent&&(a.selectedCountry=_.find(a.availableCountries,function(a){return"ZZ"===a.code}))},E.init(b)}angular.module("udb.event-form").controller("EventFormStep3Controller",a),a.$inject=["$scope","EventFormData","cityAutocomplete","placeCategories","$uibModal","citiesBE","citiesNL","Levenshtein","eventCrud","$rootScope","$translate","jsonLDLangFilter","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){return a.infoMissing=!1,a.missingInfo=[],b.type.id||a.missingInfo.push("event type missing"),"single"===b.calendarType&&""===b.timestamps[0].date?a.missingInfo.push("timestamp missing"):"periodic"!==b.calendarType||""!==b.startDate&&""!==b.endDate?""===b.calendarType&&a.missingInfo.push("when missing"):a.missingInfo.push("start or end date missing"),b.isEvent&&!b.location.id?a.missingInfo.push("place missing for event"):b.isPlace&&!b.address.streetAddress&&a.missingInfo.push("address missing for place"),""===b.name&&a.missingInfo.push("title is missing"),b.typicalAgeRange||a.missingInfo.push("age range is missing"),a.missingInfo.length>0?void(a.infoMissing=!0):void 0}function j(){return a.isValidateButtonDisabled?void 0:(a.isValidateButtonDisabled=!0,i(),a.missingInfo.length>0?(a.infoMissing=!0,void(a.isValidateButtonDisabled=!1)):void(u?o():k(b)))}function k(b){a.saving=!0,a.error=!1,a.resultViewer.loading=!0,a.duplicatesSearched=!0,m(b).then(l,q)}function l(b){b.totalItems>0?(a.saving=!1,a.resultViewer.setResults(b)):o()}function m(a){var b=n(a),d=[];angular.forEach(b,function(a,b){d.push(b+':"'+a+'"')});var e=d.join(" AND ");return c.findOffers(e)}function n(a){var b=a.getLocation();return a.isEvent?{"name.\\*":a.name.nl,"location.name.\\*":b.name}:{"name.\\*":a.name.nl,postalCode:a.address.postalCode,labels:"UDB3 place"}}function o(){p();var c;c=f.createOffer(b),c.then(function(c){b=c,f.updateTypicalAgeRange(b),b.majorInfoChanged=!1,a.saving=!1,a.resultViewer=new e,a.titleInputOptions={updateOn:"change blur"},b.showStep(5)},q)}function p(){a.error=!1,a.saving=!0}function q(){a.error=!0,a.saving=!1}function r(){b.id&&""!==b.name&&g.$emit("eventTitleChanged",b)}function s(c){h.open({templateUrl:"templates/suggestion-preview-modal.html",controller:"SuggestionPreviewModalController",resolve:{selectedSuggestionId:function(){return c.id},resultViewer:function(){return a.resultViewer},suggestionType:function(){return b.getType()}}})}var t=this,u=_.get(d,"offerEditor.ignoreDuplicates",!1);a.eventFormData=b,a.titleInputOptions={updateOn:"change blur"},a.infoMissing=!1,a.duplicatesSearched=!1,a.saving=!1,a.error=!1,a.isValidateButtonDisabled=!1,a.validateEvent=j,a.saveEvent=o,a.resultViewer=new e,a.eventTitleChanged=r,a.previewSuggestedItem=s,b.showStep4===!0&&i(),window.onbeforeunload=function(a){return b.majorInfoChanged?"Bent u zeker dat je de pagina wil verlaten? Gegevens die u hebt ingevoerd worden niet opgeslagen.":void 0},a.$on("changeTypicalAgeRange",function(c,d){a.eventFormData.typicalAgeRange=d,b.showStep5===!0&&(f.updateTypicalAgeRange(b),i())}),t.eventFormSaved=function(){g.$emit("eventFormSaved",b)}}angular.module("udb.event-form").controller("EventFormStep4Controller",a),a.$inject=["$scope","EventFormData","udbApi","appConfig","SearchResultViewer","eventCrud","$rootScope","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h){function i(){a.descriptionCssClass="state-filling"}function j(){a.descriptionInfoVisible=!0,a.originalDescription=a.description}function k(d){d&&(a.description="");var e=a.description&&""!==a.description||d,f=a.description!==a.originalDescription||d;if(e&&f){a.descriptionInfoVisible=!1,a.savingDescription=!0,a.descriptionError=!1,b.setDescription(a.description.replace(new RegExp(String.fromCharCode(31),"g"),""),a.mainLanguage);var g=c.updateDescription(b,a.description);g.then(function(){a.savingDescription=!1,K.eventFormSaved(),a.description?a.descriptionCssClass="state-complete":a.descriptionCssClass="state-incomplete"},function(){a.savingDescription=!1,a.descriptionError=!0})}}function l(){return a.description?a.description.length:void 0}function m(b){function c(b){var c=b;return g.offerEditor.excludeOrganizerLabel&&""!==g.offerEditor.excludeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.excludeOrganizerLabel)<0:!0})),g.offerEditor.includeOrganizerLabel&&""!==g.offerEditor.includeOrganizerLabel&&(c=_.filter(c,function(a){return a.labels&&a.labels.length>0?a.labels.indexOf(g.offerEditor.includeOrganizerLabel)>=0:!1})),a.emptyOrganizerAutocomplete=c.length<=0,a.loadingOrganizers=!1,c}return a.loadingOrganizers=!0,d.suggestOrganizers(b).then(c)}function n(a){K.saveOrganizer(a)}function o(){b.priceInfo.length>0?h.getTicketSales(a.eventFormData.id,a.eventFormData.organizer).then(function(b){b?a.hasTicketSales=b:p()},function(){a.hasUitpasError=!0}):p()}function p(){function d(){K.eventFormSaved(),b.resetOrganizer(),f.$emit("eventOrganizerDeleted",{}),a.organizerCssClass="state-incomplete",a.savingOrganizer=!1}a.organizerError=!1,c.deleteOfferOrganizer(b).then(d,K.showAsyncOrganizerError)}function q(){function c(){a.organizer="",a.emptyOrganizerAutocomplete=!1,b.organizer.id?a.organizerCssClass="state-complete":a.organizerCssClass="state-incomplete"}var d=e.open({backdrop:"static",templateUrl:"templates/event-form-organizer-modal.html",controller:"EventFormOrganizerModalController",resolve:{organizerName:function(){return a.organizer}}});d.result.then(K.saveOrganizer,c)}function r(){_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-filling"),a.contactInfo.push({type:L.PHONE,value:"",booking:!1})}function s(b){a.contactInfo.splice(b,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete"),t()}function t(){if(a.savingContactInfo=!0,a.contactInfoError=!1,a.contactInfoForm.$valid){b.resetContactPoint(),_.forEach(a.contactInfo,function(a){a.booking?w(a):!_.isEmpty(a.value)&&_.includes(L,a.type)&&b.contactPoint[a.type].push(a.value)});var d=c.updateContactPoint(b);d.then(function(){K.eventFormSaved(),_.isEmpty(a.contactInfo)||(a.contactInfoCssClass="state-complete"),a.savingContactInfo=!1},function(){a.contactInfoError=!0,a.savingContactInfo=!1})}}function u(b){var c=_.find(a.contactInfo,{type:b.type,booking:!0});return b.booking||!c}function v(){var b=_.find(a.contactInfo,{booking:!0});return!!b}function w(b){var c=b.type,d=b.booking?b.value:"";a.bookingModel[c]!==d&&(a.bookingModel[c]=d,C())}function x(b){_.includes(L,b)&&(a.bookingModel[b]="",C())}function y(){a.websitePreviewEnabled=!1,b.bookingInfo.urlLabel=a.bookingModel.urlLabel,""!==a.bookingModel.urlLabelCustom&&(b.bookingInfo.urlLabel=a.bookingModel.urlLabelCustom),C()}function z(){a.websitePreviewEnabled=!0}function A(b,c){a.contactInfo[c].booking=!1,w(b),a.contactInfo.splice(c,1),_.isEmpty(a.contactInfo)&&(a.contactInfoCssClass="state-incomplete")}function B(b){var c={},d=b[a.mainLanguage].value;return _.each(a.translatableLanguages,function(b){c[b]=_.findWhere(a.bookingOptions[b],{value:d}).label}),c}function C(){var d={};_.each(a.translatableLanguages,function(a){d[a]=J("reserve_places",a)}),b.bookingInfo=angular.extend({},{url:"",urlLabel:d,email:"",phone:"",availabilityStarts:b.bookingInfo.availabilityStarts?moment(b.bookingInfo.availabilityStarts).format():"",availabilityEnds:b.bookingInfo.availabilityEnds?moment(b.bookingInfo.availabilityEnds).format():""},a.bookingModel),"string"!=typeof b.bookingInfo.urlLabel?b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel):b.bookingInfo.urlLabel=B(b.bookingInfo.urlLabel),a.savingBookingInfo=!0,a.bookingInfoError=!1;var e=c.updateBookingInfo(b);e.then(function(){K.eventFormSaved(),a.bookingInfoCssClass="state-complete",a.savingBookingInfo=!1,a.bookingInfoError=!1,D()},function(){a.savingBookingInfo=!1,a.bookingInfoError=!0})}function D(){var b=a.bookingModel.url,c=a.bookingModel.phone,d=a.bookingModel.email;a.contactInfo.some(function(a){return a.value===b}),a.contactInfo.some(function(a){return a.value===c}),a.contactInfo.some(function(a){return a.value===d}),t()}function E(){e.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController"})}function F(a){e.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{mediaObject:function(){return a}}})}function G(a){e.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{image:function(){return a}}})}function H(a){function d(){b.selectMainImage(a)}c.selectMainImage(b,a).then(d)}function I(){a.contactInfo=_.flatten(_.map(b.contactPoint,function(a,b){return _.contains(L,b)?_.map(a,function(a){return{type:b,value:a,booking:!1}}):[]})),b.bookingInfo.url&&a.contactInfo.push({type:"url",value:b.bookingInfo.url,booking:!0}),b.bookingInfo.phone&&a.contactInfo.push({type:"phone",value:b.bookingInfo.phone,booking:!0}),b.bookingInfo.email&&a.contactInfo.push({type:"email",value:b.bookingInfo.email,booking:!0}),a.contactInfo.length>0&&(a.contactInfoCssClass="state-complete"),b.priceInfo&&(a.price=b.priceInfo,a.priceCssClass="state-complete")}function J(a,b){var c=[];switch(b){case"nl":c=[{value:"buy_tickets",label:"Koop tickets"},{value:"reserve_places",label:"Reserveer plaatsen"},{value:"check_availability",label:"Controleer beschikbaarheid"},{value:"subscribe",label:"Schrijf je in"}];break;case"fr":c=[{value:"buy_tickets",label:"Achetez des tickets"},{value:"reserve_places",label:"Réservez des places"},{value:"check_availability",label:"Controlez la disponibilité"},{value:"subscribe",label:"Inscrivez-vous"}];break;case"en":c=[{value:"buy_tickets",label:"Buy tickets"},{value:"reserve_places",label:"Reserve places"},{value:"check_availability",label:"Check availability"},{value:"subscribe",label:"Subscribe"}];break;case"de":c=[{value:"buy_tickets",label:"Tickets kaufen"},{value:"reserve_places",label:"Platzieren Sie eine Reservierung"},{value:"check_availability",label:"Verfügbarkeit prüfen"},{value:"subscribe",label:"Melde dich an"}]}return _.findWhere(c,{value:a}).label}var K=this,L=Object.freeze({EMAIL:"email",PHONE:"phone",URL:"url"});a.eventFormData=b,a.mainLanguage=b.getMainLanguage(),a.description=b.getDescription(a.mainLanguage),a.descriptionCssClass=a.description?"state-complete":"state-incomplete",a.savingDescription=!1,a.descriptionError=!1,a.originalDescription="",a.organizerCssClass=b.organizer.name?"state-complete":"state-incomplete",a.organizer="",a.emptyOrganizerAutocomplete=!1,a.loadingOrganizers=!1,a.organizerError=!1,a.savingOrganizer=!1,a.disablePriceInfo=_.get(g.offerEditor,"disablePriceInfo"),a.translatableLanguages=g.translatableLanguages,a.editBookingPhone=!b.bookingInfo.phone,a.editBookingEmail=!b.bookingInfo.email,a.editBookingUrl=!b.bookingInfo.url,a.bookingModel={urlRequired:!1,emailRequired:!1,phoneRequired:!1,url:b.bookingInfo.urlLabel?b.bookingInfo.url:"",urlLabel:{},urlLabelCustom:"",phone:b.bookingInfo.phone?b.bookingInfo.phone:"",email:b.bookingInfo.email?b.bookingInfo.email:""},a.newBookingModel={},a.bookingOptions=[],_.each(a.translatableLanguages,function(b){a.bookingOptions[b]=[{value:"buy_tickets",label:J("buy_tickets",b)},{value:"reserve_places",label:J("reserve_places",b)},{value:"check_availability",label:J("check_availability",b)},{value:"subscribe",label:J("subscribe",b)}]}),b.bookingInfo.urlLabel?(a.bookingModel.urlLabel=[],a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{label:b.bookingInfo.urlLabel}),void 0===a.usedBookingOption&&(a.usedBookingOption=_.findWhere(a.bookingOptions[a.mainLanguage],{value:"reserve_places"})),"string"==typeof b.bookingInfo.urlLabel?_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})}):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=_.findWhere(a.bookingOptions[b],{value:a.usedBookingOption.value})})):_.each(a.translatableLanguages,function(b){a.bookingModel.urlLabel[b]=a.bookingOptions[b][1]}),a.usedBookingOption&&!_.find(a.bookingOptions[a.mainLanguage],a.usedBookingOption)&&a.bookingOptions[a.mainLanguage].unshift(a.usedBookingOption),a.viaWebsite=!b.bookingInfo.url,a.viaEmail=!b.bookingInfo.email,a.viaPhone=!b.bookingInfo.phone,a.websitePreviewEnabled=!1,a.bookingPeriodPreviewEnabled=!1, +a.bookingPeriodShowValidation=!1,a.bookingInfoCssClass="state-incomplete",a.toggleBookingType=w,a.saveBookingInfo=C,a.removeDuplicateContactBooking=D,a.saveWebsitePreview=y,a.enableWebsitePreview=z,a.showBookingOption=u,a.deleteBookingInfo=A,a.removeBookingInfo=x,a.hasBookingInfo=v,a.translateBookingInfoUrlLabels=J,a.contactInfoCssClass="state-incomplete",a.savingContactInfo=!1,a.contactInfoError=!1,a.contactInfo=[],a.alterDescription=i,a.focusDescription=j,a.saveDescription=k,a.countCharacters=l,a.getOrganizers=m,a.selectOrganizer=n,a.deleteOrganizerHandler=o,a.openOrganizerModal=q,a.deleteContactInfo=s,a.saveContactInfo=t,a.addContactInfo=r,a.hasTicketSales=!1,a.hasUitpasError=!1,a.openUploadImageModal=E,a.removeImage=G,a.editImage=F,a.selectMainImage=H,I(),K.eventFormSaved=function(){f.$emit("eventFormSaved",b)},K.showAsyncOrganizerError=function(){a.organizerError=!0,a.savingOrganizer=!1},K.saveOrganizer=function(d){function e(){a.emptyOrganizerAutocomplete=!1,a.organizerError=!1,a.savingOrganizer=!0,a.organizer=""}function g(){K.eventFormSaved(),f.$emit("eventOrganizerSelected",d),a.organizerCssClass="state-complete",a.savingOrganizer=!1}b.organizer=d,e(),c.updateOrganizer(b).then(g,K.showAsyncOrganizerError)}}angular.module("udb.event-form").controller("EventFormStep5Controller",a),a.$inject=["$scope","EventFormData","eventCrud","udbOrganizers","$uibModal","$rootScope","appConfig","udbUitpasApi"]}(),function(){"use strict";function a(a,c,d){var e=function(e,f,g,h){a.call(this,e),this.type="export",this.exportUrl="",this.eventCount=f,this.format=g,this.extension=_.find(d,{type:g}).extension,this.details=h,this.messages={},this.messages[c.CREATED]=b(this,c.CREATED,c),this.messages[c.STARTED]=b(this,c.STARTED,c),this.messages[c.FINISHED]=b(this,c.FINISHED,c),this.messages[c.FAILED]=b(this,c.FAILED,c)};return e.prototype=Object.create(a.prototype),e.prototype.constructor=e,e.prototype.getTemplateName=function(){var a;switch(this.state){case c.FINISHED:a="export-job";break;case c.FAILED:a="failed-job";break;default:a="base-job"}return a},e.prototype.getDescription=function(){return b(this,this.state,c)},e.prototype.info=function(a){a.location&&(this.exportUrl=a.location)},e.prototype.getTaskCount=function(){return this.eventCount},e}function b(a,b,c){var d="";return d=b===c.FAILED?"Exporteren van items mislukt":"Document ."+a.extension+" met "+a.eventCount+" items"}angular.module("udb.entry").factory("EventExportJob",a),a.$inject=["BaseJob","JobStates","ExportFormats"]}(),function(){"use strict";function a(a,b,c,d,e){function f(a){h=0>a?0:a>g.steps.length?g.steps.length:a}var g=this;g.exportLogoUrl=e.exportLogoUrl,g.dayByDay=!1,g.eventProperties=[{name:"name",include:!0,sortable:!1,excludable:!1},{name:"description",include:!1,sortable:!1,excludable:!0},{name:"labels",include:!1,sortable:!1,excludable:!0},{name:"calendarSummary",include:!0,sortable:!1,excludable:!1},{name:"image",include:!1,sortable:!1,excludable:!0},{name:"videos",inclue:!1,sortable:!1,excludable:!0},{name:"location",include:!0,sortable:!1,excludable:!1},{name:"address",include:!0,sortable:!1,excludable:!0},{name:"organizer",include:!1,sortable:!1,excludable:!0},{name:"priceInfo",include:!1,sortable:!1,excludable:!0},{name:"kansentarief",include:!1,sortable:!1,excludable:!0,format:c.OOXML},{name:"contactPoint",include:!1,sortable:!1,excludable:!0},{name:"bookingInfo",include:!1,sortable:!1,excludable:!0},{name:"status",include:!1,sortable:!1,excludable:!0},{name:"bookingAvailability",include:!1,sortable:!1,excludable:!0},{name:"attendance",include:!1,sortable:!1,excludable:!0},{name:"creator",include:!1,sortable:!1,excludable:!0},{name:"terms.theme",include:!0,sortable:!1,excludable:!0},{name:"terms.eventtype",include:!0,sortable:!1,excludable:!0},{name:"created",include:!1,sortable:!1,excludable:!0},{name:"modified",include:!1,sortable:!1,excludable:!0},{name:"available",include:!1,sortable:!1,excludable:!0},{name:"endDate",include:!1,sortable:!1,excludable:!0},{name:"startDate",include:!1,sortable:!1,excludable:!0},{name:"calendarType",include:!1,sortable:!1,excludable:!0},{name:"sameAs",include:!1,sortable:!1,excludable:!0},{name:"typicalAgeRange",include:!1,sortable:!1,excludable:!0},{name:"language",include:!1,sortable:!1,excludable:!0},{name:"audience",include:!1,sortable:!1,excludable:!0,format:c.OOXML}],g.exportFormats=_.map(c),g.brands=e.exportBrands,g.restrictedBrands=e.restrictedExportBrands,g.templateUrl=e.exportTemplateUrl,g.templates=e.exportTemplateTypes,d.getMyRoles().then(function(a){angular.forEach(a,function(b,c){g.brands=g.brands.concat(_.where(g.restrictedBrands,{role:a[c].uuid}))})}),g.customizations={brand:"",logo:g.exportLogoUrl+g.brands[0].logo,title:"",subtitle:"",footer:"",publisher:"",template:""},g.exportSteps={format:{name:"format",incomplete:function(){var a=g.format,b=!!_.find(g.exportFormats,{type:a,customizable:!0});return b?g.steps=[g.exportSteps.format,g.exportSteps.customize,g.exportSteps.confirm]:g.steps=[g.exportSteps.format,g.exportSteps.filter,g.exportSteps.confirm],!a}},customize:{name:"customize",incomplete:function(){return!g.customizations.brand||!g.customizations.title||!g.customizations.template}},filter:{name:"filter",incomplete:function(){return!_.find(g.eventProperties,function(a){return a.include===!0})}},confirm:{name:"confirm"}},g.steps=[g.exportSteps.format,g.exportSteps.confirm];var h=0;g.nextStep=function(){g.isStepCompleted()?f(h+1):g.hasErrors=!0},g.previousStep=function(){f(h-1)},g.isStepCompleted=function(){if(-1===h)return!0;var a=g.steps[h].incomplete;return"undefined"==typeof a||"function"==typeof a&&!a()},g.isOnFirstStep=function(){return 0===h},g.getActiveStepName=function(){return-1===h?"finished":g.steps[h].name},g.onLastStep=function(){return h>=g.steps.length-1},g["export"]=function(){var a,c,d=_.find(g.exportFormats,{type:g.format}),e=d&&d.customizable===!0;e?(c=g.customizations,c.logo=g.exportLogoUrl+c.brand.logo,c.brand=c.brand.name,c.template=c.template.name,a=[]):(c={},a=_.pluck(_.filter(g.eventProperties,"include"),"name")),b["export"](g.format,g.email,a,g.dayByDay,c),h=-1},g.format=g.exportFormats[0].type,g.email="",g.close=function(){a.dismiss("cancel")},g.eventCount=b.activeExport.eventCount}angular.module("udb.export").controller("EventExportController",a),a.$inject=["$uibModalInstance","eventExporter","ExportFormats","udbApi","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.activeExport={query:{},eventCount:0,selection:[]},f["export"]=function(b,g,h,i,j){var k=' AND workflowStatus:("APPROVED" OR "READY_FOR_VALIDATION")',l="("+f.activeExport.query.queryString+")"+k,m=f.activeExport.selection||[],n=f.activeExport.eventCount,o=j.brand||"",p=null,q=e.getObject("user"),r=c.exportEvents(l,g,b,h,i,m,j);return p={format:b,user:q.id,brand:o,queryString:l},r.success(function(c){var e=new d(c.commandId,n,b,p);a.addJob(e),e.start()}),r}}angular.module("udb.export").service("eventExporter",a),a.$inject=["jobLogger","appConfig","udbApi","EventExportJob","$cookies"]}(),function(){"use strict";angular.module("udb.export").constant("ExportFormats",{OOXML:{type:"ooxml",extension:"xlsx",label:"Office Open XML (Excel)",description:"Het standaard formaat van Excel vanaf Microsoft Office 2007."},PDF:{type:"pdf",label:"Als PDF",extension:"pdf",description:"Druk snel en eenvoudig items uit de UiTdatabank af. Kies een Vlieg, UiT-, of UiTPAS-sjabloon.",customizable:!0},JSON:{type:"json",label:"Als json",extension:"json",description:"Exporteren naar event-ld om de informatie voor ontwikkelaars beschikbaar te maken."}})}(),function(){"use strict";function a(){return{templateUrl:"templates/export-modal-buttons.directive.html",restrict:"E"}}angular.module("udb.export").directive("udbExportModalButtons",a)}(),function(){"use strict";function a(){function a(a){var c="undefined"!=typeof a?a:b.queryString;b.queryString=c,b.onChange({query:c})}var b=this;b.queryString="",b.find=a}angular.module("udb.management").component("udbQuerySearchBar",{templateUrl:"templates/query-search-bar.html",controller:a,controllerAs:"qsb",bindings:{onChange:"&",searchLabel:"@",helpLink:"@",helpLabel:"@"}})}(),function(){"use strict";function a(){return{restrict:"A",require:"^form",link:function(a,b,c,d){var e=b[0].querySelector("[name]"),f=angular.element(e),g=f.attr("name");f.bind("blur",function(){var a=d[g].$invalid;b.toggleClass("has-error",a).toggleClass("has-success",!a)})}}}angular.module("udb.management").directive("udbFormGroup",a)}(),function(){"use strict";function a(a,b,c){function d(){function b(){c.go("split.manageLabels.list")}f.creating=!0,a.create(f.label.name,f.label.isVisible,f.label.isPrivate).then(b,e)["finally"](function(){f.creating=!1})}function e(a){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}var f=this;f.creating=!1,f.create=d,f.label={name:"",isPrivate:!1,isVisible:!0}}angular.module("udb.management.labels").controller("LabelCreatorController",a),a.$inject=["LabelManager","$uibModal","$state"]}(),function(){"use strict";function a(a,b,c,d){function e(){function b(a){j(a.uuid)}p.renaming=!0,a.copy(p.label).then(b,g)["finally"](function(){p.renaming=!1,p.saving=!1})}function f(){p.saving=!0;var a=[],b=p.originalLabel.name!==p.label.name;b?e():(p.originalLabel.isVisible!==p.label.isVisible&&a.push(n()),p.originalLabel.isPrivate!==p.label.isPrivate&&a.push(o()),d.all(a)["finally"](function(){p.saving=!1})["catch"](g))}function g(a){j(p.label.uuid);b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return a.title+" "+a.detail}}})}function h(){var a=c.id;j(a)}function i(a){p.label=a,k(a),l(a),p.originalLabel=_.cloneDeep(p.label)}function j(b){p.loadingError=!1,p.label=!1,a.get(b).then(i,m)}function k(a){return"visible"===a.visibility?a.isVisible=!0:a.isVisible=!1,a}function l(a){return"public"===a.privacy?a.isPrivate=!1:a.isPrivate=!0,a}function m(){p.loadingError="Label niet gevonden!"}function n(){var b=p.label.isVisible;return b?a.makeVisible(p.label):a.makeInvisible(p.label)}function o(){var b=p.label.isPrivate;return b?a.makePrivate(p.label):a.makePublic(p.label)}var p=this;p.updateVisibility=n,p.updatePrivacy=o,p.saving=!1,p.renaming=!1,p.save=f,h()}angular.module("udb.management.labels").controller("LabelEditorController",a),a.$inject=["LabelManager","$uibModal","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findLabels(b,c,d,!1)},b.get=function(b){return a.getLabelById(b)},b.create=function(b,c,d){return a.createLabel(b,c,d)},b.copy=function(b){return a.createLabel(b.name,b.isVisible,b.isPrivate,b.uuid)},b["delete"]=function(b){return a.deleteLabel(b.uuid)},b.makeInvisible=function(b){return a.updateLabel(b.uuid,"MakeInvisible")},b.makeVisible=function(b){return a.updateLabel(b.uuid,"MakeVisible")},b.makePrivate=function(b){return a.updateLabel(b.uuid,"MakePrivate")},b.makePublic=function(b){return a.updateLabel(b.uuid,"MakePublic")}}angular.module("udb.management.labels").service("LabelManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(a){return""===i.query?!0:a.length>=k}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.labels").controller("LabelsListController",a),a.$inject=["SearchResultGenerator","rx","$scope","LabelManager"]}(),function(){"use strict";function a(a){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a){return void 0===a||-1===a.indexOf(";")}d.$validators.semicolonLabel=e}}}angular.module("udb.management.labels").directive("udbSemicolonLabelCheck",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueLabel=g}}}angular.module("udb.management.labels").directive("udbUniqueLabel",a),a.$inject=["LabelManager","$q"]}(),function(){"use strict";function a(a){return[{name:"Valideren",permission:a.AANBOD_MODEREREN,notificationCount:0,index:1,sref:"management.moderation.list",icon:"fa fa-flag"},{name:"Gebruikers",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:2,sref:"management.users.list",icon:"fa fa-user"},{name:"Rollen",permission:a.GEBRUIKERS_BEHEREN,notificationCount:0,index:3,sref:"split.manageRoles.list",icon:"fa fa-users"},{name:"Labels",permission:a.LABELS_BEHEREN,notificationCount:0,index:4,sref:"split.manageLabels.list",icon:"fa fa-tag"},{name:"Organisaties",permission:a.ORGANISATIES_BEHEREN,notificationCount:0,index:5,sref:"management.organizers.search",icon:"fab fa-slideshare"}]}angular.module("udb.management").factory("managementListItemDefaults",a),a.$inject=["RolePermission"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){var b="";return _.forEach(a,function(a){void 0!==a.constraints&&a.constraints.v3&&(b+=(b?" OR ":"")+a.constraints.v3)}),b=b?"("+b+")":"",c.find(b,10,0).then(function(a){return a.totalItems})}function h(b){var c=_.find(e,{permission:a.AANBOD_MODEREREN}),d=angular.copy(c);return d.notificationCount=b,d}function i(b){var c=d.defer(),e=_.filter(b,function(b){return _.includes(b.permissions,a.AANBOD_MODEREREN)});return e.length>0?g(e).then(h).then(function(a){c.resolve([a])}):c.resolve([]),c.promise}function j(b){var c=_.without(b,a.AANBOD_MODEREREN),f=_.filter(e,function(a){return _.includes(c,a.permission)});return d.resolve(f)}var k=b.getPermissions().then(j),l=c.getMyRoles().then(i);return d.all([k,l]).then(_.flatten)}angular.module("udb.management").factory("managementListItems",a),a.$inject=["RolePermission","authorizationService","ModerationService","$q","managementListItemDefaults","appConfig"]}(),function(){"use strict";function a(a,b,c,d){function e(a){p(a||{title:"Dit aanbod kon niet geladen worden."})}function f(){return"true"===r["continue"]}function g(){return r.offer.workflowStatus===c.READY_FOR_VALIDATION}function h(){return r.offer.workflowStatus===c.APPROVED}function i(){return r.offer.workflowStatus===c.REJECTED}function j(){r.error=!1,a.approve(r.offer).then(function(){q(c.APPROVED)})["catch"](p)}function k(){var a=d.open({templateUrl:"templates/reject-offer-confirm-modal.html",controller:"RejectOfferConfirmModalCtrl"});a.result.then(l)}function l(a){"DUPLICATE"===a?n():"INAPPROPRIATE"===a?o():m(a)}function m(b){r.error=!1,a.reject(r.offer,b).then(function(){q(c.REJECTED)})["catch"](p)}function n(){r.error=!1,a.flagAsDuplicate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function o(){r.error=!1,a.flagAsInappropriate(r.offer).then(function(){q(c.REJECTED)})["catch"](p)}function p(a){r.error=a.title+(a.detail?" "+a.detail:"")}function q(a){r.offer.workflowStatus=a,window.parent.postMessage({source:"UDB",type:"OFFER_MODERATED",status:a},"*")}var r=this,s="nl";r.loading=!0,r.offer={},r.error=!1,r.isReadyForValidation=g,r.isApproved=h,r.isRejected=i,r.approve=j,r.askForRejectionReasons=k,r.continueValidation=f,a.getModerationOffer(r.offerId).then(function(a){a.updateTranslationState(),r.offer=b(a,s)})["catch"](e)["finally"](function(){r.loading=!1})}angular.module("udb.management.moderation").component("udbModerationOffer",{templateUrl:"templates/moderation-offer.html",controller:a,controllerAs:"moc",bindings:{"continue":"@",offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","OfferWorkflowStatus","$uibModal"]}(),function(){"use strict";function a(a,b,c,d){function e(a){f(a||{title:"Dit aanbod kon niet geladen worden."})}function f(a){g.error=a.title+(a.detail?" "+a.detail:"")}var g=this,h="nl";g.loading=!0,g.offer={},g.error=!1,g.uitId=_.get(d,"uitidUrl"),c.isGodUser().then(function(a){g.isGodUser=a}),a.getModerationOffer(g.offerId).then(function(a){a.updateTranslationState(),g.offer=b(a,h),_.isEmpty(g.offer.description)&&(g.offer.description="")})["catch"](e)["finally"](function(){g.loading=!1})}angular.module("udb.management.moderation").component("udbModerationSummary",{templateUrl:"templates/moderation-summary.html",controller:a,controllerAs:"moc",bindings:{offerId:"@",offerType:"@"}}),a.$inject=["ModerationService","jsonLDLangFilter","authorizationService","appConfig"]}(),function(){"use strict";function a(a,b,c){function d(){var d;return a.error=!1,a.response.type&&("OTHER"!==a.response.type||a.response.reason&&a.response.reason.length)?(d="OTHER"===a.response.type?a.response.reason:a.response.type,void b.close(c.resolve(d))):void(a.error="Gelieve een reden op te geven.")}function e(){b.dismiss()}a.cancel=e,a.reject=d,a.response={}}angular.module("udb.management.moderation").controller("RejectOfferConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","$q"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(b){return o=e.createObservableFunction(s,"queryChanged"),p=e.createObservableFunction(s,"pageChanged"),q=new d(a,o,p,t,b.constraints.v3),r=q.getSearchResult$(),r.safeApply(f,m).subscribe(),o.safeApply(f,function(){s.loading=!0}).subscribe(),p.subscribe(function(){h.scrollTop(0)}),g.resolve()}function k(a){var b=_.filter(a,function(a){var b=_.filter(a.permissions,function(a){return a===c.AANBOD_MODEREREN});return b.length>0});return b.length?(s.roles=b,s.selectedRole=s.roles[0],g.resolve(s.selectedRole)):g.reject({title:"Er is huidig geen moderator rol gekoppeld aan jouw gebruiker."})}function l(a){s.queryChanged(a.constraints.v3)}function m(a){var b=a.error;b?(n(b),s.searchResult={}):s.searchResult=a,s.loading=!1}function n(a){s.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return s.errorMessage}}})}var o,p,q,r,s=this,t=10;s.roles=[],s.loading=!0,s.errorMessage=!1,s.selectedRole={},s.searchResult={},s.findModerationContent=l,a.getMyRoles().then(k).then(j)["catch"](n)["finally"](function(){s.loading=!1})}angular.module("udb.management.moderation").controller("ModerationListController",a),a.$inject=["ModerationService","$uibModal","RolePermission","SearchResultGenerator","rx","$scope","$q","$document","appConfig"]}(),function(){"use strict";function a(a,b,c,d,e){var f=this;f.getMyRoles=function(){return a.getMyRoles()},f.find=function(b,c,d){return a.findToModerate(b,d,c)},f.getModerationOffer=function(b){return a.getOffer(new URL(b))},f.approve=function(b){return a.patchOffer(b["@id"],"Approve")},f.reject=function(b,c){return a.patchOffer(b["@id"],"Reject",c)},f.flagAsDuplicate=function(b){return a.patchOffer(b["@id"],"FlagAsDuplicate")},f.flagAsInappropriate=function(b){return a.patchOffer(b["@id"],"FlagAsInappropriate")}}angular.module("udb.management.moderation").service("ModerationService",a),a.$inject=["udbApi","OfferWorkflowStatus","jobLogger","BaseJob","$q"]}(),function(){"use strict";angular.module("udb.management.moderation").constant("OfferWorkflowStatus",{DRAFT:"DRAFT",READY_FOR_VALIDATION:"READY_FOR_VALIDATION",APPROVED:"APPROVED",REJECTED:"REJECTED",DELETED:"DELETED"})}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){g.saving=!1,g.error=!0}g.error=!1,g.saving=!0,b["delete"](c).then(function(){a.close(),d.$emit("organizationDeleted",c)})["catch"](e)}function f(){a.dismiss()}var g=this;g.organization=c,g.saving=!1,g.error=!1,g.cancelRemoval=f,g.deleteOrganization=e}angular.module("udb.management.organizers").controller("OrganizationDeleteModalController",a),a.$inject=["$uibModalInstance","OrganizerManager","organization","$rootScope"]}(),function(){"use strict";function a(){return{restrict:"A",templateUrl:"templates/organization-search-item.html",bindToController:{organizationSearchItem:"=a}}function f(a){i.problem=a}function g(){i.problem=!1}function h(a){var b=a.error;b?(f(b),i.searchResult={}):(g(),i.searchResult=a),i.loading=!1}var i=this,j=10,k=3,l=b.createObservableFunction(i,"queryChanged"),m=l.filter(e(k)),n=b.createObservableFunction(i,"pageChanged"),o=new a(d,m,n,j),p=o.getSearchResult$();i.loading=!1,i.query="",i.page=0,i.minQueryLength=k,l.safeApply(c,function(a){i.query=a}).subscribe(),p.safeApply(c,h).subscribe(),m.merge(n).safeApply(c,function(){i.loading=!0}).subscribe()}angular.module("udb.management.organizers").controller("OrganizationSearchController",a),a.$inject=["SearchResultGenerator","rx","$scope","OrganizerManager"]}(),function(){"use strict";function a(a,b,c,d){function e(){function e(){a.saving=!1,a.error=!0}a.error=!1,a.saving=!0,c.deleteRole(d).then(b.close)["catch"](e)}function f(){b.dismiss()}a.item=d,a.saving=!1,a.error=!1,a.cancelRemoval=f,a.deleteRole=e}angular.module("udb.management.roles").controller("RoleDeleteConfirmModalCtrl",a),a.$inject=["$scope","$uibModalInstance","RoleManager","item"]}(),function(){"use strict";angular.module("udb.management.roles").constant("RolePermission",{AANBOD_BEWERKEN:"AANBOD_BEWERKEN",AANBOD_MODEREREN:"AANBOD_MODEREREN",AANBOD_VERWIJDEREN:"AANBOD_VERWIJDEREN",AANBOD_HISTORIEK:"AANBOD_HISTORIEK",ORGANISATIES_BEWERKEN:"ORGANISATIES_BEWERKEN",ORGANISATIES_BEHEREN:"ORGANISATIES_BEHEREN",GEBRUIKERS_BEHEREN:"GEBRUIKERS_BEHEREN",LABELS_BEHEREN:"LABELS_BEHEREN",VOORZIENINGEN_BEWERKEN:"VOORZIENINGEN_BEWERKEN",PRODUCTIES_AANMAKEN:"PRODUCTIES_AANMAKEN",FILMS_AANMAKEN:"FILMS_AANMAKEN"})}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){j().then(function(a){return z.availablePermissions=a,A?i(A):e.resolve()})["catch"](y)["finally"](function(){z.loadedRole=!0,z.loadedRolePermissions=!0,z.loadedRoleUsers=!0,z.loadedRoleLabels=!0})}function i(b){return a.get(b).then(function(a){z.role=a,z.role.users=[],z.role.labels=[],z.role.permissions=_.filter(z.availablePermissions,function(b){return _.contains(a.permissions,b.key)})},function(a){return a.detail=a.title,a.title="De rol kon niet gevonden worden.",e.reject(a)}).then(function(){return k(b)}).then(function(){return l(b)})}function j(){function a(a){return _.map(a,function(a,b){return{key:b,name:a}})}var b=_.values(g);return f(b).then(a)}function k(b){return a.getRoleUsers(b).then(function(a){z.role.users=a},function(a){return a.detail=a.title,a.title="De leden van deze rol konden niet geladen worden.",e.reject(a)})}function l(b){return a.getRoleLabels(b).then(function(a){z.role.labels=a},function(a){return a.detail=a.title,a.title="De labels van deze rol konden niet geladen worden.",e.reject(a)})}function m(a){A=a.roleId,z.role.uuid=A}function n(){!z.role.uuid&&z.role.name&&a.create(z.role.name).then(m,y)["finally"](function(){z.saving=!1})}function o(){return _.has(z.role.constraints,"v3")&&null!==z.role.constraints.v3}function p(){z.saving=!0,a.createRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function q(){z.saving=!0,a.updateRoleConstraint(A,z.role.constraints.v3).then(function(){z.editConstraint=!1},y)["finally"](function(){z.saving=!1})}function r(){z.saving=!0,a.removeRoleConstraint(A).then(function(){z.editConstraint=!1,_.has(z.role.constraints,"v3")&&delete z.role.constraints.v3},y)["finally"](function(){z.saving=!1})}function s(){z.saving=!0,a.updateRoleName(A,z.role.name).then(function(){z.editName=!1},y)["finally"](function(){z.saving=!1})}function t(b){z.loadedRolePermissions=!1;var c=e.reject();_.find(z.role.permissions,{key:b.key})?(z.role.permissions=_.reject(z.role.permissions,{key:b.key}),c=a.removePermissionFromRole(b.key,A)):(z.role.permissions.push(b),c=a.addPermissionToRole(b.key,A)),c["catch"](y)["finally"](function(){z.loadedRolePermissions=!0})}function u(b){z.saving=!0,a.addLabelToRole(A,b.uuid).then(function(){z.role.labels.push(b)},y)["finally"](function(){z.saving=!1})}function v(b){z.saving=!0,a.removeLabelFromRole(A,b.uuid).then(function(){var a=z.role.labels.indexOf(b);z.role.labels.splice(a,1)},y)["finally"](function(){z.saving=!1})}function w(b){var c=_.pick(z.role,["uuid","name","constraint"]);z.saving=!0,a.removeUserFromRole(c,b).then(function(){var a=z.role.users.indexOf(b);z.role.users.splice(a,1)},y)["finally"](function(){z.saving=!1})}function x(){z.addingUser=!0;var c=!1;b.findUserWithEmail(z.email).then(function(a){var b=!1;return c=a,angular.forEach(z.role.users,function(c){c.uuid===a.uuid&&(b=!0)}),b?e.reject({title:"De gebruiker hangt al aan deze rol."}):a}).then(function(b){var c=_.pick(z.role,["uuid","name","constraint"]);return a.addUserToRole(b,c)}).then(function(){z.role.users.push(c),z.form.email.$setViewValue(""),z.form.email.$setPristine(!0),z.form.email.$render()})["catch"](y)["finally"](function(){z.addingUser=!1})}function y(a){z.errorMessage=a.title+(a.detail?" "+a.detail:"");c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return z.errorMessage}}})}var z=this,A=d.id;z.saving=!1,z.loadedRole=!1,z.loadedRolePermissions=!1,z.loadedRoleUsers=!1,z.loadedRoleLabels=!1,z.addingUser=!1,z.role={permissions:[],users:[],labels:[]},z.availablePermissions=[],z.errorMessage=!1,z.editName=!1,z.editConstraint=!1,z.addUser=x,z.addLabel=u,z.createRole=n,z.removeLabel=v,z.removeUser=w,z.updatePermission=t,z.updateName=s,z.createConstraint=p,z.updateConstraint=q,z.removeConstraint=r,z.constraintExists=o,h()}angular.module("udb.management.roles").controller("RoleFormController",a),a.$inject=["RoleManager","UserManager","$uibModal","$stateParams","$q","$translate","RolePermission"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.findRoles(b,c,d)},b.get=function(b){return a.getRoleById(b)},b.getRolePermissions=function(b){return a.getRolePermissions(b)},b.getRoleUsers=function(b){return a.getRoleUsers(b)},b.create=function(b){return a.createRole(b)},b.addPermissionToRole=function(b,c){return a.addPermissionToRole(b,c)},b.removePermissionFromRole=function(b,c){return a.removePermissionFromRole(b,c)},b.addUserToRole=function(b,c){return a.addUserToRole(b.uuid,c.uuid)},b.updateRoleName=function(b,c){return a.updateRoleName(b,c)},b.createRoleConstraint=function(b,c){return a.createRoleConstraint(b,c)},b.updateRoleConstraint=function(b,c){return a.updateRoleConstraint(b,c)},b.removeRoleConstraint=function(b){return a.removeRoleConstraint(b)},b.addLabelToRole=function(b,c){return a.addLabelToRole(b,c)},b.getRoleLabels=function(b){return a.getRoleLabels(b)},b.removeLabelFromRole=function(b,c){return a.removeLabelFromRole(b,c)},b.removeUserFromRole=function(b,c){return a.removeUserFromRole(b.uuid,c.uuid)},b.deleteRole=function(b){return a.removeRole(b.uuid)}}angular.module("udb.management.roles").service("RoleManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(a){return""===m.query?!0:a.length>=o}function i(a){m.problem=a}function j(){m.problem=!1}function k(a){var b=a.error;b?(i(b),m.searchResult={}):(j(),m.searchResult=a),m.loading=!1}function l(a){var b=e.open({templateUrl:"templates/role-delete-confirm-modal.html",controller:"RoleDeleteConfirmModalCtrl",resolve:{item:function(){return a}}});b.result.then(function(){f.reload()})}var m=this,n=10,o=3,p=b.createObservableFunction(m,"queryChanged"),q=p.filter(h),r=b.createObservableFunction(m,"pageChanged"),s=new a(d,q,r,n),t=s.getSearchResult$();m.openDeleteConfirmModal=l,m.loading=!1,m.query="",m.page=0,m.minQueryLength=o,p.safeApply(c,function(a){m.query=a}).subscribe(),t.safeApply(c,k).subscribe(),q.merge(r).safeApply(c,function(){m.loading=!0}).subscribe(),r.subscribe(function(){g.scrollTop(0)})}angular.module("udb.management.roles").controller("RolesListController",a),a.$inject=["SearchResultGenerator","rx","$scope","RoleManager","$uibModal","$state","$document"]}(),function(){"use strict";function a(a){function b(b){a.find(b,6,0).then(function(a){d(a.member)})["finally"](function(){e.refreshing=!1})}function c(a){e.refreshing=!0,d([]),b(a)}function d(a){e.availableLabels=a}var e=this;e.availableLabels=[],e.suggestLabels=c,e.minimumInputLength=2,e.findDelay=300,e.label=null}angular.module("udb.management.roles").component("udbSearchLabel",{templateUrl:"templates/search-label.html",controller:a,controllerAs:"select",bindings:{labelAdded:"&",labelRemoved:"&"}}),a.$inject=["LabelManager"]}(),function(){"use strict";function a(a,b){return{restrict:"A",require:"ngModel",link:function(c,d,e,f){function g(c){if(f.$isEmpty(c))return b.when();var d=b.defer();return a.get(c).then(d.reject,d.resolve),d.promise}f.$asyncValidators.uniqueRole=g}}}angular.module("udb.management.roles").directive("udbUniqueRole",a),a.$inject=["RoleManager","$q"]}(),function(){"use strict";function a(a){function b(a,b){return{query:a,offset:b}}function c(a){return function(b){return(b-1)*a}}var d=function(d,e,f,g,h){h=h||"",this.searchService=d,this.itemsPerPage=g,this.query$=e.debounce(300).startWith(h),this.offset$=f.map(c(g)).startWith(0),this.searchParameters$=a.Observable.combineLatest(this.query$,this.offset$,b)};return d.prototype.constructor=d,d.prototype.find=function(b){var c=this;return a.Observable.fromPromise(c.searchService.find(b.query,c.itemsPerPage,b.offset))["catch"](function(b){return a.Observable.just({error:b})})},d.prototype.getSearchResult$=function(){var a=this;return a.searchParameters$.flatMap(a.find.bind(a))},d}angular.module("udb.management").factory("SearchResultGenerator",a),a.$inject=["rx"]}(),function(){"use strict";function a(a){var b=this;b.find=function(b,c,d){return a.resolve({"@context":"http://www.w3.org/ns/hydra/context.jsonld","@type":"PagedCollection",itemsPerPage:10,totalItems:0,member:[],firstPage:"http://du.de/items?page=1",lastPage:"http://du.de/items?page=1",nextPage:"http://du.de/items?page=1"})}}angular.module("udb.management").service("SearchService",a),a.$inject=["$q"]}(),function(){"use strict";function a(a,b,c,d){function e(b){a.findUserWithEmail(b).then(function(b){f(b),a.getRoles(b.uuid).then(g)})}function f(a){j.user=a}function g(a){j.roles=a}function h(a){return d.when(a.task.promise)}function i(a){return a.perform()["catch"](a.undo)}var j=this,k=c.email;e(k),j.deleteRole=function(a){var c={role:a,style:"list-group-item-danger",perform:_.once(function(){return b.removeUserFromRole(a,j.user).then(h)}),undo:function(){console.log("¯\\_(ツ)_/¯")}};j.queueAction(c)},j.queueAction=function(a){var b=j.actions?j.actions:[];j.getRoleAction(a.role)||(b.push(a),j.actions=b)},j.getRoleStyle=function(a){var b=j.getRoleAction(a);return b?b.style:null},j.getRoleAction=function(a){return _.find(j.actions,{role:{uuid:a.uuid}})},j.lookupRoles=function(a){return b.find(a,20).then(function(a){return _.reject(a.member,function(a){return _.find(j.roles,{uuid:a.uuid})})})},j.addRole=function(a){if(!_.find(j.roles,{ +uuid:a.uuid})){j.roles.push(a),j.roleLookupName="";var c={role:a,style:"list-group-item-success",perform:_.once(function(){return b.addUserToRole(j.user,a).then(h)}),undo:function(){j.roles=_.reject(j.roles,{uuid:a.uuid})}};j.queueAction(c)}},j.save=function(){j.saving=!0;var a=_.map(j.actions,i);d.all(a).then(function(){e(k),j.saving=!1,j.actions=[]})},j.undoAction=function(a){var b=j.getRoleAction(a);b.undo(),j.actions=_.reject(j.actions,{role:{uuid:a.uuid}})}}angular.module("udb.management.users").controller("UserEditorController",a),a.$inject=["UserManager","RoleManager","$stateParams","$q"]}(),function(){"use strict";function a(a){var b=this;b.findUserWithEmail=function(b){return a.findUserWithEmail(b)},b.getRoles=function(b){return a.getUserRoles(b)}}angular.module("udb.management.users").service("UserManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(a,b){function c(a){e.status="problem",e.problem=a}function d(){e.status="idle",e.problem=!1}var e=this;e.status="idle",e.query="",e.problem="",e.handleChange=function(){"problem"===e.status&&d()},e.handleSubmit=function(){e.status="loading",a.findUserWithEmail(e.query).then(function(a){e.status="idle",b.path("/manage/users/"+a.email)},function(a){404===a.status?e.status="notFound":c(a.title)})}}angular.module("udb.management.users").controller("UsersListController",a),a.$inject=["UserManager","$location"]}(),function(){"use strict";function a(a,b,c,d){var e=this;e.createImage=function(a,b,f,g){function h(a){return a.split("/").pop()}function i(a){return l.indexOf(a)>=0}function j(a){e.getImage(a.data.imageId).then(k.resolve,k.reject)}var k=c.defer(),l=["png","jpeg","jpg","gif"];return i(h(a.type))?d.uploadMedia(a,b,f,g).then(j,k.reject):k.reject({data:{title:"The uploaded file is not an image."}}),k.promise},e.getImage=function(a){function b(b){var d=b;return d.id=a,c.resolve(d)}return d.getMedia(a).then(b)}}angular.module("udb.media").service("MediaManager",a),a.$inject=["jobLogger","appConfig","$q","udbApi"]}(),function(){"use strict";function a(a,b,c,d){function e(){f()&&c.go(g.destination.state,{id:a.id})}function f(){return!!_.get(a,"location.id")}var g=this;g.completeMigration=e;var h={description:d.instant("eventForm.step4.continue"),state:"split.eventEdit"};g.destination=b.destination||h,g.migrationReady=f}angular.module("udb.migration").component("udbEventMigrationFooter",{templateUrl:"templates/event-migration-footer.component.html",controller:a,controllerAs:"migration"}),a.$inject=["EventFormData","$stateParams","$state","$translate"]}(),function(){"use strict";function a(){function a(a){return!!_.get(a,"location.id")}var b=this,c={location:a};b.checkRequirements=function(a){var b=_(c).pick(function(b){return!b(a)}).keys();return b.value()}}angular.module("udb.migration").service("eventMigration",a)}(),function(){"use strict";function a(a){function b(b){a.translateAddress(c.offer,b,c.translatedAddresses[b])}var c=this;c.translatedAddresses={},c.originalAddress=_.get(c.offer.address,c.offer.mainLanguage,"")||_.get(c.offer.address,"nl","")||_.get(c.offer,"address",""),c.translatedAddresses=_.get(c.offer,"address"),_.forEach(c.activeLanguages,function(a,b){void 0===c.translatedAddresses[b]&&(c.translatedAddresses[b]={postalCode:c.originalAddress.postalCode,addressLocality:c.originalAddress.addressLocality,addressCountry:c.originalAddress.addressCountry})}),c.saveTranslatedAddress=b}angular.module("udb.offer-translate").component("offerTranslateAddress",{templateUrl:"templates/translate-address.html",controller:a,controllerAs:"tac",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"description",b,c.translatedDescriptions[b]).then(function(){})}var c=this;c.translatedDescriptions={},c.originalDescription=_.get(c.offer.description,c.offer.mainLanguage,"")||_.get(c.offer.description,"nl","")||_.get(c.offer,"description",""),c.originalDescription=_.isEmpty(c.originalDescription)?"":c.originalDescription,c.translatedDescriptions=_.get(c.offer,"description"),c.saveTranslatedDescription=b}angular.module("udb.offer-translate").component("offerTranslateDescription",{templateUrl:"templates/translate-description.html",controller:a,controllerAs:"ttd",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d){function e(b){d.mainLanguage=b;a.open({templateUrl:"templates/event-form-image-upload.html",controller:"EventFormImageUploadController",resolve:{EventFormData:function(){return d}}})}function f(a,b){var d=null,e=new XMLHttpRequest;e.open("GET",a.contentUrl),e.responseType="blob",e.onload=function(){d=e.response,c.createImage(d,a.description,a.copyrightHolder,b).then(i,j)},e.send()}function g(b){a.open({templateUrl:"templates/event-form-image-edit.html",controller:"EventFormImageEditController",resolve:{EventFormData:function(){return d},mediaObject:function(){return b}}})}function h(b){a.open({templateUrl:"templates/event-form-image-remove.html",controller:"EventFormImageRemoveController",resolve:{EventFormData:function(){return d},image:function(){return b}}})}function i(a){function c(){d.addImage(a)}b.addImage(d,a).then(c,j)}function j(a){var b=a.data.title,c="Er ging iets mis bij het opslaan van de afbeelding.";switch(b){case"The uploaded file is not an image.":c="Het geüpload bestand is geen geldige afbeelding. Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.";break;case"The file size of the uploaded image is too big.":c="Het geüpload bestand is te groot."}k.saving=!1,k.error=c}var k=this;d.init(),k.eventFormData=d,k.offer.mediaObject&&(d.mediaObjects=k.offer.mediaObject||[]),d.name=k.offer.name,d.apiUrl=k.offer.apiUrl,d.mainLanguage=k.offer.mainLanguage,k.openUploadImageModal=e,k.removeImage=h,k.editImage=g,k.copyImage=f}angular.module("udb.offer-translate").component("offerTranslateImages",{templateUrl:"templates/translate-images.html",controller:a,controllerAs:"tic",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["$uibModal","eventCrud","MediaManager","EventFormData"]}(),function(){"use strict";function a(a){function b(){for(var b in e.offer.priceInfo)if(b>0){var c={};c[e.offer.mainLanguage]=e.originalTariffs[b-1],e.offer.priceInfo[b].name=_.merge(c,e.translatedTariffs[b-1])}a.updatePriceInfo(e.offer)}function c(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name[e.offer.mainLanguage]?e.offer.priceInfo[b].name[e.offer.mainLanguage]:e.offer.priceInfo[b].name);return a}function d(){var a=[];for(var b in e.offer.priceInfo)b>0&&a.push(e.offer.priceInfo[b].name);return a}var e=this;e.translatedTariffs=[],e.originalTariffs=c(),e.translatedTariffs=d(),e.saveTranslatedTariffs=b}angular.module("udb.offer-translate").component("offerTranslateTariffs",{templateUrl:"templates/translate-tariffs.html",controller:a,controllerAs:"ttsc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["eventCrud"]}(),function(){"use strict";function a(a){function b(b){a.translateProperty(c.offer,"name",b,c.translatedNames[b]).then(function(){})}var c=this;c.translatedNames={},c.originalName=_.get(c.offer.name,c.offer.mainLanguage,null)||_.get(c.offer.name,"nl",null)||_.get(c.offer,"name",""),c.translatedNames=_.get(c.offer,"name"),c.saveTranslatedName=b}angular.module("udb.offer-translate").component("offerTranslateTitle",{templateUrl:"templates/translate-title.html",controller:a,controllerAs:"ttc",bindings:{offer:"<",activeLanguages:"<"}}),a.$inject=["offerTranslator"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(b){a.language=f.use()||"nl",a.cachedOffer=b,a.apiUrl=b.apiUrl,a.mainLanguage=b.mainLanguage?b.mainLanguage:"nl",a.translatedOffer=d(b,a.language,!0),a.originalName=a.translatedOffer.name,a.offerType=b.url.split("/").shift(),"event"===a.offerType?(a.isEvent=!0,a.isPlace=!1):(a.isEvent=!1,a.isPlace=!0),_.forEach(a.cachedOffer.name,function(b,c){a.activeLanguages[c]&&(a.activeLanguages[c].active=!0)}),a.activeLanguages[a.mainLanguage].main=!0,a.loaded=!0}function i(){console.log("offer not found")}function j(a){a?c.getOffer(a).then(h):i()}function k(){var b=a.cachedOffer.id.toString(),c=b.split("/").pop();g.go("split.eventEdit",{id:c})}function l(){g.go("split.footer.dashboard")}a.apiUrl="",a.loaded=!1,a.mainLanguage="",a.languages=["nl","fr","en","de"],a.activeLanguages={nl:{active:!1,main:!1},fr:{active:!1,main:!1},en:{active:!1,main:!1},de:{active:!1,main:!1}},a.openEditPage=k,a.goToDashboard=l,e.when(b).then(j,i)}angular.module("udb.offer-translate").controller("OfferTranslateController",a),a.$inject=["$scope","offerId","udbApi","jsonLDLangFilter","$q","$translate","$state"]}(),function(){"use strict";function a(){return{templateUrl:"templates/offer-translate.html",restrict:"EA"}}angular.module("udb.offer-translate").directive("udbOfferTranslate",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){s.availableCountries=e.offerEditor.countries,s.defaultCountry=_.find(s.availableCountries,function(a){return a["default"]}),s.selectedCountry=s.defaultCountry,""!==s.address.addressCountry?s.selectedCountry={code:s.address.addressCountry,"default":!0}:s.selectedCountry=s.defaultCountry,s.address.addressCountry=s.selectedCountry.code,s.cities="BE"===s.selectedCountry.code?c:d,s.selectedCity="",s.requiredAddress=!1,s.address.addressLocality&&(s.hasAddress=!0,s.selectedCity=s.address.postalCode+" "+s.address.addressLocality,s.requiredAddress=!0)}function i(){s.streetHasErrors=!1,s.cityHasErrors=!1,s.zipValidateError=!1,s.zipHasErrors=!1,s.addressHasErrors=!1,s.addressRemovedError=!1,s.addressRemovedSuccess=!1}function j(){i(),s.requiredAddress?((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))):(""!==s.selectedCity&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),"NL"===s.selectedCountry.code&&(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),""!==s.address.streetAddress&&(""===s.selectedCity&&(s.cityHasErrors=!0),(""===s.address.postalCode||void 0===s.address.postalCode)&&(s.zipHasErrors=!0,s.zipValidateError=!k(s.address.postalCode))),"NL"===s.selectedCountry.code&&""!==s.address.postalCode&&((""===s.address.streetAddress||void 0===s.address.streetAddress)&&(s.streetHasErrors=!0),""===s.selectedCity&&(s.cityHasErrors=!0),s.zipValidateError=!k(s.address.postalCode))),r()}function k(a){var b=new RegExp(/^[0-9]{4}[a-z]{2}$/i);return b.test(a)}function l(a){return function(b){var c=(a.length,a.match(/\w+/g)),d=c.filter(function(a){return-1!==b.label.toLowerCase().indexOf(a.toLowerCase())});return d.length>=c.length}}function m(a){return function(c){return new b(a,c.label)}}function n(a,b){"BE"===s.selectedCountry.code&&(s.address.postalCode=a.zip),s.address.addressLocality=a.name,s.cityAutocompleteTextField="",s.selectedCity=b,j()}function o(){s.address.postalCode="",s.address.addressLocality="",s.selectedCity="",s.cityAutocompleteTextField="",j()}function p(){"NL"===s.selectedCountry.code?s.cities=d:s.cities=c,s.address.addressCountry=s.selectedCountry.code,o()}function q(){s.address.streetAddress="",o(),g.removeOrganizerAddress(t).then(function(a){s.hasAddress=!1,s.addressRemovedSuccess=!0})["catch"](function(a){s.addressRemovedError=!0})}function r(){s.addressHasErrors=s.streetHasErrors||s.cityHasErrors||s.zipHasErrors||s.zipValidateError,s.onUpdate({error:s.addressHasErrors})}var s=this,t=f.id;s.streetHasErrors=!1,s.cityHasErrors=!1,s.addressHasErrors=!1,s.zipHasErrors=!1,s.zipValidateError=!1,s.validateAddress=j,s.filterCities=l,s.orderByLevenshteinDistance=m,s.selectCity=n,s.changeCitySelection=o,s.changeCountrySelection=p,s.clearAddressInfo=q,s.$onInit=h,a.$on("organizerAddressSubmit",function(){s.organizerAddressForm.$setSubmitted(),i(),j()})}angular.module("udb.organizers").component("udbOrganizerAddress",{templateUrl:"templates/organizer-address.html",controller:a,controllerAs:"oac",bindings:{address:"=",onUpdate:"&"}}),a.$inject=["$scope","Levenshtein","citiesBE","citiesNL","appConfig","$stateParams","OrganizerManager"]}(),function(){"use strict";function a(a,b){function c(){_.find(j.contact,{value:""})||_.find(j.contact,{value:void 0})||j.organizerContactWrapper.$invalid&&j.organizerContactWrapper.$dirty?j.contactHasErrors=!0:j.contactHasErrors=!1,i()}function d(){j.newContact={type:"",value:""}}function e(a){j.newContact={type:a,value:""},j.isPristine=!0,j.addingContactEntry=!0}function f(){d(),j.addingContactEntry=!1,j.isPristine=!0}function g(){c(),j.contactHasErrors||(j.contact.push(j.newContact),d(),j.addingContactEntry=!1,j.isPristine=!0,i())}function h(a){j.contact.splice(a,1),c()}function i(){j.onUpdate({error:j.contactHasErrors})}var j=this;j.newContact={},j.addingContactEntry=!1,j.isPristine=!0,j.validateContact=c,j.addOrganizerContactEntry=e,j.cancelOrganizerContactEntry=f,j.addOrganizerContactInfo=g,j.deleteOrganizerContactInfo=h,j.sendUpdate=i,j.contactUrlRegex=(new b).regex.url,a.$on("organizerContactSubmit",function(){j.organizerContactWrapper.$setSubmitted()}),a.$watch(function(){return j.newContact},function(a){a&&a.value&&""!==a.value&&(j.isPristine=!1)},!0)}angular.module("udb.organizers").component("udbOrganizerContact",{templateUrl:"templates/organizer-contact.html",controller:a,controllerAs:"occ",bindings:{contact:"=",onUpdate:"&"}}),a.$inject=["$scope","UdbOrganizer"]}(),function(){"use strict";function a(a,b,c,d,e,f){function g(b){a.get(b).then(h),f.getOrganizerPermissions(b).then(function(a){u.permissions=a.permissions})}function h(a){u.organizer=a}function i(b){u.labelSaving=!0,l(),a.addLabelToOrganizer(v,b.name)["catch"](r)["finally"](function(){u.labelSaving=!1,k()})}function j(b){u.labelSaving=!0,l(),k(),a.deleteLabelFromOrganizer(v,b.name)["catch"](q)["finally"](function(){u.labelSaving=!1})}function k(){a.removeOrganizerFromCache(v)}function l(){u.labelResponse="",u.labelsError=""}function m(){return-1!==w.indexOf("manage")}function n(){d.path("/manage/organizations")}function o(){p(u.organizer)}function p(a){var c=b.open({templateUrl:"templates/organization-delete.modal.html",controller:"OrganizationDeleteModalController",controllerAs:"odc",resolve:{organization:function(){return a}}});c.result.then(n)}function q(a){g(v),u.labelResponse="unlabelError",u.labelsError=a.title}function r(a){u.errorMessage=a.title+(a.detail?" "+a.detail:"");b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"sm",resolve:{errorMessage:function(){return u.errorMessage}}})}function s(){return u.organizer&&!u.loadingError}function t(){return-1!==u.permissions.indexOf("Organisaties bewerken")}var u=this,v=c.id,w=e.current.name;u.labelSaving=!1,u.addLabel=i,u.deleteLabel=j,u.labelResponse="",u.labelsError="",u.deleteOrganization=o,u.isManageState=m,u.finishedLoading=s,u.canEdit=t,u.permissions=[],g(v)}angular.module("udb.organizers").controller("OrganizerDetailController",a),a.$inject=["OrganizerManager","$uibModal","$stateParams","$location","$state","udbApi"]}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i){function j(){x.organizer={mainLanguage:A,website:"http://",name:"",address:{streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""},contact:[]},x.showAddressComponent=!0}function k(b){a.removeOrganizerFromCache(b),a.get(b).then(l,function(){x.loadingError=!0})["finally"](function(){x.showAddressComponent=!0})}function l(a){_.isEmpty(a.address)&&(a.address={streetAddress:"",addressLocality:"",postalCode:"",addressCountry:""}),x.organizer=a,B=_.cloneDeep(a),x.originalName=B.name,null!==x.organizer.contactPoint&&(_.forEach(x.organizer.contactPoint,function(a,b){_.forEach(a,function(a){x.contact.push({type:b,value:a})})}),C=_.cloneDeep(x.contact))}function m(){return x.showWebsiteValidation=!0,x.organizerForm.website.$valid?void b.findOrganizersWebsite(x.organizer.website).then(function(a){x.urlError=!1,a.totalItems>0?a.member[0].name===x.originalName?(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1):(x.organizersWebsiteFound=!0,x.showWebsiteValidation=!1):(x.showWebsiteValidation=!1,x.organizersWebsiteFound=!1)},function(){x.websiteError=!0,x.showWebsiteValidation=!1})["finally"](function(){r()}):(x.showWebsiteValidation=!1,void(x.urlError=!0))}function n(){x.organizerForm.name.$valid?x.nameError=!1:x.nameError=!0,r()}function o(a){x.addressError=a,r()}function p(a){x.contactError=a,r()}function q(){return x.showValidation=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError?(x.hasErrors=!0,x.disableSubmit=!0,f.$broadcast("organizerAddressSubmit"),void f.$broadcast("organizerContactSubmit")):void(x.isNew?t():s())}function r(){D=!_.isEqual(x.organizer.website,B.website),E=!_.isEqual(x.organizer.name,B.name),F=!_.isEqual(x.organizer.address,B.address)&&!_.isEmpty(x.organizer.address.streetAddress),G=!_.isEqual(x.contact,C),D||E||F||G?x.disableSubmit=!1:x.disableSubmit=!0,!x.organizerForm.$valid||x.organizersWebsiteFound||x.websiteError||x.urlError||x.nameError||x.addressError||x.contactError||(x.hasErrors=!1)}function s(){var b=[];D&&b.push(a.updateOrganizerWebsite(y,x.organizer.website)),E&&b.push(a.updateOrganizerName(y,x.organizer.name,A)),F&&b.push(a.updateOrganizerAddress(y,x.organizer.address,A)),G&&b.push(a.updateOrganizerContact(y,x.contact)),b.push(a.removeOrganizerFromCache(y)),e.all(b).then(function(){v()})["catch"](function(){x.hasErrors=!0,x.saveError=!0})}function t(){var b=_.clone(x.organizer);b.address.streetAddress||b.address.addressLocality||b.address.postalCode||delete b.address,h.createOrganizer(b).then(function(b){var c=_.get(i,"offerEditor.defaultOrganizerLabel");"undefined"!=typeof c&&""!==c&&a.addLabelToOrganizer(b.data.organizerId,c),x.organizer.id=b.data.organizerId,v()},function(){x.hasErrors=!0,x.saveError=!0})}function u(){w()?c.go("management.organizers.search",{},{reload:!0}):c.go("split.footer.dashboard",{},{reload:!0})}function v(){a.removeOrganizerFromCache(x.organizer.id),c.go("split.organizerDetail",{id:x.organizer.id},{reload:!0})}function w(){return-1!==z.indexOf("manage")}var x=this,y=d.id,z=c.current.name,A=g.use()||"nl";x.language=A,x.showAddressComponent=!1,x.isNew=!0,x.loadingError=!1,x.contact=[],x.showWebsiteValidation=!1,x.urlError=!1,x.websiteError=!1,x.nameError=!1,x.addressError=!1,x.contactError=!1,x.hasErrors=!1,x.disableSubmit=!0,x.saveError=!1,x.validateWebsite=m,x.validateName=n,x.validateAddress=o,x.validateContact=p,x.checkChanges=r,x.validateOrganizer=q,x.cancel=u,x.isManageState=w;var B={},C=[],D=!1,E=!1,F=!1,G=!1;y?(x.isNew=!1,k(y)):j()}a.$inject=["OrganizerManager","udbOrganizers","$state","$stateParams","$q","$scope","$translate","eventCrud","appConfig"],angular.module("udb.organizers").controller("OrganizerFormController",a)}(),function(){"use strict";function a(a){var b=this;b["delete"]=function(b){return a.deleteOrganization(b)},b.find=function(b,c,d){return a.findOrganisations(d,c,null,b)},b.get=function(b){return a.getOrganizerById(b)},b.addLabelToOrganizer=function(b,c){return a.addLabelToOrganizer(b,c)},b.deleteLabelFromOrganizer=function(b,c){return a.deleteLabelFromOrganizer(b,c)},b.removeOrganizerFromCache=function(b){return a.removeItemFromCache(b)},b.updateOrganizerWebsite=function(b,c){return a.updateOrganizerWebsite(b,c)},b.updateOrganizerName=function(b,c,d){return a.updateOrganizerName(b,c,d)},b.updateOrganizerAddress=function(b,c,d){return a.updateOrganizerAddress(b,c,d)},b.removeOrganizerAddress=function(b){return a.removeOrganizerAddress(b)},b.updateOrganizerContact=function(b,c,d){return a.updateOrganizerContact(b,c,d)}}angular.module("udb.organizers").service("OrganizerManager",a),a.$inject=["udbApi"]}(),function(){"use strict";function a(){return{templateUrl:"templates/place-detail.html",restrict:"EA",controller:PlaceDetail}}angular.module("udb.place-detail").directive("udbPlaceDetail",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(b){var c=b[0],d=b[1];n.getPermissions().then(function(b){a.isGodUser=_.filter(b,function(a){return a===m.GEBRUIKERS_BEHEREN}).length>0,a.isGodUser?a.permissions={editing:!0,duplication:!0}:c?a.permissions={editing:!d.isExpired(),duplication:!0}:a.permissions={editing:!1,duplication:!1},p()})}function p(){a.isGodUser?a.tabs=[{id:"data"},{id:"history"},{id:"publication"}]:a.tabs=[{id:"data"},{id:"publication"}]}function q(b){B=b,a.place=e(b,A,!0),a.placeIdIsInvalid=!1,"object"==typeof a.place.description&&(a.place.description=a.place.description[A],void 0===a.place.description&&(a.place.description="")),a.finishedLoading=!0,b.typicalAgeRange.indexOf("-")===b.typicalAgeRange.length-1?a.ageRange=b.typicalAgeRange.slice(0,-1)+"+":a.ageRange=b.typicalAgeRange}function r(b){a.placeIdIsInvalid=!0}function s(a){function b(a,b){var c=g.open({templateUrl:"templates/place-delete-confirm-modal.html",controller:"PlaceDeleteConfirmModalCtrl",resolve:{place:function(){return a},events:function(){return b}}});c.result.then(z.goToDashboard)}f.findEventsAtPlace(a.apiUrl).then(function(c){b(a,c)})}function t(b){a.placeHistory=b}function u(b){var c=_.find(B.labels,function(a){return b.name.toUpperCase()===a.toUpperCase()});c?i.alert('Het label "'+b.name+'" is reeds toegevoegd als "'+c+'".'):j.label(B,b.name).then(function(b){b.success?(a.labelResponse="success",a.addedLabel=b.name):(a.labelResponse="error",a.labelsError=b),a.place.labels=angular.copy(B.labels)})}function v(){a.labelResponse="",a.labelsError=""}function w(b){a.place.labels=angular.copy(B.labels),a.labelResponse="unlabelError",a.labelsError=b.title}function x(a){v(),j.unlabel(B,a.name)["catch"](w)}var y="data",z=this,A=l.use()||"nl";a.isOmdApp=!!_.get(k,"omdSpecific",!1),h.when(b,function(b){a.placeId=b;var d=c.getOffer(b),e=c.hasPermission(b);d.then(q,r),h.all([e,d]).then(o)}),a.placeIdIsInvalid=!1,a.labelAdded=u,a.labelRemoved=x,a.labelResponse="",a.labelsError="",a.finishedLoading=!1,a.placeHistory=void 0,a.deletePlace=function(){s(a.place)},a.language=A;var B;a.placeLocation=function(a){return a.address.addressLocality?a.address.addressLocality:""},a.isTabActive=function(a){return a===y},a.makeTabActive=function(b){if(y=b,"history"===b&&!a.placeHistory){var d=a.placeId.split("/").pop();c.getHistory(d,"place").then(t)}},a.openEditPage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeEdit",{id:c})},a.openTranslatePage=function(){var b=a.placeId.toString(),c=b.split("/").pop();d.go("split.placeTranslate",{id:c})},z.goToDashboard=function(){d.go("split.footer.dashboard")},a.translateType=function(a){var b=l.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}}angular.module("udb.place-detail").controller("PlaceDetailController",a),a.$inject=["$scope","placeId","udbApi","$state","jsonLDLangFilter","eventCrud","$uibModal","$q","$window","offerLabeller","appConfig","$translate","RolePermission","authorizationService"]}(),function(){"use strict";function a(a,b){function c(a,b){g[a]=b}function d(a){_.each(a.member,function(a){var b=a["@id"],d=b.split("/").pop();c(d,b)})}function e(b){var c=g[b];return c?a.resolve(c):f(b)}function f(d){function e(a){if(1===a.totalItems){var b=a.member[0]["@id"];c(d,b),f.resolve(b)}else f.reject("Unable to determine the exact offer for this uuid.")}var f=a.defer(),g='id:"'+d+'"',h=0,i=!0;return b.findOffers(g,h,i).then(e)["catch"](f.reject),f.promise}var g={};this.get=e,this.add=c,this.addPagedCollection=d}angular.module("udb.router").service("offerLocator",a),a.$inject=["$q","udbApi"]}(),function(){"use strict";function a(a,b){var c=function(){b.close()},d=function(){b.dismiss("cancel")};a.cancel=d,a.confirm=c}angular.module("udb.saved-searches").controller("DeleteSearchModalController",a),a.$inject=["$scope","$uibModalInstance"]}(),function(){"use strict";function a(a,b,c,d,e){var f=function(b){var c=a.queryName,e=a.queryId;a.wasSubmitted=!0,"existing"===b&&d.close({id:e,name:c,type:b}),"new"===b&&c&&d.close({name:c,type:b})},g=function(){d.dismiss("cancel")},h=function(b){return b===a.activeTabId},i=function(b){a.activeTabId=b},j=function(){return b.getSavedSearches().then(function(a){var b=a.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=e.instant(b);return c!==b&&(a.name=c),a});return c.resolve(b)})};j().then(function(b){a.savedSearches=b});var k=function(){var b=a.savedSearches.find(function(b){return b.id===a.queryId});b&&(a.queryName=b.name)};a.savedSearches=[],a.cancel=g,a.ok=f,a.isTabActive=h,a.makeTabActive=i,a.setQueryName=k,a.queryName="",a.queryId="",a.activeTabId="new",a.wasSubmitted=!1}angular.module("udb.saved-searches").controller("SaveSearchModalController",a),a.$inject=["$scope","udbApi","$q","$uibModalInstance","$translate"]}(),function(){"use strict";function a(a,b){function c(c,e,f,g){c.saveSearch=function(){var e=b.open({templateUrl:"templates/save-search-modal.html",controller:"SaveSearchModalController"});e.result.then(function(b){"new"===b.type&&a.createSavedSearch(b.name,c.queryString)["catch"](d),"existing"===b.type&&a.editSavedSearch(b.id,b.name,c.queryString)["catch"](d)})}}function d(){b.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het opslaan van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})}var e={link:c,templateUrl:"templates/save-search.directive.html",restrict:"AE",scope:{queryString:"=udbQueryString"}};return e}angular.module("udb.saved-searches").directive("udbSaveSearch",a),a.$inject=["savedSearchesService","$uibModal"]}(),function(){"use strict";function a(a,b,c,d,e,f,g){function h(){e.$emit("savedSearchesChanged",i)}var i=[],j=this;j.createSavedSearch=function(b,c){return f.createSavedSearch(b,c).then(function(){return i.push({name:b,query:c}),h(),a.resolve()})},j.getSavedSearches=function(){return f.getSavedSearches().then(function(b){var c=b.map(function(a){var b="search.savedSearches.items."+a.name.toString(),c=g.instant(b);return c!==b&&(a.name=c),a});return i=c,a.resolve(c)})},j.deleteSavedSearch=function(b){return f.deleteSavedSearch(b).then(function(){return _.remove(i,{id:b}),h(),a.resolve()})},j.editSavedSearch=function(b,c,d){return f.editSavedSearch(b,c,d).then(function(){var c=_.find(i,{id:b});return c.query=d,h(),a.resolve()})}}angular.module("udb.saved-searches").service("savedSearchesService",a),a.$inject=["$q","$http","$cookies","appConfig","$rootScope","udbApi","$translate"]}(),function(){"use strict";function a(a,b,c,d){a.savedSearches=[],a.editorOptions={mode:"solr",lineWrapping:!0,readOnly:!0},a.codemirrorLoaded=function(a){a.on("focus",function(){a.execCommand("selectAll")}),a.on("blur",function(){a.setCursor(0,0,!0)})};var e=b.getSavedSearches();e.then(function(b){a.savedSearches=b}),d.$on("savedSearchesChanged",function(b,c){a.savedSearches=c}),this.encodeURI=function(a){return encodeURIComponent(a)},a.encodeURI=this.encodeURI,this.deleteSavedSearch=function(a){var d=c.open({templateUrl:"templates/delete-search-modal.html",controller:"DeleteSearchModalController"});d.result.then(function(){var d=b.deleteSavedSearch(a);d["catch"](function(){c.open({templateUrl:"templates/unexpected-error-modal.html",controller:"UnexpectedErrorModalController",size:"lg",resolve:{errorMessage:function(){return"Het verwijderen van de zoekopdracht is mislukt. Controleer de verbinding en probeer opnieuw."}}})})})},a.deleteSavedSearch=this.deleteSavedSearch}angular.module("udb.saved-searches").controller("SavedSearchesListController",a),a.$inject=["$scope","savedSearchesService","$uibModal","$rootScope"]}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event-link.directive.html"};return a}angular.module("udb.event-form").directive("udbEventLink",a)}(),function(){"use strict";function a(a,b){function c(a){m.labels=f(_.get(a,"labels.currentValue",m.labels))}function d(a){m.currentLabel="",m.labelAdded({label:a}),m.labels.push(a)}function e(a){m.currentLabel="",m.labelRemoved({label:a}),m.labels=_.without(m.labels,a)}function f(a){return _.map(m.labels,function(a){return _.isString(a)?{name:a}:a})}function g(a){return a>=m.minimumInputLength&&a<=m.maxInputLength}function h(a){return m.regex.test(a)}function i(a){if(h(a)){var b=_.find(m.labels,function(b){return b.name.toUpperCase()===a.toUpperCase()});if(!b&&m.areLengthCriteriaMet(a.length)&&m.areContentCriteriaMet(a))return{name:a}}}function j(b){return a.getSuggestions(b,6).then(function(a){return a.push({name:b}),l(a)})}function k(a){return h(a)?(l([]),j(a)):void l([])}function l(a){return m.availableLabels=_.chain(a).filter(function(a){return h(a.name)}).reject(function(a){return _.find(m.labels,{name:a.name})}).uniq(function(a){return a.name.toUpperCase()}).value(),m.availableLabels}var m=this;m.availableLabels=[],m.suggestLabels=k,m.createLabel=i,m.areLengthCriteriaMet=g,m.areContentCriteriaMet=h,m.labels=f(m.labels),m.hiddenLabels=["new-entry-form","ook voor jongeren","ook voor kinderen"],m.minimumInputLength=2,m.maxInputLength=50,m.currentLabel="",m.onSelect=d,m.onRemove=e,m.$onChanges=c,m.regex=/^([a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ]{1}[a-zA-Z0-9ŠŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ_-\s]+)$/}angular.module("udb.search").component("udbLabelSelect",{templateUrl:"templates/label-select.html",controller:a,controllerAs:"select",bindings:{labels:"<",labelAdded:"&",labelRemoved:"&"}}),a.$inject=["offerLabeller","$q"]}(),function(){"use strict";function a(a,b){var c=this;c.changeFacilities=function(){b.open({templateUrl:"templates/search-facilities-modal.html",controller:"SearchFacilitiesModalController",resolve:{offer:function(){return c.offer},facilities:function(){return"place"===c.offerType?_.pick(a,"place"):_.omit(a,"place")}}})}}angular.module("udb.search").component("udbOfferAccessibilityInfo",{templateUrl:"templates/offer-accessibility-info.component.html",controller:a,bindings:{offerType:"<",offer:"="}}),a.$inject=["facilities","$uibModal"]}(),function(){"use strict";function a(a,b){return{templateUrl:"templates/query-editor-daterangepicker.directive.html",restrict:"E",link:function(c,d,e){var f={startOpened:!1,endOpened:!1,dateFormat:"dd/MM/yyyy"};a(["datepicker.CURRENT","datepicker.CLEAR","datepicker.CLOSE"]).then(function(a){b.currentText=a["datepicker.CURRENT"],b.clearText=a["datepicker.CLEAR"],b.closeText=a["datepicker.CLOSE"]}),f.openStart=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!0,f.endOpened=!1},f.openEnd=function(a){a.preventDefault(),a.stopPropagation(),f.startOpened=!1,f.endOpened=!0},c.drp=f}}}function b(){return{restrict:"EAC",require:"ngModel",link:function(a,b,c,d){d.$formatters.shift()}}}angular.module("udb.search").directive("udbQueryEditorDaterangepicker",a),a.$inject=["$translate","uibDatepickerPopupConfig"],angular.module("udb.search").directive("datepickerPopup",b)}(),function(){"use strict";function a(a){function b(){var b;return b=d()?a.$parent.field:a.rootGroup}function c(){var b;return b=d()&&0===a.$index?"AND":a.$index?"OR":"FIRST"}function d(){var b=a.$parent;return"group"===b.field.type}function e(){var b=a.rootGroup;return b.nodes.length>1}a.addField=function(c){a.qe.addField(b(),c)},a.removeField=function(c){a.qe.removeField(b(),c,a.rootGroup)},a.addSubGroup=function(c){var e=a.rootGroup,f=_.uniqueId(),g=b();g.treeGroupId=f,d()&&(c=_.findIndex(e.nodes,function(a){return a.treeGroupId===f})),a.qe.addSubGroup(e,c)},a.isSubGroup=d,a.getOperatorClass=c, +a.canRemoveField=e}angular.module("udb.search").controller("QueryEditorFieldController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor-field.directive.html",restrict:"E",controller:"QueryEditorFieldController"}}angular.module("udb.search").directive("udbQueryEditorField",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j){var k=this;k.fieldOptions=_.filter(a,"editable");var l=_.chain(k.fieldOptions).map(function(a){return a.group}).uniq().value();_.forEach(k.fieldOptions,function(a){var b="queryFieldLabel."+a.name,c="queryFieldGroup."+a.group;g([b,c]).then(function(d){a.label=d[b],a.groupIndex=_.indexOf(l,a.group),a.groupLabel=d[c]})}),k.getDefaultQueryTree=function(){return{type:"root",nodes:[{type:"group",operator:"OR",nodes:[{name:"title",field:"name.\\*",term:"",fieldType:"tokenized-string",transformer:"+"}]}]}},k.groupedQueryTree=f.getQueryTree()||k.getDefaultQueryTree(),k.transformers={},k.termOptions=_.groupBy(c,function(a){return"category_"+a.domain+"_name"}),k.termOptions.locationtype=j,k.termOptions.nisRegions=d,k.termOptions.category_eventtype_name=i,_.forEach(a,function(a){"choice"===a.type&&(k.termOptions[a.name]=a.options),k.transformers[a.name]=e[a.type]}),k.updateQueryString=function(){f.setQueryTree(k.groupedQueryTree),h.$emit("searchSubmitted"),k.stopEditing()},k.stopEditing=function(){h.$emit("stopEditingQuery")},k.addField=function(a,b){var c=b+1,d={field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"};a.nodes.splice(c,0,d),a.nodes.length&&(a.type="group")},k.removeField=function(a,b,c){c.nodes.length>1&&a.nodes.splice(b,1),k.cleanUpGroups()},k.cleanUpGroups=function(){k.removeEmptyGroups(),k.unwrapSubGroups()},k.unwrapSubGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){var b=a.nodes[0];if(b.nodes){var c=b.nodes;a.nodes.splice(0,1),_.forEach(c,function(b,c){a.nodes.splice(c,0,b)})}})},k.removeEmptyGroups=function(){var a=k.groupedQueryTree;_.forEach(a.nodes,function(a){_.remove(a.nodes,function(a){return a.nodes&&0===a.nodes.length})})},k.toggleExcludeGroup=function(a){a.excluded=!a.excluded},k.canRemoveGroup=function(){return!k.hasSingleGroup()},k.removeGroup=function(a){if(k.canRemoveGroup()){var b=k.groupedQueryTree,c=b.nodes[a];k.canRemoveGroup()&&c&&b.nodes.splice(a,1)}},k.resetGroups=function(){k.groupedQueryTree=k.getDefaultQueryTree()},k.addGroup=function(){var a=k.groupedQueryTree,b={type:"group",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.push(b)},k.addSubGroup=function(a,b){var c={type:"group",operator:"AND",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};a.nodes.splice(b+1,0,c)},k.fieldTypeSelected=function(b){var c=b.name,d=_.find(a,function(a){return a.name===c});d&&(b.field=d.field),b.fieldType!==d.type&&("date-range"===d.type?(b.lowerBound=moment().startOf("day").toDate(),b.upperBound=moment().endOf("day").toDate(),b.inclusive=!0):(b.term="",b.lowerBound=void 0,b.upperBound=void 0,b.inclusive=void 0),"check"===d.type&&(b.term=d.name),"number"===d.type&&(b.inclusive=!0),b.transformer&&_.contains(e[d.type],b.transformer)||(b.transformer=_.first(e[d.type])),b.fieldType=d.type)},k.hasSingleGroup=function(){return 1===k.groupedQueryTree.nodes.length}}angular.module("udb.search").controller("QueryEditorController",a),a.$inject=["queryFields","LuceneQueryBuilder","taxonomyTerms","sapi3CitiesBE","fieldTypeTransformers","searchHelper","$translate","$rootScope","eventTypes","placeTypes"]}(),function(){"use strict";function a(){return{templateUrl:"templates/query-editor.directive.html",restrict:"EA",controllerAs:"qe",controller:"QueryEditorController"}}angular.module("udb.search").directive("udbQueryEditor",a)}(),function(){"use strict";function a(a,b,c,d,e){return{templateUrl:"templates/search-bar.directive.html",restrict:"E",link:function(f,g,h){function i(a){return a.map(function(a){if(0===a.indexOf("Expected "))return d.instant("search.advancedQueryBuilder.syntaxError");var b=" is not a valid search field";if(-1!==a.indexOf(b)){var c=a.split(b)[0];return d.instant("search.advancedQueryBuilder.invalidField",{field:c})}return a})}function j(a){l.savedSearches=_.take(a,5)}var k,l={queryString:"",hasErrors:!1,errors:[],isEditing:!1,savedSearches:[]};l.editQuery=function(){b.$emit("startEditingQuery"),l.isEditing=!0,k=c.open({templateUrl:"templates/query-editor-modal.html",controller:"QueryEditorController",controllerAs:"qe",size:"lg"})},l.find=function(c){var d="undefined"!=typeof c?c:l.queryString;l.queryString=d,a.setQueryString(d),b.$emit("searchSubmitted")},l.queryChanged=function(){a.clearQueryTree()},f.sb=l,l.updateQuery=function(a,b){l.queryString=b.queryString,b.errors&&b.errors.length?(f.sb.hasErrors=!0,f.sb.errors=i(b.errors)):(f.sb.hasErrors=!1,f.sb.errors=[])},e.getSavedSearches().then(j);var m=b.$on("savedSearchesChanged",function(a,b){j(b)}),n=b.$on("stopEditingQuery",function(){f.sb.isEditing=!1,k&&k.dismiss()}),o=b.$on("searchQueryChanged",l.updateQuery);f.$on("$destroy",m),f.$on("$destroy",n),f.$on("$destroy",o)}}}angular.module("udb.search").directive("udbSearchBar",a),a.$inject=["searchHelper","$rootScope","$uibModal","$translate","savedSearchesService"]}(),function(){"use strict";angular.module("udb.search").value("eventTypes",[{label:"Begeleide uitstap of rondleiding",id:"0.7.0.0.0"},{label:"Beurs",id:"0.6.0.0.0"},{label:"Concert",id:"0.50.4.0.0"},{label:"Lessenreeks",id:"0.3.1.0.0"},{label:"Cursus met open sessies",id:"0.3.1.0.1"},{label:"Dansvoorstelling",id:"0.54.0.0.0"},{label:"Eet- of drankfestijn",id:"1.50.0.0.0"},{label:"Festival",id:"0.5.0.0.0"},{label:"Film",id:"0.50.6.0.0"},{label:"Kamp of vakantie",id:"0.57.0.0.0"},{label:"Festiviteit",id:"0.28.0.0.0"},{label:"Lezing of congres",id:"0.3.2.0.0"},{label:"Markt, braderie of kermis",id:"0.37.0.0.0"},{label:"Opendeurdag",id:"0.12.0.0.0"},{label:"Party of fuif",id:"0.49.0.0.0"},{label:"Fiets- of wandelroute",id:"0.17.0.0.0"},{label:"Spel of quiz",id:"0.50.21.0.0"},{label:"Sportactiviteit",id:"0.59.0.0.0"},{label:"Sportwedstrijd bekijken",id:"0.19.0.0.0"},{label:"Tentoonstelling",id:"0.0.0.0.0"},{label:"Theatervoorstelling",id:"0.55.0.0.0"}])}(),function(){"use strict";function a(){return function(a,b){var c={EUR:{symbol:"",thousand:".",decimal:",",format:"%s%v",precision:2}},d=c[b];return d||(d=c.EUR),accounting.formatMoney(a,d)}}angular.module("udb.search").filter("currency",a)}(),function(){"use strict";function a(){return function(a,b){var c=_.filter(a,function(a){return"undefined"!=typeof a?"schema:ImageObject"===a["@type"]&&(a.inLanguage===b||angular.isUndefined(a.inLanguage)):void 0});return c}}angular.module("udb.search").filter("imagesByLanguage",a)}(),function(){"use strict";function a(){return function(a,b,d){var e=_.cloneDeep(a);return e=c(e,b,d)}}function b(a){return 2===a.length}function c(a,d,e){return a=_.each(a,function(f,g){if(_.isObject(f)){var h=Object.keys(f);if(h.length>0&&h.every(b)){if(f[d])a[g]=f[d];else if(e){var i=h[0],j=f[i];a[g]=j}}else f=c(f,d,e)}})}angular.module("udb.search").filter("jsonLDLang",a)}(),function(){"use strict";angular.module("udb.search").value("placeTypes",[{label:"Archeologische site",id:"3CuHvenJ+EGkcvhXLg9Ykg"},{label:"Bibliotheek of documentatiecentrum",id:"kI7uAyn2uUu9VV6Z3uWZTA"},{label:"Bioscoop",id:"BtVNd33sR0WntjALVbyp3w"},{label:"Cultuur- of ontmoetingscentrum",id:"Yf4aZBfsUEu2NsQqsprngw"},{label:"Discotheek",id:"YVBc8KVdrU6XfTNvhMYUpg"},{label:"Horeca",id:"ekdc4ATGoUitCa0e6me6xA"},{label:"Jeugdhuis of jeugdcentrum",id:"JCjA0i5COUmdjMwcyjNAFA"},{label:"Monument",id:"0.14.0.0.0"},{label:"Museum of galerij",id:"GnPFp9uvOUyqhOckIFMKmg"},{label:"Natuur, park of tuin",id:"0.15.0.0.0"},{label:"Openbare ruimte",id:"0.8.0.0.0"},{label:"Recreatiedomein of centrum",id:"0.53.0.0.0"},{label:"School of onderwijscentrum",id:"rJRFUqmd6EiqTD4c7HS90w"},{label:"Sportcentrum",id:"eBwaUAAhw0ur0Z02i5ttnw"},{label:"Thema of pretpark",id:"0.41.0.0.0"},{label:"Winkel",id:"VRC6HX0Wa063sq98G5ciqw"},{label:"Speeltuin",id:"wwjRVmExI0w6xfQwT1KWpx"},{label:"Zaal of expohal",id:"OyaPaf64AEmEAYXHeLMAtA"}])}(),function(){"use strict";angular.module("udb.search").value("fieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],termNis:["=","!"],number:["=","><","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a),c=b.field===j,d="";switch(b.transformer){case"!":d="!";break;case"-":d="-";break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b.field=d+(c?"":b.field+":"),b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=moment(d).format()),e instanceof Date&&(e=moment(e).format()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";if(a.right)d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d);else{var f=a.field&&a.left.field===j&&a.left.prefix;d=f?a.field+":("+k(a.left)+")":l(a.left,b+1,c)}return d}var g="",h=k(a);if(a.field!==j&&null!==a.field){var i="";_.contains(["!","+","-"],a.transformer)&&(i=a.transformer),g+=i+a.field+":"}return g+=h,c+=g};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"name.\\*",name:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type){var h=b.name,i="(!"+b.name+")";a.term!==h&&a.term!==i&&(a.invalid=!0)}if("tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var j=moment(a.lowerBound),k=moment(a.upperBound);j.isValid()&&k.isValid()?j.isSame(k,"day")?a.transformer="=":a.transformer="><":(!j.isValid()&&k.isValid()&&(a.transformer="<"),!k.isValid()&&j.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("LuceneQueryBuilder",a),a.$inject=["LuceneQueryParser","QueryTreeValidator","QueryTreeTranslator","queryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").constant("queryFieldTranslations",{sapi2:{TYPE:"type",CDBID:"cdbid",LOCATION_ID:"location_id",ORGANISER_ID:"organiser_id",TITLE:"title",KEYWORDS:"keywords",CITY:"city",ORGANISER_KEYWORDS:"organiser_keywords",ZIPCODE:"zipcode",COUNTRY:"country",CATEGORY_NAME:"category_name",AGEFROM:"agefrom",DETAIL_LANG:"detail_lang",PRICE:"price",STARTDATE:"startdate",ENDDATE:"enddate",ORGANISER_LABEL:"organiser_label",LOCATION_NAME:"location_name",LOCATION_LABELS:"location_labels",EXTERNALID:"externalid",LASTUPDATED:"lastupdated",CREATIONDATE:"creationdate",CREATEDBY:"createdby",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"category_eventtype_name",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"category_theme_name",CATEGORY_FACILITY_NAME:"category_facility_name",CATEGORY_TARGETAUDIENCE_NAME:"category_targetaudience_name",CATEGORY_FLANDERSREGION_NAME:"category_flandersregion_name",AVAILABLEFROM:"availablefrom"},en:{TEXT:"text",KEYWORDS:"label",PHYSICAL_GIS:"geo",CATEGORY_NAME:"category",DETAIL_LANG:"translation",ORGANISER_LABEL:"organiser",LOCATION_LABEL:"location",CREATIONDATE:"created",CATEGORY_EVENTTYPE_NAME:"eventtype",LOCATIONTYPE:"locationtype",OFFERTYPE:"offertype",CATEGORY_THEME_NAME:"theme",CATEGORY_FACILITY_NAME:"facility",CATEGORY_TARGETAUDIENCE_NAME:"targetaudience",CATEGORY_FLANDERSREGION_NAME:"region",AVAILABLEFROM:"available",LOCATION_ID:"locationid",ORGANISER_ID:"organizationid",DATE:"date"},fr:{LOCATION_LABEL:"location",TITLE:"titre"},nl:{TYPE:"type",TEXT:"tekst",LOCATION_ID:"locatieid",ORGANISER_ID:"organisatieid",TITLE:"titel",KEYWORDS:"label",CITY:"stad",ORGANISER_KEYWORDS:"organisatielabel",ZIPCODE:"postcode",COUNTRY:"land",CATEGORY_NAME:"categorie",AGEFROM:"leeftijd",DETAIL_LANG:"vertaling",PRICE:"prijs",DATE:"datum",STARTDATE:"startdatum",ENDDATE:"einddatum",ORGANISER_LABEL:"organisatienaam",LOCATION_LABEL:"locatienaam",EXTERNALID:"externalid",LASTUPDATED:"laatst_aangepast",CREATIONDATE:"gecreëerd",CREATEDBY:"gecreëerd_door",PERMANENT:"permanent",CATEGORY_EVENTTYPE_NAME:"type",LOCATIONTYPE:"locatietype",OFFERTYPE:"aanbodtype",CATEGORY_THEME_NAME:"thema",CATEGORY_FACILITY_NAME:"voorzieningen",CATEGORY_TARGETAUDIENCE_NAME:"doelgroep",CATEGORY_FLANDERSREGION_NAME:"gemeente",AVAILABLEFROM:"datum_beschikbaar"}})}(),function(){"use strict";angular.module("udb.search").value("queryFields",[{name:"cdbid",field:"id",type:"string",group:"what",editable:!0},{name:"offertype",field:"_type",type:"choice",group:"what",editable:!0,options:["event","place"]},{name:"keywords",field:"labels",type:"string",group:"what",editable:!0},{name:"title",field:"name.\\*",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"locationtype",field:"terms.id",type:"term",group:"what",editable:!0},{name:"category_theme_name",field:"terms.id",type:"term",group:"what",editable:!0},{name:"text",field:"",type:"tokenized-string",group:"what",editable:!0},{name:"city",field:"address.\\*.addressLocality",type:"string",group:"where",editable:!0},{name:"zipcode",field:"address.\\*.postalCode",type:"string",group:"where",editable:!0},{name:"location_id",field:"location.id",type:"string",group:"where",editable:!0},{name:"country",field:"address.\\*.addressCountry",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",field:"location.name.\\*",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",field:"location.labels",type:"string",group:"where",editable:!0},{name:"nisRegions",field:"regions",type:"termNis",group:"where",editable:!0},{name:"date",field:"dateRange",type:"date-range",group:"when",editable:!0},{name:"permanent",field:"calendarType",type:"check",group:"when",editable:!0},{name:"lastupdated",field:"modified",type:"date-range",group:"input-information",editable:!0},{name:"creationdate",field:"created",type:"date-range",group:"input-information",editable:!0},{name:"createdby",field:"creator",type:"string",group:"input-information",editable:!0},{name:"availablefrom",field:"availableRange",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",field:"languages",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",field:"organizer.labels",type:"string",group:"other",editable:!0},{name:"organiser_id",field:"organizer.id",type:"string",group:"other",editable:!0},{name:"agefrom",field:"typicalAgeRange",type:"number",group:"other",editable:!0},{name:"attendance_mode",field:"attendanceMode",type:"choice",group:"other",editable:!0,options:["online","offline","mixed"]},{name:"price",field:"price",type:"number",group:"other",editable:!0},{name:"status",field:"status",type:"choice",group:"other",editable:!0,options:["Available","Unavailable","TemporarilyUnavailable"]},{name:"booking_availability",field:"bookingAvailability",type:"choice",group:"other",editable:!0,options:["available","unavailable"]},{name:"organiser_label",field:"organizer.name.\\*",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",field:"terms.id",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",field:"audienceType",type:"choice",group:"other",editable:!0,options:["everyone","members","education"]},{field:"calendarType",type:"string"},{field:"workflowStatus",type:"choice",options:["DRAFT","READY_FOR_VALIDATION","APPROVED","REJECTED","DELETED"]},{field:"name.nl",type:"tokenized-string"},{field:"name.fr",type:"tokenized-string"},{field:"name.de",type:"tokenized-string"},{field:"name.en",type:"tokenized-string"},{field:"description.nl",type:"tokenized-string"},{field:"description.fr",type:"tokenized-string"},{field:"description.de",type:"tokenized-string"},{field:"description.en",type:"tokenized-string"},{field:"terms.label",type:"string"},{field:"mediaObjectsCount",type:"number"},{field:"videosCount",type:"number"},{field:"address.\\*.streetAddress",type:"string"},{field:"location.id",type:"string"},{field:"location.name.nl",type:"tokenized-string"},{field:"location.name.fr",type:"tokenized-string"},{field:"location.name.de",type:"tokenized-string"},{field:"location.name.en",type:"tokenized-string"},{field:"location.terms.id",type:"string"},{field:"organizer.id",type:"string"},{field:"organizer.name.nl",type:"tokenized-string"},{field:"organizer.name.fr",type:"tokenized-string"},{field:"organizer.name.de",type:"tokenized-string"},{field:"organizer.name.en",type:"tokenized-string"},{field:"allAges",type:"string"},{field:"contributors",type:"string"},{name:"startdate",field:"dateRange",type:"date-range"},{name:"enddate",field:"dateRange",type:"date-range"}])}(),function(){"use strict";function a(a,b){var c=function(c,d){var e=_.findKey(a[d],function(a){return a===c}),f=void 0===e?void 0:_.find(b,{name:e.toLowerCase()});return void 0===f?c:f.field},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"sapi2"),a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("QueryTreeTranslator",a),a.$inject=["queryFieldTranslations","queryFields"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"field"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){var b=a.split(".");return b.pop(),b.join(".")}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==o&&o!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("QueryTreeValidator",a),a.$inject=["queryFields"]}(),function(){"use strict";angular.module("udb.search").value("sapi2FieldTypeTransformers",{string:["=","!"],"tokenized-string":["+","-"],choice:["=","!"],term:["=","!"],number:["=","<",">"],check:["="],"date-range":["=","><","<",">"]})}(),function(){"use strict";function a(a,b,c,d,e){function f(a){"date-range"===a.fieldType&&g(a);var b=h(a);return b.field+":"+k(b)}function g(a){"="===a.transformer&&moment(a.lowerBound).isValid()&&(a.lowerBound=moment(a.lowerBound).startOf("day").toDate(),a.upperBound=moment(a.lowerBound).endOf("day").toDate()),"><"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound="*",moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound="*"),"<"===a.transformer&&(moment(a.upperBound).isValid()?a.upperBound=moment(a.upperBound).endOf("day").toDate():a.upperBound=moment().endOf("day").toDate()),">"===a.transformer&&(moment(a.lowerBound).isValid()?a.lowerBound=moment(a.lowerBound).startOf("day").toDate():a.lowerBound=moment().startOf("day").toDate())}function h(a){var b=_.clone(a);switch(b.transformer){case"!":b.field="!"+b.field;break;case"-":b.field="-"+b.field;break;case"<":b.lowerBound="*";break;case">":b.upperBound="*";break;case"=":"date-range"!==b.fieldType&&(b.upperBound=void 0,b.lowerBound=void 0)}return b}function i(a,b){var c=_.find(d,function(b){return b.name===a.field}),e={field:b||a.field,fieldType:c||"string",transformer:a.transformer||"="};return a.lowerBound||a.upperBound?(e.lowerBound=a.lowerBound||void 0,e.upperBound=a.upperBound||void 0,e.inclusive=a.inclusive||!0):e.term=a.term||void 0,e}var j="";this.translate=function(a){c.translateQueryTree(a.queryTree)},this.validate=function(a){b.validate(a.queryTree,a.errors)},this.isValid=function(a){return this.translate(a),this.validate(a),0===a.errors.length},this.parseQueryString=function(b){try{b.queryTree=a.parse(b.queryString)}catch(c){b.errors.push(c.message)}return b.queryTree},this.createQuery=function(a){var b={originalQueryString:a,queryString:a,queryTree:{},errors:[]};return this.parseQueryString(b),b};var k=function(a){var b=a.term,c=a.lowerBound||a.upperBound;if(c){var d=a.lowerBound||"*",e=a.upperBound||"*",f=a.inclusive;d instanceof Date&&(d=d.toISOString()),e instanceof Date&&(e=e.toISOString()),b=d+" TO "+e,b=f?"["+b+"]":"{"+b+"}"}else(a.quoted||-1!==b.indexOf(" "))&&(b='"'+b+'"'),a.similarity&&(b+="~"+a.similarity),a.proximity&&(b+="~"+a.proximity),a.prefix&&(b=a.prefix+b),a.boost&&(b+="^"+a.boost);return b},l=function(a,b,c){if(a.left){var d,e=a.operator===j?" ":" "+a.operator+" ";return a.right?(d=l(a.left,b+1,c),d+=e,d+=l(a.right,b+1,c),b>0&&(d="("+d+")"),a.field&&a.field!==j&&(d=a.field+":"+d)):d=l(a.left,b+1,c),d}var f="",g=k(a);if(a.field!==j&&null!==a.field){var h="";_.contains(["!","+","-"],a.transformer)&&(h=a.transformer),f+=h+a.field+":"}return f+=g,c+=f};this.unparse=function(a){return a.queryString=this.unparseQueryTree(a.queryTree),a.queryString},this.unparseQueryTree=function(a){var b="";return a.left&&(b=l(a,0,"")),b},this.unparseGroupedTree=function(a){var b=a,c="";return _.forEach(b.nodes,function(a,d){var e="";if("group"===a.type){var g=a;_.forEach(g.nodes,function(b,c){if("group"===b.type){var d=b,h=" ";if(1===d.nodes.length){var i=d.nodes[0];h+=d.operator+" "+f(i)}else h+=d.operator+" (",_.forEach(d.nodes,function(a,b){b&&(h+=" OR "),h+=f(a)}),h+=")";e+=h}else{c&&(e+=" "+a.operator+" "),e+=f(b);var j=c+1;c&&j1&&g.nodes.length>1&&(e="("+e+")")}else console.log("Expecting a group but found: "+a.type);if(d||a.excluded){var h=a.excluded?"NOT":"OR";c+=" "+h+" "}c+=e}),c},this.groupQueryTree=function(a){var b={type:"root",nodes:[],operator:a.operator||"OR"};if(a.left)this.groupNode(a,b),this.cleanUpGroupedFieldTree(b);else{var c={type:"field",operator:"OR",nodes:[{field:"title",term:"",fieldType:"tokenized-string",transformer:"+"}]};b.nodes.push(c)}return b},this.cleanUpGroupedFieldTree=function(a){_.forEach(a.nodes,function(a){delete a.implicitField,a.nodes&&1===a.nodes.length&&(a.type="field"),a.operator===j&&(a.operator="OR"),_.forEach(a.nodes,function(a){var b=_.find(d,function(b){return b.name===a.field});if(b){if(a.fieldType=b.type,"term"===b.type){var c=_.find(e,function(b){return b.label.toUpperCase()===a.term.toUpperCase()});if(c){var f="category_"+c.domain+"_name";a.field=f,a.term=c.label}else a.invalid=!0}if("choice"===b.type){var g=_.find(b.options,function(b){return b===a.term.toUpperCase()});g?a.term=g:a.invalid=!0}if("check"===b.type&&(_.contains(["TRUE","FALSE"],a.term.toUpperCase())?a.term=a.term.toUpperCase():a.invalid=!0),"tokenized-string"===b.type&&(a.transformer&&"="!==a.transformer||(a.transformer="+"),"!"===a.transformer&&(a.transformer="-")),"string"===b.type&&(a.transformer&&"+"!==a.transformer||(a.transformer="="),"-"===a.transformer&&(a.transformer="!")),"number"===b.type&&(a.term?a.transformer="=":a.upperBound&&"*"===a.lowerBound?a.transformer="<":a.lowerBound&&"*"===a.upperBound?a.transformer=">":(a.transformer="=",a.term=a.lowerBound||a.upperBound,a.lowerBound=void 0,a.upperBound=void 0)),"date-range"===b.type){var h=moment(a.lowerBound),i=moment(a.upperBound);h.isValid()&&i.isValid()?h.isSame(i,"day")?a.transformer="=":a.transformer="><":(!h.isValid()&&i.isValid()&&(a.transformer="<"),!i.isValid()&&h.isValid()&&(a.transformer=">"))}}})})},this.groupNode=function(a,b,c){if(a.operator===j&&(a.operator="OR"),!c||a.operator&&a.operator!==c.operator){var d={type:"group",operator:a.operator||"OR",nodes:[]};b.nodes.push(d),c=d}if(a.field&&a.field!==j&&(c.implicitField=a.field),a.term||a.lowerBound&&a.upperBound){var e=a.field;if(e===j){if(!c.implicitField)throw"Field name is implicit and not defined elsewhere.";e=c.implicitField}c.nodes.push(i(a,e))}a.left&&(this.groupNode(a.left,b,c),a.right&&this.groupNode(a.right,b,c))}}angular.module("udb.search").service("sapi2QueryBuilder",a),a.$inject=["LuceneQueryParser","sapi2QueryTreeValidator","sapi2QueryTreeTranslator","sapi2QueryFields","taxonomyTerms"]}(),function(){"use strict";angular.module("udb.search").value("sapi2QueryFields",[{name:"cdbid",type:"string",group:"what",editable:!0},{name:"keywords",type:"string",group:"what",editable:!0},{name:"title",type:"tokenized-string",group:"what",editable:!0},{name:"category_eventtype_name",type:"term",group:"what",editable:!0},{name:"category_theme_name",type:"term",group:"what",editable:!0},{name:"city",type:"string",group:"where",editable:!0},{name:"zipcode",type:"string",group:"where",editable:!0},{name:"country",type:"choice",group:"where",editable:!1,options:["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM"]},{name:"location_name",type:"tokenized-string",group:"where",editable:!0},{name:"location_labels",type:"string",group:"where",editable:!0},{name:"category_flandersregion_name",type:"term",group:"where",editable:!0},{name:"startdate",type:"date-range",group:"when",editable:!0},{name:"enddate",type:"date-range", +group:"when",editable:!0},{name:"permanent",type:"check",group:"when",editable:!0},{name:"lastupdated",type:"date-range",group:"input-information",editable:!0},{name:"lastupdatedby",type:"string",group:"input-information",editable:!0},{name:"creationdate",type:"date-range",group:"input-information",editable:!0},{name:"createdby",type:"string",group:"input-information",editable:!0},{name:"availablefrom",type:"date-range",group:"input-information",editable:!0},{name:"detail_lang",type:"choice",group:"translations",editable:!0,options:["nl","fr","en","de"]},{name:"organiser_keywords",type:"string",group:"other",editable:!0},{name:"agefrom",type:"number",group:"other",editable:!0},{name:"price",type:"number",group:"other",editable:!0},{name:"organiser_label",type:"tokenized-string",group:"other",editable:!0},{name:"category_facility_name",type:"term",group:"other",editable:!0},{name:"category_targetaudience_name",type:"term",group:"other",editable:!0},{name:"category_publicscope_name",type:"term",group:"other",editable:!0},{name:"like_count",type:"number"},{name:"recommend_count",type:"number"},{name:"attend_count",type:"number"},{name:"comment_count",type:"number"},{name:"category_name",type:"term"},{name:"externalid",type:"string"},{name:"private",type:"check"},{name:"physical_gis",type:"string"}])}(),function(){"use strict";function a(a){var b=a,c=function(a,c){var d=a,e=_.findKey(b[c],function(b){return b===a});return e&&(d=e.toLowerCase()),d},d=function(a,b){var e=a.left||!1,f=a.right||!1,g=[];e&&g.push(e),f&&g.push(f);for(var h=0,i=g.length;i>h;h++){var j=g[h];"object"==typeof j&&d(j,b+1)}a.field&&(a.field=c(a.field,"en"),a.field=c(a.field,"nl"))};this.translateQueryTree=function(a){return d(a,0)}}angular.module("udb.search").service("sapi2QueryTreeTranslator",a),a.$inject=["queryFieldTranslations"]}(),function(){"use strict";function a(a){var b=_.union(_.map(a,"name"),["_exists_"]),c="",d=_(b).filter(function(a){return a.indexOf(".")>0}).map(function(a){return a.split(".")[0]}).value(),e=function(a,f,g){var h=a.left||!1,i=a.right||!1,j=[];h&&j.push(h),i&&j.push(i);for(var k=0,l=j.length;l>k;k++){var m=j[k];"object"==typeof m&&e(m,f+1,g)}var n=a.field;if("undefined"!=typeof n){var o=_.trim(n,".\\*"),p=n!==o;if(null!==n&&n!==c){var q=p?d:b;_.contains(q,o)||g.push(n+" is not a valid search field")}}};this.validate=function(a,b){e(a,0,b)}}angular.module("udb.search").service("sapi2QueryTreeValidator",a),a.$inject=["sapi2QueryFields"]}(),function(){"use strict";function a(a,b){var c=null,d=null;this.clearQueryTree=function(){d=null},this.setQueryString=function(b,e){var f=!1;c&&c.queryString===b||(f=a.createQuery(b),a.isValid(f),this.setQuery(f),d=null),c&&!f&&e&&this.setQuery(c)},this.setQueryTree=function(b){var c=a.unparseGroupedTree(b),e=a.createQuery(c);a.isValid(e),this.setQuery(e),d=b},this.setQuery=function(a){c=a,b.$emit("searchQueryChanged",a)},this.getQuery=function(){return c},this.getQueryTree=function(){return angular.copy(d)}}angular.module("udb.search").service("searchHelper",a),a.$inject=["LuceneQueryBuilder","$rootScope"]}(),function(){"use strict";function a(a){var b={ALL:{name:"all",icon:"fas fa-check-square"},NONE:{name:"none",icon:"far fa-square"},SOME:{name:"some",icon:"fas fa-minus-square"}},c=function(c,d){this.pageSize=c||30,this.events=[],this.totalItems=0,this.currentPage=d||1,this.loading=!0,this.lastQuery=null,this.eventProperties={description:{name:a.instant("search.description"),visible:!1},labels:{name:a.instant("search.labels"),visible:!1},image:{name:a.instant("search.picture"),visible:!1}},this.eventSpecifics=[{id:"input",name:a.instant("search.inputInformation")}],this.activeSpecific=this.eventSpecifics[0],this.selectedOffers=[],this.selectionState=b.NONE,this.querySelected=!1};return c.prototype={enableSpecifics:function(a){this.eventSpecifics=_.uniq(_.union(this.eventSpecifics,a),"id")},toggleSelection:function(){var a=this.selectionState;a===b.SOME||a===b.ALL?(this.deselectPageItems(),this.querySelected&&(this.deselectAll(),this.querySelected=!1)):this.selectPageItems()},selectQuery:function(){this.querySelected=!0,this.selectPageItems()},updateSelectionState:function(){var a=this.selectedOffers,c=_.filter(this.events,function(b){return _.contains(a,b)});c.length===this.pageSize?this.selectionState=b.ALL:c.length>0?this.selectionState=b.SOME:this.selectionState=b.NONE},toggleSelect:function(a){if(!this.querySelected){var b=_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]});if(b)this.selectedOffers=_.filter(this.selectedOffers,function(b){return b["@id"]!==a["@id"]});else{var c=_.find(this.events,function(b){return b["@id"]===a["@id"]});this.selectedOffers.push(c)}this.updateSelectionState()}},deselectAll:function(){this.selectedOffers=[],this.selectionState=b.NONE},deselectPageItems:function(){var a=this.selectedOffers;_.forEach(this.events,function(b){_.remove(a,function(a){return a["@id"]===b["@id"]})}),this.selectionState=b.NONE},selectPageItems:function(){var a=this.events,c=this.selectedOffers;_.each(a,function(a){c.push(a)}),this.selectedOffers=_.uniq(c),this.selectionState=b.ALL},isOfferSelected:function(a){return!!_.find(this.selectedOffers,function(b){return b["@id"]===a["@id"]})},setResults:function(a){var b=this;b.pageSize=a.itemsPerPage||30,b.events=a.member||[],b.totalItems=a.totalItems||0,b.loading=!1,this.querySelected&&this.selectPageItems(),this.updateSelectionState()},queryChanged:function(a){this.loading=!0,this.selectedOffers=[],this.querySelected=!1,this.lastQuery&&this.lastQuery!==a&&(this.currentPage=1),this.lastQuery=a},activateSpecific:function(a){this.activeSpecific=a},isShowingProperties:function(){var a=_.find(this.eventProperties,function(a){return a.visible});return!!a}},c}angular.module("udb.search").factory("SearchResultViewer",a),a.$inject=["$translate"]}(),function(){"use strict";angular.module("udb.search").constant("EventTranslationState",{ALL:{name:"all",icon:"fa-circle"},NONE:{name:"none",icon:"fa-circle-o"},SOME:{name:"some",icon:"fa-dot-circle-o"}})}(),function(){"use strict";function a(){var a={restrict:"AE",controller:"OfferController",controllerAs:"eventCtrl",templateUrl:"templates/event.directive.html"};return a}angular.module("udb.search").directive("udbEvent",a)}(),function(){"use strict";function a(a,b,c,d,e,f,g,h,i,j,k,l){function m(a){var b=k.instant("offerTypes."+a);return _.includes(b,"offerTypes.")?a:b}function n(a){var d=a.facilities.sort(function(a,b){return a.label.localeCompare(b.label)});return a.facilities=d,v=a,v.updateTranslationState(),b.event=c(v,x,!0),b.offerType=b.event.url.split("/").shift(),b.translatedOfferType=m(b.event.type.label),w.offerExpired="event"===b.offerType?a.isExpired():!1,w.hasFutureAvailableFrom=a.hasFutureAvailableFrom(),w.fetching=!1,p(),v}function o(a){return a&&"event"===b.event.url.split("/").shift()?h.resolve(a):h.reject()}function p(){b.$watch(function(){return v.labels},function(a){b.event.labels=angular.copy(a)})}function q(a,b,c){var d=w.activeLanguage,f=c||a;b&&b!==v[a][d]&&e.translateProperty(v,f,d,b).then(v.updateTranslationState(v))}function r(){w.labelResponse="",w.labelsError=""}function s(a){b.event.labels=angular.copy(v.labels),w.labelResponse="unlabelError",w.labelsError=a.title}function t(a){r(),f.unlabel(v,a.name)["catch"](s)}function u(a){return b.event.location&&(b.event.location=c(b.event.location,x)),h.resolve(a)}var v,w=this,x=k.use()||"nl";w.translation=!1,w.activeLanguage=x,w.languageSelector=[{lang:"fr"},{lang:"en"},{lang:"de"}],w.uitId=_.get(i,"uitidUrl"),w.labelRemoved=t,l.isGodUser().then(function(a){w.isGodUser=a}),w.init=function(){if(!b.event.title){if(w.fetching=!0,b.event.name){var c=a.formatJsonLDEntity(b.event);return void n(c)}return a.getOffer(b.event["@id"]).then(function(a){n(a)})}w.fetching=!1},h.when(w.init()).then(u).then(o)["finally"](function(){w.editable=!0}),w.hasActiveTranslation=function(){var a=v;return a&&a.translationState[w.activeLanguage]!==d.NONE},w.getLanguageTranslationIcon=function(a){var b=d.NONE.icon;return v&&a&&(b=v.translationState[a].icon),b},w.translate=function(){w.applyPropertyChanges("name"),w.applyPropertyChanges("description")},w.toggleLanguage=function(a){a===w.activeLanguage?w.stopTranslating():(w.activeLanguage=a,w.translation=c(v,w.activeLanguage))},w.hasPropertyChanged=function(a){var b=w.activeLanguage,c=w.translation;return w.translation&&v[a][b]!==c[a]},w.undoPropertyChanges=function(a){var b=w.activeLanguage,c=w.translation;c&&(c[a]=v[a][b])},w.applyPropertyChanges=function(a){var b=w.translation[a];q(a,b,a)},w.stopTranslating=function(){w.translation=void 0,w.activeLanguage=x},w.labelAdded=function(a){var c=_.find(v.labels,function(b){return a.name.toUpperCase()===b.toUpperCase()});c?(b.$apply(function(){b.event.labels=angular.copy(v.labels)}),g.alert('Het label "'+a.name+'" is reeds toegevoegd als "'+c+'".')):(w.addedLabel=a.name,f.label(v,a.name).then(function(){w.labelResponse="success",b.event.labels=angular.copy(v.labels)})["catch"](function(){w.labelResponse="error"}))},w.showConcludedButton=function(){var a=_.get(i,"concludedButton.toggle",!1);if(!a)return!1;var c=_.get(i,"calendarHighlight.date"),d=moment(c).endOf("day");return"event"===b.offerType&&d=h;if(i)l("EVENT-EXPORT.TOO-MANY-ITEMS",{limit:h}).then(function(a){c.alert(a)});else if(f&&f.queryString.length&&m.isValid(f)){e.open({templateUrl:"templates/event-export-modal.html",controller:"EventExportController",controllerAs:"exporter",size:"lg"})}else l("EVENT-EXPORT.QUERY-IS-MISSING").then(function(a){c.alert(a)})}function t(a,b){w(b)}a.resultViewer=new f(30,q()),a.realQuery=!1,a.activeQuery=!1,a.queryEditorShown=!1,a.currentPage=q(),a.language=l.use()||"nl";var u=[{id:"accessibility",name:"Toegankelijkheidsinformatie",permission:n.editFacilities}];o.getPermissions().then(function(b){var c=_.filter(u,function(a){return!_.has(a,"permission")||_.contains(b,a.permission)});a.resultViewer.enableSpecifics(c)});var v=function(c){var e=(a.resultViewer.currentPage-1)*a.resultViewer.pageSize,f="string"==typeof c?c:c.queryString,g=a.resultViewer.currentPage>1?String(a.resultViewer.currentPage):null;d.search({query:p().queryString||null,page:g}),a.resultViewer.loading=!0,b.findOffers(f,e).then(function(c){c.member&&(c=b.reformatJsonLDData(c)),h.addPagedCollection(c),a.resultViewer.setResults(c)})},w=function(b){if(a.activeQuery=b,m.isValid(b)){var c=m.unparse(b);a.resultViewer.queryChanged(c),v(c),c!==b.originalQueryString?a.realQuery=c:a.realQuery=!1}},x=function(c){var d=a.resultViewer.selectedOffers;_.each(d,function(a){var d;d=b.getOffer(new URL(a["@id"])),d.then(function(a){a.label(c)})}),_.each(c,function(a){g.labelOffersById(d,a)})},y=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-label-modal.html",controller:"OfferLabelModalCtrl",controllerAs:"lmc"});d.result.then(x)},z=function(){var b=a.resultViewer.querySelected;b?r():y()},A=function(){var b=a.resultViewer.selectedOffers;if(!b.length)return void c.alert("First select the events you want to label.");var d=e.open({templateUrl:"templates/offer-languages-modal.html",controller:"OfferLanguagesModalCtrl",controllerAs:"lmc"});d.result.then(x)};a.exportEvents=s,a.label=z,a.addLanguageIcons=A,a.startEditing=function(){a.queryEditorShown=!0},a.stopEditing=function(){a.queryEditorShown=!1};var B=1===a.currentPage;a.pageChanged=function(){var b=a.currentPage;B?(a.resultViewer.currentPage=b,v(a.activeQuery),c.scroll(0,0)):(a.currentPage=a.resultViewer.currentPage,B=!0)};var C=_.once(function(){var b=j.$on("searchQueryChanged",t),c=j.$on("startEditingQuery",a.startEditing),d=j.$on("stopEditingQuery",a.stopEditing);a.$on("$destroy",c),a.$on("$destroy",b),a.$on("$destroy",d)});C()}angular.module("udb.search").controller("SearchController",a),a.$inject=["$scope","udbApi","$window","$location","$uibModal","SearchResultViewer","offerLabeller","offerLocator","searchHelper","$rootScope","eventExporter","$translate","LuceneQueryBuilder","authorization","authorizationService"]}(),function(){"use strict";function a(){return{templateUrl:"templates/search.html",restrict:"EA",controller:"SearchController"}}angular.module("udb.search").directive("udbSearch",a)}(),function(){"use strict";function a(a,b,c){function d(){a.all([b.getEventCardSystems(n.id),b.findOrganisationsCardSystems(m.id)]).then(h,e)}function e(a){400===a.status&&(l.uitpasUnavailableType="already_has_ticketsales"),404===a.status&&(l.uitpasUnavailableType="not_found")}function f(){l.uitpasUnavailableType=void 0}function g(){l.availableCardSystems=void 0,f(),j(),d()}function h(a){var b=a[0],c=a[1];l.availableCardSystems=_.map(c,function(a){return _.assign(a,{assignedDistributionKey:i(b,a),active:!!_.find(b,{id:a.id})})})}function i(a,b){var c=_.find(a,{id:b.id});return _.first(!c||_.isEmpty(c.distributionKeys)?b.distributionKeys:c.distributionKeys)}function j(){l.persistingCardSystems=!1}function k(a){return a.assignedDistributionKey?l.distributionKeyAssigned(a):b.addEventCardSystem(n.id,a.id)}var l=this,m=l.organisation,n=l.offerData;l.$onInit=d,l.refresh=g,l.distributionKeyAssigned=function(d){if(!d.assignedDistributionKey)throw"card system distribution key is missing";return l.persistingCardSystems=!0,b.addEventCardSystemDistributionKey(n.id,d.id,d.assignedDistributionKey.id).then(function(){return c.$emit("uitpasDataSaved"),j(),a.resolve()})},l.activeCardSystemsChanged=function(a){function d(b){a.active=!a.active,e(b)}function f(){c.$emit("uitpasDataSaved")}l.persistingCardSystems=!0;var g=a.active?k(a):b.removeEventCardSystem(n.id,a.id);g.then(f,d)["finally"](j)}}angular.module("udb.uitpas").component("cardSystemSelector",{templateUrl:"templates/card-systems.html",controller:a,controllerAs:"cardSystemSelector",bindings:{organisation:"<",offerData:"<"}}),a.$inject=["$q","udbUitpasApi","$rootScope"]}(),function(){"use strict";function a(a,b,c){function d(b){b?(a.showUitpasInfo=_.get(g,"organizer.isUitpas",!1)&&c.isEvent,g.showCardSystems=g.price&&!!g.price.length):(g.showCardSystems=!1,a.showUitpasInfo=!1)}function e(){g.eventFormData=c,d(g.organizer),g.listeners=[b.$on("eventFormSaved",g.showCardSystemsIfPriceIsSelected),b.$on("eventOrganizerSelected",g.updateOrganizer),b.$on("eventOrganizerDeleted",g.updateOrganizer),b.$on("uitpasDataSaved",g.markUitpasDataAsCompleted)]}function f(){_.invoke(g.listeners,"call")}var g=this;a.showUitpasInfo=!1,a.uitpasCssClass="state-incomplete",g.listeners=[],g.showCardSystems=!1,g.$onInit=e,g.$onDestroy=f,g.showCardSystemsIfPriceIsSelected=function(a,b){g.showCardSystems=b.priceInfo&&!!b.priceInfo.length},g.markUitpasDataAsCompleted=function(){a.uitpasCssClass="state-complete"},g.updateOrganizer=function(a,b){g.organizer=b,d(b)}}angular.module("udb.uitpas").component("uitpasInfo",{templateUrl:"templates/uitpasInfo.html",controller:a,controllerAs:"upic",bindings:{organizer:"<",price:"<"}}),a.$inject=["$scope","$rootScope","EventFormData"]}(),function(){"use strict";angular.module("udb.uitpas").constant("DefaultUitpasLabels",{PASPARTOE:"Paspartoe",UITPAS:"UiTPAS",UITPAS_GENT:"UiTPAS Gent",UITPAS_OOSTENDE:"UiTPAS Oostende",UITPAS_REGIO_AALST:"UiTPAS Regio Aalst",UITPAS_DENDER:"UiTPAS Dender",UITPAS_ZUIDWEST:"UiTPAS Zuidwest",UITPAS_MECHELEN:"UiTPAS Mechelen",UITPAS_KEMPEN:"UiTPAS Kempen",UITPAS_MAASMECHELEN:"UiTPAS Maasmechelen",UITPAS_LEUVEN:"UiTPAS Leuven",UITPAS_LIER:"UiTPAS Lier","UITPAS_HEIST-OP-DEN-BERG":"UiTPAS Heist-op-den-Berg",UITPAS_MEETJESLAND:"UiTPAS Meetjesland",UITPAS_WESTHOEK:"UiTPAS Westhoek"})}(),function(){"use strict";function a(a){var b=this;b.organisation=a.organisation,b.query=a.query}angular.module("udb.uitpas").controller("OrganisationSuggestionController",a),a.$inject=["$scope"]}(),function(){"use strict";function a(){return{templateUrl:"templates/organisation-suggestion.directive.html",controller:"OrganisationSuggestionController",controllerAs:"os",scope:{organisation:"<",query:"<"},restrict:"A"}}angular.module("udb.uitpas").directive("uitpasOrganisationSuggestion",a)}(),function(){"use strict";function a(a,b,c,d,e,f){function g(a){return"object"==typeof a.distributionKeys&&(a.distributionKeys=_.values(a.distributionKeys)),a}function h(b){var c="object"==typeof b.data?_.values(b.data):b.data;return a.resolve(_.map(c,g))}function i(b){return a.resolve(b.data)}function j(b,c,d){function g(g){return f().add(c,"seconds").isAfter(d)?a.reject(g):e(function(){return j(b,c,d)},c)}return b()["catch"](g)}var k=_.get(c,"uitpasUrl"),l=_.get(c,"uitpasMaxDelay",8),m={headers:{"Content-Type":"application/json",Authorization:"Bearer "+d.getToken(),"X-Api-Key":_.get(c,"apiKey")},params:{}};this.getEventCardSystems=function(a){function c(){return b.get(k+"events/"+a+"/cardSystems/",m)}var d=f().add(l,"s");return j(c,2,d).then(h)},this.getTicketSales=function(c,d){function e(){return b.get(k+"events/"+c,m)}function g(a){return a.data.hasTicketSales}var h=a.defer(),i=f().add(l,"s");return d.isUitpas?h.resolve(j(e,2,i).then(g)):h.resolve(!1),h.promise},this.findOrganisationsCardSystems=function(a){return b.get(k+"organizers/"+a+"/cardSystems/",m).then(h)},this.addEventCardSystem=function(a,c){return b.put(k+"events/"+a+"/cardSystems/"+c,null,m).then(i)},this.removeEventCardSystem=function(a,c){return b["delete"](k+"events/"+a+"/cardSystems/"+c,m).then(i)},this.addEventCardSystemDistributionKey=function(a,c,d){return b.put(k+"events/"+a+"/cardSystems/"+c+"/distributionKey/"+d,null,m).then(i)}}angular.module("udb.uitpas").service("udbUitpasApi",a),a.$inject=["$q","$http","appConfig","uitidAuth","$timeout","moment"]}(),function(){"use strict";function a(){var a;this.useLabels=function(b){a=b},this.$get=["DefaultUitpasLabels",function(b){return a?a:b}]}angular.module("udb.uitpas").provider("UitpasLabels",a)}(),function(){angular.module("udb.core").run(["$templateCache",function(a){"use strict";a.put("templates/calendar-summary.directive.html",'\n\n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n\n \n \n \n \n\n \n\n'),a.put("templates/image-detail.directive.html",'\n \n \n \n \n
    \n
  • \n
    \n \n {{::translateImageDetail(\'alt_image\', {index: $index}) }}\n \n
    \n
    \n \n

    {{image.description}}

    \n

    © {{image.copyrightHolder}}

    \n
    \n
    \n
  • \n
\n \n \n\n'),a.put("templates/udb.workflow-status.directive.html",'\n \n \n \n \n {{::cm.status | translate }}\n {{cm.event.availableFrom | date: \'dd/MM/yyyy\'}}\n \n \n

 

\n \n\n\n \n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n \n
  • \n
  • \n
\n \n\n'),a.put("templates/unexpected-error-modal.html",'\n\n\n'),a.put("templates/event-cultuurkuur.html",'
\n
\n

\n
\n
\n

\n
\n
\n
\n \n
\n
\n \n
\n
\n
\n

Bekijk je evenement op cultuurkuur.be en voeg de juiste onderwijsniveaus toe zodat leerkrachten je vinden.

\n Doorgaan\n
\n
\n
\n
\n
\n

\n
\n
\n
\n'),a.put("templates/dashboard-item.directive.html",'\n \n \n \n \n Online op \n Publicatie afgewezen \n
\n \n \n \n - \n \n \n \n\n\n\n \n
\n \n \n
    \n
  • \n \n
  • \n
  • \n
  • \n \n
  • \n
\n
\n
\n \n
\n \n
\n \n
\n
\n\n'), +a.put("templates/dashboard-organizer-item.directive.html",'\n \n \n \n
\n \n \n ,\n \n \n\n\n\n \n
\n \n
\n
\n\n'),a.put("templates/event-delete-confirm-modal.html",'\n\n'),a.put("templates/place-delete-confirm-modal.html",'\n\n'),a.put("templates/dashboard.html",'

\n \n

\n\n
\n \n
\n\n
\n \n
\n\n
\n\n
\n
\n\n
\n \n
\n\n
\n \n
\n\n
\n
\n

\n
\n

\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n \n \n
\n \n\n
\n
\n\n
\n\n
\n

\n \n \n \n

\n
\n\n
\n \n \n \n \n \n
\n \n\n
\n
\n\n
\n
\n\n
\n'),a.put("templates/event-duplication-footer.component.html",'
\n \n \n \n
'),a.put("templates/event-duplication-step.component.html",'

\n\n\n\n\n'),a.put("templates/event-duplication.html",'
\n \n \n
\n'),a.put("templates/job-logo.directive.html",'
\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n
\n'),a.put("templates/offer-label-modal.html",'\n\n\n'),a.put("templates/offer-languages-modal.html",'\n\n\n'),a.put("templates/base-job.template.html",'

\n \n \n \n \n

\n'),a.put("templates/failed-job.template.html",'

\n \n \n \n \n \n \n \n

\n'),a.put("templates/job-log.component.html",'
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n
\n

\n
    \n
  • \n \n
  • \n
\n
\n\n \n\n
\n
\n
\n
\n'),a.put("templates/booking-info-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n
  • \n\n
  • \n
  • {{::bookingInfo.email}}
  • \n
  • Van {{::bookingInfo.availabilityStarts | date}} tot {{::bookingInfo.availabilityEnds | date}}
  • \n
\n \n \n\n'),a.put("templates/contact-point-detail.directive.html",'\n \n \n \n \n
    \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
  • \n \n \n \n \n
  • \n
\n \n \n\n'),a.put("templates/event-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n
{{::event.name}}
{{::translateType(event.type.label)}}
Toegang\n

\n \n \n
\n \n \n

\n \n \n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n
\n
{{eventLocation(event)}}\n {{eventLocation(event)}}\n
\n \n {{::event.onlineUrl}}\n \n \n
\n \n \n Probleem bij het ophalen van de kalenderinformatie\n \n
\n

\n
\n
\n

\n
\n
\n {{::event.organizer.name}}\n {{::event.organizer.name}}\n
\n \n \n \n \n \n
{{priceInfo.name}}\n \n \n {{priceInfo.price | currency}} \n \n
\n
\n {{ageRange}}\n \n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n Auth0 client id: \n
\n
\n Auth0 client name: \n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/form-age.html",'
\n \n \n
\n \n \n {{ translateAgeRange(ageRange.label) }}\n {{ getAgeRangeLabel(ageRange) }}\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n \n
\n \n \n
\n
\n
\n
\n \n
\n
\n\n'), a.put("templates/form-audience.html",'
\n
\n
\n \n
\n
\n
\n \n
\n\n
\n \n
\n\n\n
\n \n
\n
\n \n
\n \n
\n
\n
'),a.put("templates/form-calendar-datepicker.component.html",'

\n \n \n \n \n

'),a.put("templates/form-calendar-period.component.html",'
\n \n
\n
\n \n \n \n
\n\n
\n \n \n \n
\n\n
\n
\n

\n
\n
\n
\n
\n'),a.put("templates/form-calendar-timepicker.component.html",'\n\n'),a.put("templates/form-event-calendar.component.html",'
\n
\n\n \n \n

\n \n

\n
\n\n
\n
\n\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n
\n
\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n

\n
\n
\n
\n
\n \n \n &\n \n
\n
\n\n \n
\n
\n\n
\n \n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/form-place-calendar.component.html",'
\n
\n
\n
\n \n
\n \n \n
\n
\n \n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/city-suggestion.html",'\n'),a.put("templates/event-form-image-edit.html",'\n'),a.put("templates/event-form-image-remove.html",'\n'),a.put("templates/event-form-image-upload.html",'\n'),a.put("templates/opening-hours-editor.modal.html",'\n\n\n'),a.put("templates/event-form-openinghours.html",'
\n
\n
\n

\n \n \n

\n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n
\n
\n
\n'),a.put("templates/event-form-organizer-modal.html",'\n\n\n\n'), a.put("templates/organizer-typeahead-template.html","{{match.model.name}}"),a.put("templates/event-form-place-modal.html",'\n\n\n'),a.put("templates/place-suggestion-popup.html",''),a.put("templates/place-suggestion.html",'
\n \n \n \n
\n'),a.put("templates/price-form-modal.html",'\n\n\n\n'),a.put("templates/priceInfo.html",'
\n
\n
\n \n \n
\n
\n\n
\n
\n \n \n \n
\n
\n
\n \n \n \n \n \n \n \n \n \n
\n \n \n
{{priceInfo.name[$ctrl.mainLanguage]}}\n \n Gratis\n \n \n {{priceInfo.price | currency:\'€\' }} \n \n
\n
\n
\n\n
\n
\n
\n'),a.put("templates/event-form-publish-modal.html",'\n\n\n'),a.put("templates/reservation-period.html",'
\n \n \n
\n
\n
\n
\n
\n

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n \n \n \n \n \n
\n
\n
\n
\n
\n
'),a.put("templates/event-preview.directive.html",'
\n\n
\n
    \n
  • \n
\n

\n
\n\n
\n\n

\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n
\n \n \n \n \n
\n \n \n
\n
\n gratis\n \n \n \n \n \n niet ingevoerd\n
\n
\n
\n
\n\n
\n \n Ingevoerd door \n op \n \n \n
\n'),a.put("templates/event-suggestion.directive.html",''),a.put("templates/place-preview.directive.html",'
\n\n
\n
    \n
  • \n
\n

\n
\n\n
\n\n

\n\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n \n \n
\n \n \n \n \n
\n
\n
\n\n
\n \n Ingevoerd door \n op \n \n
\n'),a.put("templates/place-suggestion.directive.html",''),a.put("templates/suggestion-preview-modal.html",'\n\n\n'),a.put("templates/event-form-publish.html",'
\n
\n\n \n
\n \n \n \n \n \n \n \n
\n
\n \n Loading...\n
\n
\n'),a.put("templates/event-form-step1.html",'
\n \n
\n
\n
\n
\n

\n 1\n \n

\n
\n
\n
\n\n
\n
\n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n\n
\n

\n
\n\n
\n \n
    \n
  • \n \n
  • \n
  • \n \n
  • \n
\n
\n
\n\n
\n
\n \n \n
\n

\n
\n
\n\n
\n \n
\n
\n
\n

\n
\n
\n
    \n
  • \n \n
  • \n
\n
\n
\n
\n
\n\n

\n \n \n

\n
\n\n
\n'),a.put("templates/event-form-step2.html",'
\n \n
\n
\n
\n
\n

\n 2\n \n \n

\n
\n
\n
\n\n \n \n
\n
\n'),a.put("templates/event-form-step3.html",'
\n\n
\n
\n
\n
\n
\n

\n 3\n \n \n

\n
\n
\n \n
\n
\n
\n\n
\n
\n \n
\n
\n
\n \n
\n \n
\n
\n \n
\n
\n \n \n \n \n \n \n
\n \n
\n
\n
\n
\n \n \n
\n\n\n
\n
\n
\n \n
\n \n \n
\n\n
\n \n \n
\n \n
\n\n
\n
\n
\n\n
\n
\n
\n
\n
\n \n \n \n \n \n \n
\n
\n \n bv. 1104CA\n \n \n \n \n \n
\n
\n
\n \n \n
\n\n
\n \n \n \n \n
\n
\n\n \n
\n\n
\n'), a.put("templates/event-form-step4.html",'
\n\n \n
\n
\n
\n
\n

\n 4\n \n

\n
\n
\n
\n\n
\n
\n \n \n\n
\n \n
\n\n
\n

\n \n \n \n

\n
\n
\n
\n\n \n\n
\n \n
    \n
  • \n {{error}}\n
  • \n
\n
\n\n
\n
\n\n

\n \n \n \n

\n\n
\n\n \n\n \n
\n\n
\n
\n

\n

\n\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n
\n
\n\n

\n \n

\n \n\n
\n\n
\n'),a.put("templates/event-form-step5.html",'
\n \n
\n\n
\n
\n
\n

\n 5\n \n \n

\n \n
\n
\n
\n\n
\n
\n\n
\n
\n
\n \n
\n
\n

\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n \n\n

\n \n \n \n \n \n \n

\n

\n

\n

\n \n \n

\n
\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n

\n
\n
\n
\n
\n
\n
\n
\n
\n\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n
\n \n \n \n \n \n \n
\n
\n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n\n \n \n\n
\n
\n
\n \n \n \n
\n\n
\n
\n \n \n
\n\n
\n
\n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n \n \n
\n \n
\n
\n
\n

\n \n
\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n
\n\n
\n\n
\n
\n\n \n
\n\n
\n\n
\n
\n \n

\n
\n\n
\n

\n
\n
\n
\n \n \n \n\n
\n
\n
©
\n
\n\n
\n \n \n \n
\n\n
\n
\n
\n
\n\n
\n \n
\n
\n\n
\n\n
\n\n
\n
\n'),a.put("templates/event-form.html",'
\n
\n

\n
\n\n \n \n \n \n \n\n \n
\n'),a.put("templates/event-export-modal.html",'\n\n
\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n
\n\n
\n\n\n'),a.put("templates/export-job.template.html",'

\n \n \n \n \n \n \n Downloaden\n \n

\n'),a.put("templates/export-modal-buttons.directive.html",'\n'),a.put("templates/query-search-bar.html",'\n'),a.put("templates/label-creator.html",'

Label toevoegen

\n\n
\n
\n
\n
\n
\n \n \n

Er bestaat al een label met deze naam.

\n

Een label naam is verplicht.

\n

Een label moet uit minstens 2 tekens bestaan.

\n

Een label mag maximum 255 tekens bevatten.

\n

Een label naam mag geen puntkomma bevatten.

\n
\n
\n
\n
\n
\n
\n \n
\n
\n \n
\n
\n\n \n
\n
\n\n
\n
\n \n
\n
\n
\n'), a.put("templates/label-editor.html",'

Label bewerken

\n\n
\n \n
\n\n
\n
\n
\n
\n
\n \n \n

Een label naam is verplicht.

\n

Een label moet uit minstens 2 tekens bestaan.

\n

Een label mag maximum 255 tekens bevatten.

\n

Een label naam mag geen puntkomma bevatten.

\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
\n \n\n
\n \n
\n
\n'),a.put("templates/labels-list.html",'

Labels toevoegen

\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
NaamVerborgenVoorbehoudenUitgeslotenOpties
\n Bewerken\n
\n
\n \n
\n
\n
\n'),a.put("templates/moderation-offer.html",'

\n\n\n\n\n\n \n\n\n \n\n\n\n \n'),a.put("templates/moderation-summary.html",'
\n
\n
Moderatie aanbod "{{moc.offerId}}" wordt geladen.
\n\n
\n
\n
\n \n \n \n\n \n

\n
\n
\n\n

\n \n

\n\n
\n\n \n Alle info bekijken\n  \n \n Bewerken\n \n
\n
\n \n
Geen afbeelding
\n
\n
\n
\n
Toegevoegd door\n \n \n \n \n \n \n
\n
\n \n
\n
\n
\n'),a.put("templates/reject-offer-confirm-modal.html",'\n'),a.put("templates/moderation-list.html",'

Valideren

\n\n
\n \n
\n\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n\n
\n
\n

\n \n

\n
\n
\n \n \n
\n
\n \n
\n
\n'),a.put("templates/organization-delete.modal.html",'\n\n'),a.put("templates/organization-search-item.html",'\n \n \n \n
\n \n \n \n \n \n \n
\n
\n \n \n
\n Bewerken\n \n \n
\n \n\n'),a.put("templates/organization-search.html",'

Organisaties

\n\n
\n
\n \n
\n
\n \n
\n \n
\n\n
\n
\n \n \n \n
\n
\n \n \n \n \n \n \n \n \n \n \n \n
NaamAdresOpties
\n \n
\n
\n
\n
\n'),a.put("templates/role-delete-confirm-modal.html",'\n\n'),a.put("templates/role-form.html",'

Role bewerken

\n\n
\n \n
\n\n
\n
\n
\n
\n \n

\n Wijzigen

\n
\n
\n \n \n

Een role naam is verplicht.

\n

Een role mag maximum 255 tekens bevatten.

\n

Een role moet uit minstens 3 tekens bestaan.

\n\n
\n \n\n \n
\n
\n
\n
\n
\n \n

\n Wijzigen\n Verwijderen

\n
\n
\n
\n \n \n
\n \n \n
\n
\n
\n
\n
\n \n \n
\n
\n \n
\n
\n \n
\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n \n
\n
\n \n \n \n
\n
\n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
E-mailadresVerwijderen
Lidmaatschap verwijderen
\n
\n
\n Er hangen nog geen gebruikers aan deze rol. Voeg een gebruiker aan deze rol toe door zijn/haar e-mailadres hierboven in te geven.\n
\n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Toegevoegde labelsVerwijderen
Lidmaatschap verwijderenDit label is niet voorbehouden
\n
\n
\n Er hangen nog geen labels aan deze rol.\n
\n
\n
\n
\n
\n
\n
\n'),a.put("templates/roles-list.html",'

Rollen toevoegen

\n\n
\n
\n \n
\n
\n \n
\n \n
\n\n
\n
\n \n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n
NaamOpties
\n
\n \n \n
\n
\n \n
\n
\n
\n'),a.put("templates/search-label.html",'\n {{$item.name}}\n \n
\n Suggesties laden\n
\n
\n \n
\n \n (nieuw label toevoegen)\n
\n
\n
\n'), a.put("templates/user-editor.html",'

Gebruiker bewerken

\n\n
\n \n
\n\n
\n
\n
\n E-mailadres\n
\n
\n \n
\n
\n
\n
\n Nick\n
\n
\n \n
\n
\n
\n
\n
\n
\n

Rollen

\n
\n
\n \n
\n

\n Er zijn nog geen rollen toegekend aan deze gebruiker.\n

\n
\n
    \n
  • \n \n \n \n
  • \n
\n \n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n'),a.put("templates/user-role-suggestion.html",''),a.put("templates/users-list.html",'

Gebruikers

\n\n
\n
\n \n
\n
\n \n
\n
\n\n
\n
\n \n \n \n
\n
\n'),a.put("templates/event-migration-footer.component.html",'
\n \n
\n'),a.put("templates/event-migration.html",'
\n \n\n \n\n \n
\n\n'),a.put("templates/translate-address.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n \n \n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n \n
\n
\n \n
\n
\n \n \n
\n
\n
\n
\n
'),a.put("templates/translate-description.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/translate-images.html",'
\n
\n
\n

Afbeelding(en)

\n
\n
\n
\n
\n

Origineel

\n
\n
\n
\n
\n
\n
\n\n
\n \n
\n\n
\n
\n
©
\n
\n\n
\n \n \n
\n \n \n
\n \n
\n\n\n
\n
\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n
\n
\n
\n
\n
\n \n \n \n\n
\n
\n
©
\n
\n\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n
'),a.put("templates/translate-tariffs.html",'
\n
\n
\n

{{$index+1}}

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/translate-title.html",'
\n
\n
\n

\n
\n
\n
\n
\n

\n
\n
\n

\n
\n
\n\n
\n
\n

{{code}}

\n
\n
\n \n
\n
\n
\n
\n
'),a.put("templates/offer-translate.html",'
\n

\n

\n
\n\n
\n\n \n\n
\n \n \n\n \n \n\n \n \n\n \n \n
\n\n \n\n
\n'),a.put("templates/organizer-address.html",'
\n
\n
\n \n
\n
\n \n
\n
\n\n
\n \n \n \n \n \n
\n\n
\n
\n
\n \n \n
\n \n \n \n \n \n \n \n
\n
\n
\n \n \n

\n \n \n

\n
\n
\n
\n
\n \n bv. 1104CA\n \n \n \n \n \n \n \n
\n
\n
\n
\n
\n Leegmaken\n

\n

\n

\n
\n
\n'),a.put("templates/organizer-contact.html",'
\n
\n

\n
\n
\n\n\n
\n
\n
    \n
  • \n {{contact.value}}\n \n
  • \n
\n
\n
\n\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n \n \n
\n

\n \n

\n

\n \n

\n
\n
\n
\n
\n\n \n\n \n\n
\n
\n
\n
\n\n
\n
\n
    \n
  • \n
  • \n
  • \n
\n
\n
\n'),a.put("templates/organizer-detail.html",'
\n \n
\n\n

\n\n
\n
\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n
\n \n \n
\n \n \n \n \n
\n \n
\n
\n
\n \n\n
\n \n
\n\n
\n \n
\n
\n
\n'), -a.put("templates/organizer-form.html",'

\n\n
\n \n
\n\n
\n
\n
\n

\n Deze URL is al in gebruik door een andere organisatie.
\n Er ging iets mis met het controleren van de website.
\n Gelieve een website in te vullen.
\n Gelieve een naam in te vullen.
\n
\n Gelieve een geldig adres in te vullen.
\n Gelieve alle contactinfo correct in te vullen.
\n Er ging iets mis tijdens het opslaan.
\n

\n\n
\n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n

De officiële publieke naam van de organisatie.

\n
\n
\n
\n
\n\n \n \n\n \n Annuleren\n\n
\n \n
\n'),a.put("templates/place-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n\n
\n
\n
\n \n \n \n \n
\n
\n\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::place.name}}
{{::translateType(place.type.label)}}
\n
\n
{{::place.address.streetAddress}}
\n {{::place.address.postalCode}} {{::place.address.addressLocality}}
\n {{::place.address.addressCountry}}
\n \n \n

\n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n {{ageRange}}\n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/delete-search-modal.html",'\n\n\n'),a.put("templates/save-search-modal.html",'
\n\n \n\n \n\n \n
\n \n\n \n
\n\n
\n \n \n \n\n
\n\n\n
\n'),a.put("templates/save-search.directive.html",'

\n \n \n \n \n

\n'),a.put("templates/saved-searches-list.html",'
\n

\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n Query\n \n
\n

\n \n

\n

\n
\n \n \n \n
\n
\n'),a.put("templates/event-link.directive.html",'\n'),a.put("templates/label-select.html",'

\n\n
\n
\n \n
\n
\n\n
\n


\n

    \n
  • \n
  • \n
  • \n
\n
\n\n
    \n
  • \n {{label.name}} ×\n
  • \n
\n'),a.put("templates/offer-accessibility-info.component.html",'
\n
\n \n \n voorziening(en)\n \n
    \n
  • \n
\n
\n\n \n
\n\n
\n \n
'),a.put("templates/query-editor-daterangepicker.directive.html",'
\n

\n \n \n \n \n

\n\n tot\n\n

\n \n \n \n \n

\n
'),a.put("templates/query-editor-field.directive.html",'
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n tot\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n
\n'),a.put("templates/query-editor-modal.html",'\n\n\n'),a.put("templates/query-editor.directive.html",'
\n
\n\n
\n
\n
\n

\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n\n
\n \n
\n
\n
\n
\n\n \n
\n \n \n \n \n
\n
\n'),a.put("templates/search-bar.directive.html",'

Zoeken

\n\n\n\n\n
    \n
  • \n
\n'),a.put("templates/event.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n \n \n \n \n \n ,…,\n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Dit evenement is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{eventCtrl.addedLabel}}\' is niet gelukt.\n
\n
\n Het label \'{{eventCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'), +a.put("templates/organizer-form.html",'

\n\n
\n \n
\n\n
\n
\n
\n

\n Deze URL is al in gebruik door een andere organisatie.
\n Er ging iets mis met het controleren van de website.
\n Gelieve een website in te vullen.
\n Gelieve een naam in te vullen.
\n
\n Gelieve een geldig adres in te vullen.
\n Gelieve alle contactinfo correct in te vullen.
\n Er ging iets mis tijdens het opslaan.
\n

\n\n
\n \n \n \n
\n
\n
\n\n
\n
\n
\n \n \n

De officiële publieke naam van de organisatie.

\n
\n
\n
\n
\n\n \n \n\n \n Annuleren\n\n
\n \n
\n'),a.put("templates/place-detail.html",'
\n \n\n
\n
\n

\n
\n
\n
\n\n
\n

\n

\n
\n\n
\n

\n\n
\n
\n
\n \n \n \n \n
\n
\n\n
\n \n\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::place.name}}
{{::translateType(place.type.label)}}
\n
\n
{{::place.address.streetAddress}}
\n {{::place.address.postalCode}} {{::place.address.addressLocality}}
\n {{::place.address.addressCountry}}
\n \n \n

\n

\n

\n \n

\n

\n \n

\n

\n \n

\n
\n {{ageRange}}\n \n
\n \n
\n
\n\n
\n
\n

\n \n

\n
\n
\n
\n
\n \n
\n \n
\n API: \n
\n
\n API key: \n ()\n
\n
\n
\n
\n
\n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n
\n
\n
\n'),a.put("templates/delete-search-modal.html",'\n\n\n'),a.put("templates/save-search-modal.html",'
\n\n \n\n \n\n \n
\n \n\n \n
\n\n
\n \n \n \n\n
\n\n\n
\n'),a.put("templates/save-search.directive.html",'

\n \n \n \n \n

\n'),a.put("templates/saved-searches-list.html",'
\n

\n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n Query\n \n
\n

\n \n

\n

\n
\n \n \n \n
\n
\n'),a.put("templates/event-link.directive.html",'\n'),a.put("templates/label-select.html",'

\n\n
\n
\n \n
\n
\n\n
\n


\n

    \n
  • \n
  • \n
  • \n
\n
\n\n
    \n
  • \n {{label.name}} ×\n
  • \n
\n'),a.put("templates/offer-accessibility-info.component.html",'
\n
\n \n \n voorziening(en)\n \n
    \n
  • \n
\n
\n\n \n
\n\n
\n \n
'),a.put("templates/query-editor-daterangepicker.directive.html",'
\n

\n \n \n \n \n

\n\n tot\n\n

\n \n \n \n \n

\n
'),a.put("templates/query-editor-field.directive.html",'
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n\n
\n
\n \n
\n
\n \n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n \n
\n\n
\n \n
\n\n
\n \n
\n\n
\n \n tot\n \n
\n
\n
\n\n
\n
\n \n
\n
\n\n
\n \n
\n
\n'),a.put("templates/query-editor-modal.html",'\n\n\n'),a.put("templates/query-editor.directive.html",'
\n
\n\n
\n
\n
\n

\n
\n
\n
\n \n \n
\n
\n
\n \n
\n
\n
\n\n
\n
\n
\n \n
\n\n
\n \n
\n
\n
\n
\n\n \n
\n \n \n \n \n
\n
\n'),a.put("templates/search-bar.directive.html",'

Zoeken

\n\n\n\n\n
    \n
  • \n
\n'),a.put("templates/event.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n \n \n \n \n \n ,…,\n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ eventCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Dit evenement is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{eventCtrl.addedLabel}}\' is niet gelukt.\n
\n
\n Het label \'{{eventCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'), a.put("templates/place.directive.html",'
\n
\n
\n
\n \n
\n
\n\n
\n \n \n \n
\n
\n \n
\n
\n\n
\n
\n
\n\n
\n permanent\n \n \n \n \n \n
\n\n
\n
\n
\n  \n \n
\n
\n  \n \n \n \n \n \n \n
\n
\n  \n \n
\n
\n\n
\n gratis\n \n \n \n niet ingevoerd\n
\n\n
\n \n
\n\n
\n \n
\n
\n\n
\n
\n\n \n\n
\n
\n
\n Voer een {{ placeCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling in\n
\n\n
\n Wijzig de {{ placeCtrl.activeLanguage.toUpperCase()+\'_ADJECTIVE\' | translate }} vertaling\n
\n
\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-titel\n
\n
\n
\n\n\n
\n
\n
\n \n \n
\n
\n \n \n
\n
\n
\n Basis-beschrijving\n
\n
\n
\n\n
\n \n \n
\n
\n\n\n
\n
\n\n
\n
\n
\n {{event.name}}\n
\n
\n
\n
\n
\n\n
\n Deze plaats is nog niet gelabeld.\n \n
\n Het toevoegen van het label \'{{placeCtrl.labelsError.name}}\' is niet gelukt.\n
\n
\n Het label \'{{placeCtrl.addedLabel}}\' werd succesvol toegevoegd.\n
\n
\n \n
\n
\n
\n
\n
\n
\n'),a.put("templates/search-facilities-modal.html",'\n\n\n'),a.put("templates/search.html",'
\n
\n\n
\n
\n
\n \n
\n
\n
\n\n

\n Geen evenementen gevonden, probeer een andere zoekopdracht.\n

\n\n
\n
\n\n
\n
Wat
\n
Waar
\n
Wanneer
\n
\n \n
\n
\n\n
\n
\n \n \n\n \n \n \n \n
\n
\n\n
\n
\n \n \n \n \n \n\n \n
\n
\n
\n\n
\n \n \n\n \n \n
\n\n\n \n\n
\n \n uitgevoerde query: {{realQuery}}\n \n
\n
\n
\n
\n Zoeken…\n
\n
\n'),a.put("templates/card-systems.html",'
\n
\n \n \n Loading...\n \n \n Saving...\n \n\n
\n
\n
\n
\n \n
\n
\n\n\n
\n \n
\n
\n
\n\n \n
\n
'),a.put("templates/uitpasInfo.html",'
\n
\n
\n \n \n \n
\n
\n
\n

\n
\n\n
\n \n\n \n \n
\n
\n
\n
'),a.put("templates/organisation-suggestion.directive.html",'\nUiTPAS'),a.put("templates/organisation-uitpas-typeahead-template.html",'\n \n UiTPAS\n')}])}(); \ No newline at end of file From dcd7eb335b8a5e131ccdebf4173d7af73c056e3a Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:28:35 +0100 Subject: [PATCH 08/13] III-6019 - Fix test --- src/saved-searches/components/save-search.directive.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/saved-searches/components/save-search.directive.spec.js b/src/saved-searches/components/save-search.directive.spec.js index cdb6ed0b2..83e2206ac 100644 --- a/src/saved-searches/components/save-search.directive.spec.js +++ b/src/saved-searches/components/save-search.directive.spec.js @@ -41,7 +41,7 @@ describe('Directive: udbSaveSearch', function () { }); it('saves the search when confirming the modal', function () { - modalInstance.close(name); + modalInstance.close({name: name, type: 'new'}); $rootScope.$digest(); apiRequest.resolve(); expect(savedSearchesService.createSavedSearch).toHaveBeenCalledWith(name, 'city:leuven'); From 5bb857483e8cacd7506965c7da6175301cf398f0 Mon Sep 17 00:00:00 2001 From: Bram Pauwelyn Date: Thu, 7 Mar 2024 15:41:20 +0100 Subject: [PATCH 09/13] III-6019 - Fix tests? --- dist/udb3-angular.js | 34090 ---------------- dist/udb3-angular.min.css | 8 - dist/udb3-angular.min.js | 37 - .../save-search-modal.controller.js | 32 +- .../components/save-search.directive.spec.js | 2 +- 5 files changed, 17 insertions(+), 34152 deletions(-) delete mode 100644 dist/udb3-angular.js delete mode 100644 dist/udb3-angular.min.css delete mode 100644 dist/udb3-angular.min.js diff --git a/dist/udb3-angular.js b/dist/udb3-angular.js deleted file mode 100644 index d2f3fbbae..000000000 --- a/dist/udb3-angular.js +++ /dev/null @@ -1,34090 +0,0 @@ -// Source: .tmp/udb3-angular.modules.js -(function () { -'use strict'; - -/** - * @ngdoc module - * @name udb.core - * @description - * The udb core module - */ -angular - .module('udb.core', [ - 'ngCookies', - 'ngSanitize', - 'ui.bootstrap', - 'ui.select', - 'udb.config', - 'udb.search', - 'udb.entry', - 'udb.event-form', - 'udb.offer-translate', - 'udb.export', - 'udb.event-detail', - 'udb.place-detail', - 'udb.organizers', - 'udb.dashboard', - 'udb.saved-searches', - 'udb.media', - 'udb.management', - 'udb.uitpas', - 'udb.cultuurkuur', - 'btford.socket-io', - 'pascalprecht.translate', - 'angular.filter', - 'angular-jwt' - ]) - .constant('Levenshtein', window.Levenshtein); - -'use strict'; - -/** - * @ngdoc module - * @name udb.router - * @description - * The udb routing module - */ -angular - .module('udb.router', [ - 'udb.core' - ]); - -angular.module('udb.config', []) - -.constant('appConfig', {}) - -.constant('taxonomyTerms', [{id:'0.50.4.0.0',domain:'eventtype',name:{nl:'Concert',fr:'Concert',de:'Konzert',en:'Concert'},scope:['events'],otherSuggestedTerms:[{id:'1.8.3.5.0',domain:'theme',name:{nl:'Amusementsmuziek',fr:'Cabaret',de:'Schlager',en:'Cabaret music'},scope:['events']},{id:'1.8.3.3.0',domain:'theme',name:{nl:'Dance muziek',fr:'Musique de danse',de:'Tanzmusik',en:'Dance music'},scope:['events']},{id:'1.8.4.0.0',domain:'theme',name:{nl:'Folk en wereldmuziek',fr:'Musique folklorique et mondiale',de:'Folk und World',en:'Folk and world music'},scope:['events']},{id:'1.8.3.2.0',domain:'theme',name:{nl:'Hip hop, rnb en rap',fr:'Hip hop, rnb et rap',de:'Hip-Hop, R und B und Rap',en:'Hip hop, rnb and rap'},scope:['events']},{id:'1.8.2.0.0',domain:'theme',name:{nl:'Jazz en blues',fr:'Jazz et blues',de:'Jazz und Blues',en:'Jazz and blues'},scope:['events']},{id:'1.8.1.0.0',domain:'theme',name:{nl:'Klassieke muziek',fr:'Musique classique',de:'Klassische Musik',en:'Classical music'},scope:['events']},{id:'1.8.3.1.0',domain:'theme',name:{nl:'Pop en rock',fr:'Pop et rock',de:'Pop und Rock',en:'Pop and rock'},scope:['events']}],label:'Concert',labelnl:'Concert',labelfr:'Concert',labelen:'Concert',labelde:'Konzert'},{id:'0.52.0.0.0',domain:'theme',name:{nl:'Circus',fr:'Cirque',de:'Zirkus',en:'Circus'},scope:['events'],label:'Circus',labelnl:'Circus',labelfr:'Cirque',labelen:'Circus',labelde:'Zirkus'},{id:'0.54.0.0.0',domain:'eventtype',name:{nl:'Dansvoorstelling',fr:'Spectacle de danse',de:'Tanz-Performance',en:'Dance performance'},scope:['events'],otherSuggestedTerms:[{id:'1.9.1.0.0',domain:'theme',name:{nl:'Ballet en klassieke dans',fr:'Ballet et danse classique',de:'Ballett und klassischer Tanz',en:'Classical dance and ballet'},scope:['events']},{id:'1.9.2.0.0',domain:'theme',name:{nl:'Moderne dans',fr:'Danse moderne',de:'Modern Dance',en:'Modern dance'},scope:['events']},{id:'1.9.5.0.0',domain:'theme',name:{nl:'Stijl en salondansen',fr:'Danse de salon et stylée',de:'Stil-und Gesellschaftstanz',en:'Ballroom dancing'},scope:['events']},{id:'1.9.3.0.0',domain:'theme',name:{nl:'Volksdans en werelddans',fr:'Danse folklorique et mondiale',de:'Folk-und World Dance',en:'Folk dance'},scope:['events']}],label:'Dansvoorstelling',labelnl:'Dansvoorstelling',labelfr:'Spectacle de danse',labelen:'Dance performance',labelde:'Tanz-Performance'},{id:'0.5.0.0.0',domain:'eventtype',name:{nl:'Festival',fr:'Festival',de:'Festival',en:'Festival'},scope:['events'],otherSuggestedTerms:[{id:'1.8.3.5.0',domain:'theme',name:{nl:'Amusementsmuziek',fr:'Cabaret',de:'Schlager',en:'Cabaret music'},scope:['events']},{id:'0.52.0.0.0',domain:'theme',name:{nl:'Circus',fr:'Cirque',de:'Zirkus',en:'Circus'},scope:['events']},{id:'1.8.3.3.0',domain:'theme',name:{nl:'Dance muziek',fr:'Musique de danse',de:'Tanzmusik',en:'Dance music'},scope:['events']},{id:'1.8.4.0.0',domain:'theme',name:{nl:'Folk en wereldmuziek',fr:'Musique folklorique et mondiale',de:'Folk und World',en:'Folk and world music'},scope:['events']},{id:'1.3.10.0.0',domain:'theme',name:{nl:'Humor en comedy',fr:'L\'humour et la comédie',de:'Humor und comedy',en:'Humor and comedy'},scope:['events']},{id:'1.8.2.0.0',domain:'theme',name:{nl:'Jazz en blues',fr:'Jazz et blues',de:'Jazz und Blues',en:'Jazz and blues'},scope:['events']},{id:'1.8.1.0.0',domain:'theme',name:{nl:'Klassieke muziek',fr:'Musique classique',de:'Klassische Musik',en:'Classical music'},scope:['events']},{id:'1.41.0.0.0',domain:'theme',name:{nl:'Kunst en kunsteducatie',fr:'Arts et formation artistique',de:'Kunst und Kunsterziehung',en:'Arts education'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.7.14.0.0',domain:'theme',name:{nl:'Meerdere filmgenres',fr:'Films de tous genres',de:'Mehrere Filmgenres',en:'Multiple film genres'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.8.3.1.0',domain:'theme',name:{nl:'Pop en rock',fr:'Pop et rock',de:'Pop und Rock',en:'Pop and rock'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.3.1.0.0',domain:'theme',name:{nl:'Tekst en muziektheater',fr:'Théâtre dramatique et musical',de:'Text und Musik',en:'Theatre and Musical theatre'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']}],label:'Festival',labelnl:'Festival',labelfr:'Festival',labelen:'Festival',labelde:'Festival'},{id:'0.50.6.0.0',domain:'eventtype',name:{nl:'Film',fr:'Cinéma',de:'Film',en:'Film'},scope:['events'],otherSuggestedTerms:[{id:'1.7.2.0.0',domain:'theme',name:{nl:'Actie- en avonturenfilm',fr:'Film d\'action et d\'aventure',de:'Action- und Abenteuerfilm',en:'Action and adventure film'},scope:['events']},{id:'1.7.12.0.0',domain:'theme',name:{nl:'Animatie en kinderfilms',fr:'Films animés et films pour enfants',de:'Animations-und Kinderfilme',en:'Animation and children\'s films'},scope:['events']},{id:'1.7.11.0.0',domain:'theme',name:{nl:'Cinefiel',fr:'Cinéphile',de:'Cinephile',en:'Independent'},scope:['events']},{id:'1.7.1.0.0',domain:'theme',name:{nl:'Documentaires en reportages',fr:'Documentaires et reportages',de:'Dokumentationen und Reportagen',en:'Documentary'},scope:['events']},{id:'1.7.4.0.0',domain:'theme',name:{nl:'Drama',fr:'Films dramatiques',de:'Drama',en:'Drama'},scope:['events']},{id:'1.7.10.0.0',domain:'theme',name:{nl:'Filmmusical',fr:'Comédie musicale',de:'Musical',en:'Musical'},scope:['events']},{id:'1.7.6.0.0',domain:'theme',name:{nl:'Griezelfilm of horror',fr:'Films d\'épouvantes ou orreurs',de:'Horror',en:'Horror'},scope:['events']},{id:'1.7.8.0.0',domain:'theme',name:{nl:'Historische film',fr:'Films historiques',de:'Historische Film',en:'Historical film'},scope:['events']},{id:'1.7.3.0.0',domain:'theme',name:{nl:'Komedie',fr:'Comédie',de:'Komödie',en:'Comedy'},scope:['events']},{id:'1.7.13.0.0',domain:'theme',name:{nl:'Kortfilm',fr:'Court métrage',de:'Kurzfilm',en:'Short film'},scope:['events']},{id:'1.7.7.0.0',domain:'theme',name:{nl:'Science fiction',fr:'Science fiction',de:'Science-Fiction',en:'Science fiction'},scope:['events']},{id:'1.7.15.0.0',domain:'theme',name:{nl:'Thriller',fr:'Films à suspense',de:'Thriller',en:'Thriller'},scope:['events']}],label:'Film',labelnl:'Film',labelfr:'Cinéma',labelen:'Film',labelde:'Film'},{id:'0.3.2.0.0',domain:'eventtype',name:{nl:'Lezing of congres',fr:'Conférence ou congrès',de:'Vortrag oder Gespräch',en:'Lecture or conference'},scope:['events'],otherSuggestedTerms:[{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']},{id:'1.42.0.0.0',domain:'theme',name:{nl:'Creativiteit',fr:'Créativité',de:'Kreativität',en:'Creativity'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.11.0.0.0',domain:'theme',name:{nl:'Geschiedenis',fr:'Histoire',de:'Geschichte',en:'History'},scope:['events']},{id:'1.37.1.0.0',domain:'theme',name:{nl:'Gezondheid en zorg',fr:'Santé et soins',de:'Gesundheit und Pflege',en:'Health and care'},scope:['events']},{id:'1.41.0.0.0',domain:'theme',name:{nl:'Kunst en kunsteducatie',fr:'Arts et formation artistique',de:'Kunst und Kunsterziehung',en:'Arts education'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.0.0.0',domain:'theme',name:{nl:'Opvoeding',fr:'Éducation',de:'Bildung',en:'Education'},scope:['events']},{id:'1.61.0.0.0',domain:'theme',name:{nl:'Persoon en relaties',fr:'Hommes et relations',de:'Person und Gesellschaft',en:'People and society'},scope:['events']},{id:'1.10.5.0.0',domain:'theme',name:{nl:'Poezie',fr:'Poésie',de:'Poesie',en:'Poetry'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']},{id:'1.44.0.0.0',domain:'theme',name:{nl:'Zingeving, filosofie en religie',fr:'Sense de la vie, philosophie et religion',de:'Philosophie und Religion',en:'Philosophy and religion'},scope:['events']}],label:'Lezing of congres',labelnl:'Lezing of congres',labelfr:'Conférence ou congrès',labelen:'Lecture or conference',labelde:'Vortrag oder Gespräch'},{id:'0.55.0.0.0',domain:'eventtype',name:{nl:'Theatervoorstelling',fr:'Théâtre',de:'Theater',en:'Theatre'},scope:['events'],otherSuggestedTerms:[{id:'0.52.0.0.0',domain:'theme',name:{nl:'Circus',fr:'Cirque',de:'Zirkus',en:'Circus'},scope:['events']},{id:'1.3.5.0.0',domain:'theme',name:{nl:'Figuren en poppentheater',fr:'Théâtre de marionnettes',de:'Figuren und Marionetten',en:'Puppetry'},scope:['events']},{id:'1.3.10.0.0',domain:'theme',name:{nl:'Humor en comedy',fr:'L\'humour et la comédie',de:'Humor und comedy',en:'Humor and comedy'},scope:['events']},{id:'1.3.4.0.0',domain:'theme',name:{nl:'Mime en bewegingstheater',fr:'Mime et theéâtre de mouvements',de:'Mime und Bewegungstheater',en:'Mime '},scope:['events']},{id:'1.4.0.0.0',domain:'theme',name:{nl:'Musical',fr:'Comédie musicale',de:'Musical',en:'Musical'},scope:['events']},{id:'1.5.0.0.0',domain:'theme',name:{nl:'Opera en operette',fr:'Opéra et opérette',de:'Oper und Operette',en:'Opera and operetta'},scope:['events']},{id:'1.3.1.0.0',domain:'theme',name:{nl:'Tekst en muziektheater',fr:'Théâtre dramatique et musical',de:'Text und Musik',en:'Theatre and Musical theatre'},scope:['events']}],label:'Theatervoorstelling',labelnl:'Theatervoorstelling',labelfr:'Théâtre',labelen:'Theatre',labelde:'Theater'},{id:'0.19.0.0.0',domain:'eventtype',name:{nl:'Sportwedstrijd bekijken',fr:'Assister à une compétition sportive',de:'Sport Antzeigen',en:'Sports Viewing'},scope:['events'],otherSuggestedTerms:[{id:'1.51.14.0.0',domain:'theme',name:{nl:'Atletiek, wandelen en fietsen',fr:'Athlétisme, marche et cyclisme',de:'Leichtathletik, Wandern und Radfahren',en:'Athletics, running and cycling'},scope:['events']},{id:'1.51.13.0.0',domain:'theme',name:{nl:'Bal en racketsport',fr:'Sports au ballons et raquettes',de:'Ball und Schläger',en:'Ball and racket sports'},scope:['events']},{id:'1.51.6.0.0',domain:'theme',name:{nl:'Fitness, gymnastiek, dans en vechtsport',fr:'Fitness, gymnastique, danse et arts martiaux',de:'Fitness, Tanz und Kampfkunst',en:'Fitness, gymnastics, dance and martial arts'},scope:['events']},{id:'1.58.8.0.0',domain:'theme',name:{nl:'Lucht en motorsport',fr:'Sports aero et moteurs',de:'Luft-und Motorsport',en:'Air and motorsports'},scope:['events']},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events']},{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events']},{id:'1.51.10.0.0',domain:'theme',name:{nl:'Volkssporten',fr:'Sports folkloriques',de:'Sport Menschen',en:'Folklore sports'},scope:['events']},{id:'1.51.3.0.0',domain:'theme',name:{nl:'Zwemmen en watersport',fr:'Natation et sports nautiques',de:'Schwimmen und Wassersport',en:'Swimming and water sports'},scope:['events']}],label:'Sportwedstrijd bekijken',labelnl:'Sportwedstrijd bekijken',labelfr:'Assister à une compétition sportive',labelen:'Sports Viewing',labelde:'Sport Antzeigen'},{id:'0.37.0.0.0',domain:'eventtype',name:{nl:'Markt, braderie of kermis',fr:'Marché, foire ou fête foraine',de:'Markt oder Messe',en:'Market, fair or funfair'},scope:['events'],otherSuggestedTerms:[{id:'1.17.0.0.0',domain:'theme',name:{nl:'Antiek en brocante',fr:'Antiquités ou brocantes',de:'Antik-und Flohmarkt',en:'Antiques'},scope:['events']},{id:'1.66.0.0.0',domain:'theme',name:{nl:'Economie',fr:'Économie',de:'Wirtschaft',en:'Economy'},scope:['events']},{id:'1.62.0.0.0',domain:'theme',name:{nl:'Gezondheid en wellness',fr:'Santé et bien-être',de:'Gesundheit und Wellness',en:'Health and wellness'},scope:['events']},{id:'1.63.0.0.0',domain:'theme',name:{nl:'Landbouw en platteland',fr:'Agriculture et campagne',de:'Landwirtschaft ',en:'Agriculture'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']}],label:'Markt, braderie of kermis',labelnl:'Markt, braderie of kermis',labelfr:'Marché, foire ou fête foraine',labelen:'Market, fair or funfair',labelde:'Markt oder Messe'},{id:'0.15.0.0.0',domain:'eventtype',name:{nl:'Natuurgebied of park',fr:'Zone naturel ou parc',de:'Landschaft oder Natur',en:'Landscape or nature reserve'},scope:['places'],label:'Natuurgebied of park',labelnl:'Natuurgebied of park',labelfr:'Zone naturel ou parc',labelen:'Landscape or nature reserve',labelde:'Landschaft oder Natur'},{id:'0.14.0.0.0',domain:'eventtype',name:{nl:'Monument',fr:'Monument',de:'Denkmal',en:'Monument'},scope:['places'],label:'Monument',labelnl:'Monument',labelfr:'Monument',labelen:'Monument',labelde:'Denkmal'},{id:'0.12.0.0.0',domain:'eventtype',name:{nl:'Opendeurdag',fr:'Journée portes ouvertes',de:'Tag der offenen Tür',en:'Open house'},scope:['events'],otherSuggestedTerms:[{id:'1.2.1.0.0',domain:'theme',name:{nl:'Architectuur',fr:'Architecture',de:'Architektur',en:'Architecture'},scope:['events']},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.41.0.0.0',domain:'theme',name:{nl:'Kunst en kunsteducatie',fr:'Arts et formation artistique',de:'Kunst und Kunsterziehung',en:'Arts education'},scope:['events']},{id:'1.63.0.0.0',domain:'theme',name:{nl:'Landbouw en platteland',fr:'Agriculture et campagne',de:'Landwirtschaft ',en:'Agriculture'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']}],label:'Opendeurdag',labelnl:'Opendeurdag',labelfr:'Journée portes ouvertes',labelen:'Open house',labelde:'Tag der offenen Tür'},{id:'0.6.0.0.0',domain:'eventtype',name:{nl:'Beurs',fr:'Foire',de:'Aktienmarkt',en:'Fair'},scope:['events'],otherSuggestedTerms:[{id:'1.17.0.0.0',domain:'theme',name:{nl:'Antiek en brocante',fr:'Antiquités ou brocantes',de:'Antik-und Flohmarkt',en:'Antiques'},scope:['events']},{id:'1.7.2.0.0',domain:'theme',name:{nl:'Actie- en avonturenfilm',fr:'Film d\'action et d\'aventure',de:'Action- und Abenteuerfilm',en:'Action and adventure film'},scope:['events']},{id:'1.62.0.0.0',domain:'theme',name:{nl:'Gezondheid en wellness',fr:'Santé et bien-être',de:'Gesundheit und Wellness',en:'Health and wellness'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.10.8.0.0',domain:'theme',name:{nl:'Strips',fr:'Bandes dessinés',de:'Comics',en:'Comic books'},scope:['events']},{id:'1.65.0.0.0',domain:'theme',name:{nl:'Voeding',fr:'Nutrition',de:'Ernährung',en:'Nutrition'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']}],label:'Beurs',labelnl:'Beurs',labelfr:'Foire',labelen:'Fair',labelde:'Aktienmarkt'},{id:'0.0.0.0.0',domain:'eventtype',name:{nl:'Tentoonstelling',fr:'Exposition',de:'Ausstellung',en:'Exhibition'},scope:['events'],otherSuggestedTerms:[{id:'1.2.1.0.0',domain:'theme',name:{nl:'Architectuur',fr:'Architecture',de:'Architektur',en:'Architecture'},scope:['events']},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']},{id:'1.1.0.0.0',domain:'theme',name:{nl:'Audiovisuele kunst',fr:'Arts audiovisuels',de:'Audiovisuelle Kunst',en:'Audiovisual arts'},scope:['events']},{id:'1.0.2.0.0',domain:'theme',name:{nl:'Beeldhouwkunst',fr:'Sculpture',de:'Skulptur',en:'Sculpture'},scope:['events']},{id:'1.0.5.0.0',domain:'theme',name:{nl:'Decoratieve kunst',fr:'Arts décoratives',de:'Angewandte Kunst',en:'Decorative arts'},scope:['events']},{id:'1.2.2.0.0',domain:'theme',name:{nl:'Design',fr:'Design',de:'Design',en:'Design'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.0.6.0.0',domain:'theme',name:{nl:'Fotografie',fr:'Photographie',de:'Fotografie',en:'Photography'},scope:['events']},{id:'1.11.0.0.0',domain:'theme',name:{nl:'Geschiedenis',fr:'Histoire',de:'Geschichte',en:'History'},scope:['events']},{id:'1.0.4.0.0',domain:'theme',name:{nl:'Grafiek',fr:'Art grafique',de:'Grafik',en:'Graphics'},scope:['events']},{id:'1.0.3.0.0',domain:'theme',name:{nl:'Installatiekunst',fr:'Art d\'installation',de:'Installation Art',en:'Installation art'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.49.0.0.0',domain:'theme',name:{nl:'Mode',fr:'Mode',de:'Mode',en:'Fashion'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.0.1.0.0',domain:'theme',name:{nl:'Schilderkunst',fr:'Peinture',de:'Malerei',en:'Painting'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']}],label:'Tentoonstelling',labelnl:'Tentoonstelling',labelfr:'Exposition',labelen:'Exhibition',labelde:'Ausstellung'},{id:'0.7.0.0.0',domain:'eventtype',name:{nl:'Begeleide uitstap of rondleiding',fr:'Tour ou excursion guidée',de:'Geführte Wanderung oder Tour',en:'Guided tour'},scope:['events'],otherSuggestedTerms:[{id:'1.2.1.0.0',domain:'theme',name:{nl:'Architectuur',fr:'Architecture',de:'Architektur',en:'Architecture'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.11.0.0.0',domain:'theme',name:{nl:'Geschiedenis',fr:'Histoire',de:'Geschichte',en:'History'},scope:['events']},{id:'1.41.0.0.0',domain:'theme',name:{nl:'Kunst en kunsteducatie',fr:'Arts et formation artistique',de:'Kunst und Kunsterziehung',en:'Arts education'},scope:['events']},{id:'1.63.0.0.0',domain:'theme',name:{nl:'Landbouw en platteland',fr:'Agriculture et campagne',de:'Landwirtschaft ',en:'Agriculture'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']},{id:'1.44.0.0.0',domain:'theme',name:{nl:'Zingeving, filosofie en religie',fr:'Sense de la vie, philosophie et religion',de:'Philosophie und Religion',en:'Philosophy and religion'},scope:['events']}],label:'Begeleide uitstap of rondleiding',labelnl:'Begeleide uitstap of rondleiding',labelfr:'Tour ou excursion guidée',labelen:'Guided tour',labelde:'Geführte Wanderung oder Tour'},{id:'0.3.1.0.0',domain:'eventtype',name:{nl:'Lessenreeks',fr:'Série de cours',de:'Unterrichtsreihe',en:'Course series'},scope:['events'],otherSuggestedTerms:[{id:'1.9.1.0.0',domain:'theme',name:{nl:'Ballet en klassieke dans',fr:'Ballet et danse classique',de:'Ballett und klassischer Tanz',en:'Classical dance and ballet'},scope:['events']},{id:'1.9.2.0.0',domain:'theme',name:{nl:'Moderne dans',fr:'Danse moderne',de:'Modern Dance',en:'Modern dance'},scope:['events']},{id:'1.9.5.0.0',domain:'theme',name:{nl:'Stijl en salondansen',fr:'Danse de salon et stylée',de:'Stil-und Gesellschaftstanz',en:'Ballroom dancing'},scope:['events']},{id:'1.9.3.0.0',domain:'theme',name:{nl:'Volksdans en werelddans',fr:'Danse folklorique et mondiale',de:'Folk-und World Dance',en:'Folk dance'},scope:['events']},{id:'1.1.0.0.0',domain:'theme',name:{nl:'Audiovisuele kunst',fr:'Arts audiovisuels',de:'Audiovisuelle Kunst',en:'Audiovisual arts'},scope:['events']},{id:'1.0.2.0.0',domain:'theme',name:{nl:'Beeldhouwkunst',fr:'Sculpture',de:'Skulptur',en:'Sculpture'},scope:['events']},{id:'0.52.0.0.0',domain:'theme',name:{nl:'Circus',fr:'Cirque',de:'Zirkus',en:'Circus'},scope:['events']},{id:'1.42.0.0.0',domain:'theme',name:{nl:'Creativiteit',fr:'Créativité',de:'Kreativität',en:'Creativity'},scope:['events']},{id:'1.0.5.0.0',domain:'theme',name:{nl:'Decoratieve kunst',fr:'Arts décoratives',de:'Angewandte Kunst',en:'Decorative arts'},scope:['events']},{id:'1.2.2.0.0',domain:'theme',name:{nl:'Design',fr:'Design',de:'Design',en:'Design'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.0.6.0.0',domain:'theme',name:{nl:'Fotografie',fr:'Photographie',de:'Fotografie',en:'Photography'},scope:['events']},{id:'1.0.4.0.0',domain:'theme',name:{nl:'Grafiek',fr:'Art grafique',de:'Grafik',en:'Graphics'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.49.0.0.0',domain:'theme',name:{nl:'Mode',fr:'Mode',de:'Mode',en:'Fashion'},scope:['events']},{id:'1.10.5.0.0',domain:'theme',name:{nl:'Poezie',fr:'Poésie',de:'Poesie',en:'Poetry'},scope:['events']},{id:'1.0.1.0.0',domain:'theme',name:{nl:'Schilderkunst',fr:'Peinture',de:'Malerei',en:'Painting'},scope:['events']},{id:'1.3.1.0.0',domain:'theme',name:{nl:'Tekst en muziektheater',fr:'Théâtre dramatique et musical',de:'Text und Musik',en:'Theatre and Musical theatre'},scope:['events']},{id:'1.8.3.5.0',domain:'theme',name:{nl:'Amusementsmuziek',fr:'Cabaret',de:'Schlager',en:'Cabaret music'},scope:['events']},{id:'1.8.3.3.0',domain:'theme',name:{nl:'Dance muziek',fr:'Musique de danse',de:'Tanzmusik',en:'Dance music'},scope:['events']},{id:'1.8.4.0.0',domain:'theme',name:{nl:'Folk en wereldmuziek',fr:'Musique folklorique et mondiale',de:'Folk und World',en:'Folk and world music'},scope:['events']},{id:'1.8.3.2.0',domain:'theme',name:{nl:'Hip hop, rnb en rap',fr:'Hip hop, rnb et rap',de:'Hip-Hop, R und B und Rap',en:'Hip hop, rnb and rap'},scope:['events']},{id:'1.8.2.0.0',domain:'theme',name:{nl:'Jazz en blues',fr:'Jazz et blues',de:'Jazz und Blues',en:'Jazz and blues'},scope:['events']},{id:'1.8.1.0.0',domain:'theme',name:{nl:'Klassieke muziek',fr:'Musique classique',de:'Klassische Musik',en:'Classical music'},scope:['events']},{id:'1.8.3.1.0',domain:'theme',name:{nl:'Pop en rock',fr:'Pop et rock',de:'Pop und Rock',en:'Pop and rock'},scope:['events']},{id:'1.51.14.0.0',domain:'theme',name:{nl:'Atletiek, wandelen en fietsen',fr:'Athlétisme, marche et cyclisme',de:'Leichtathletik, Wandern und Radfahren',en:'Athletics, running and cycling'},scope:['events']},{id:'1.51.13.0.0',domain:'theme',name:{nl:'Bal en racketsport',fr:'Sports au ballons et raquettes',de:'Ball und Schläger',en:'Ball and racket sports'},scope:['events']},{id:'1.51.6.0.0',domain:'theme',name:{nl:'Fitness, gymnastiek, dans en vechtsport',fr:'Fitness, gymnastique, danse et arts martiaux',de:'Fitness, Tanz und Kampfkunst',en:'Fitness, gymnastics, dance and martial arts'},scope:['events']},{id:'1.58.8.0.0',domain:'theme',name:{nl:'Lucht en motorsport',fr:'Sports aero et moteurs',de:'Luft-und Motorsport',en:'Air and motorsports'},scope:['events']},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events']},{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events']},{id:'1.51.10.0.0',domain:'theme',name:{nl:'Volkssporten',fr:'Sports folkloriques',de:'Sport Menschen',en:'Folklore sports'},scope:['events']},{id:'1.51.3.0.0',domain:'theme',name:{nl:'Zwemmen en watersport',fr:'Natation et sports nautiques',de:'Schwimmen und Wassersport',en:'Swimming and water sports'},scope:['events']},{id:'1.37.1.0.0',domain:'theme',name:{nl:'Gezondheid en zorg',fr:'Santé et soins',de:'Gesundheit und Pflege',en:'Health and care'},scope:['events']},{id:'1.43.0.0.0',domain:'theme',name:{nl:'Interculturele vorming',fr:'Formation interculturelle',de:'Interkulturelle Erziehung',en:'Cross-cultural education'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.0.0.0',domain:'theme',name:{nl:'Opvoeding',fr:'Éducation',de:'Bildung',en:'Education'},scope:['events']},{id:'1.61.0.0.0',domain:'theme',name:{nl:'Persoon en relaties',fr:'Hommes et relations',de:'Person und Gesellschaft',en:'People and society'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.65.0.0.0',domain:'theme',name:{nl:'Voeding',fr:'Nutrition',de:'Ernährung',en:'Nutrition'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']},{id:'1.44.0.0.0',domain:'theme',name:{nl:'Zingeving, filosofie en religie',fr:'Sense de la vie, philosophie et religion',de:'Philosophie und Religion',en:'Philosophy and religion'},scope:['events']},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']}],label:'Lessenreeks',labelnl:'Lessenreeks',labelfr:'Série de cours',labelen:'Course series',labelde:'Unterrichtsreihe'},{id:'0.57.0.0.0',domain:'eventtype',name:{nl:'Kamp of vakantie',fr:'Camp de vacance',de:'Camp oder Urlaub',en:'Camping'},scope:['events'],otherSuggestedTerms:[{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events']},{id:'1.42.0.0.0',domain:'theme',name:{nl:'Creativiteit',fr:'Créativité',de:'Kreativität',en:'Creativity'},scope:['events']},{id:'1.65.0.0.0',domain:'theme',name:{nl:'Voeding',fr:'Nutrition',de:'Ernährung',en:'Nutrition'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events']},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']},{id:'1.11.2.0.0',domain:'theme',name:{nl:'Themakamp',fr:'Camp thématique',de:'Themencamp',en:'Theme camp'},scope:['events']},{id:'1.11.1.0.0',domain:'theme',name:{nl:'Taal en communicatie',fr:'Langue et communication',de:'Sprache und Kommunikation',en:'Language and communication'},scope:['events']}],label:'Kamp of vakantie',labelnl:'Kamp of vakantie',labelfr:'Camp de vacance',labelen:'Camping',labelde:'Camp oder Urlaub'},{id:'0.28.0.0.0',domain:'eventtype',name:{nl:'Festiviteit',fr:'Festivité',de:'Fest',en:'Festivity'},scope:['events'],label:'Festiviteit',labelnl:'Festiviteit',labelfr:'Festivité',labelen:'Festivity',labelde:'Fest'},{id:'0.53.0.0.0',domain:'eventtype',name:{nl:'Recreatiedomein of centrum',fr:'Centre de loisirs ou centre de récréation',de:'Recreation Area oder ûcentrum',en:'Recreation center'},scope:['places'],label:'Recreatiedomein of centrum',labelnl:'Recreatiedomein of centrum',labelfr:'Centre de loisirs ou centre de récréation',labelen:'Recreation center',labelde:'Recreation Area oder ûcentrum'},{id:'0.17.0.0.0',domain:'eventtype',name:{nl:'Fiets- of wandelroute',fr:'Randonnée pédestre ou cycliste',de:'Route',en:'Cycling or hiking tour'},scope:['events'],label:'Fiets- of wandelroute',labelnl:'Fiets- of wandelroute',labelfr:'Randonnée pédestre ou cycliste',labelen:'Cycling or hiking tour',labelde:'Route'},{id:'0.49.0.0.0',domain:'eventtype',name:{nl:'Party of fuif',fr:'Soirée',de:'Ausgehen',en:'Party or nightlife'},scope:['events'],label:'Party of fuif',labelnl:'Party of fuif',labelfr:'Soirée',labelen:'Party or nightlife',labelde:'Ausgehen'},{id:'1.50.0.0.0',domain:'eventtype',name:{nl:'Eet- of drankfestijn',fr:'Festin de nourriture ou de boisson',de:'Essen oder Trinken Fest',en:'Food or beverage feast'},scope:['events'],label:'Eet- of drankfestijn',labelnl:'Eet- of drankfestijn',labelfr:'Festin de nourriture ou de boisson',labelen:'Food or beverage feast',labelde:'Essen oder Trinken Fest'},{id:'0.50.21.0.0',domain:'eventtype',name:{nl:'Spel of quiz',fr:'Jeu ou quiz',de:'Spiel oder Quiz',en:'Game or quiz'},scope:['events'],label:'Spel of quiz',labelnl:'Spel of quiz',labelfr:'Jeu ou quiz',labelen:'Game or quiz',labelde:'Spiel oder Quiz'},{id:'0.41.0.0.0',domain:'eventtype',name:{nl:'Thema of pretpark',fr:'Parc à thème ou parc d\'attractions',de:'Unterhaltungspark',en:'Theme park'},scope:['places'],label:'Thema of pretpark',labelnl:'Thema of pretpark',labelfr:'Parc à thème ou parc d\'attractions',labelen:'Theme park',labelde:'Unterhaltungspark'},{id:'0.59.0.0.0',domain:'eventtype',name:{nl:'Sportactiviteit',fr:'Activité sportive',de:'Sportliche Aktivität',en:'Sports activity'},scope:['events'],otherSuggestedTerms:[{id:'1.51.14.0.0',domain:'theme',name:{nl:'Atletiek, wandelen en fietsen',fr:'Athlétisme, marche et cyclisme',de:'Leichtathletik, Wandern und Radfahren',en:'Athletics, running and cycling'},scope:['events']},{id:'1.51.13.0.0',domain:'theme',name:{nl:'Bal en racketsport',fr:'Sports au ballons et raquettes',de:'Ball und Schläger',en:'Ball and racket sports'},scope:['events']},{id:'1.51.6.0.0',domain:'theme',name:{nl:'Fitness, gymnastiek, dans en vechtsport',fr:'Fitness, gymnastique, danse et arts martiaux',de:'Fitness, Tanz und Kampfkunst',en:'Fitness, gymnastics, dance and martial arts'},scope:['events']},{id:'1.58.8.0.0',domain:'theme',name:{nl:'Lucht en motorsport',fr:'Sports aero et moteurs',de:'Luft-und Motorsport',en:'Air and motorsports'},scope:['events']},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events']},{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events']},{id:'1.51.10.0.0',domain:'theme',name:{nl:'Volkssporten',fr:'Sports folkloriques',de:'Sport Menschen',en:'Folklore sports'},scope:['events']},{id:'1.51.3.0.0',domain:'theme',name:{nl:'Zwemmen en watersport',fr:'Natation et sports nautiques',de:'Schwimmen und Wassersport',en:'Swimming and water sports'},scope:['events']}],label:'Sportactiviteit',labelnl:'Sportactiviteit',labelfr:'Activité sportive',labelen:'Sports activity',labelde:'Sportliche Aktivität'},{id:'1.17.0.0.0',domain:'theme',name:{nl:'Antiek en brocante',fr:'Antiquités ou brocantes',de:'Antik-und Flohmarkt',en:'Antiques'},scope:['events'],label:'Antiek en brocante',labelnl:'Antiek en brocante',labelfr:'Antiquités ou brocantes',labelen:'Antiques',labelde:'Antik-und Flohmarkt'},{id:'1.2.1.0.0',domain:'theme',name:{nl:'Architectuur',fr:'Architecture',de:'Architektur',en:'Architecture'},scope:['events'],label:'Architectuur',labelnl:'Architectuur',labelfr:'Architecture',labelen:'Architecture',labelde:'Architektur'},{id:'1.1.0.0.0',domain:'theme',name:{nl:'Audiovisuele kunst',fr:'Arts audiovisuels',de:'Audiovisuelle Kunst',en:'Audiovisual arts'},scope:['events'],label:'Audiovisuele kunst',labelnl:'Audiovisuele kunst',labelfr:'Arts audiovisuels',labelen:'Audiovisual arts',labelde:'Audiovisuelle Kunst'},{id:'1.0.2.0.0',domain:'theme',name:{nl:'Beeldhouwkunst',fr:'Sculpture',de:'Skulptur',en:'Sculpture'},scope:['events'],label:'Beeldhouwkunst',labelnl:'Beeldhouwkunst',labelfr:'Sculpture',labelen:'Sculpture',labelde:'Skulptur'},{id:'1.0.6.0.0',domain:'theme',name:{nl:'Fotografie',fr:'Photographie',de:'Fotografie',en:'Photography'},scope:['events'],label:'Fotografie',labelnl:'Fotografie',labelfr:'Photographie',labelen:'Photography',labelde:'Fotografie'},{id:'1.0.4.0.0',domain:'theme',name:{nl:'Grafiek',fr:'Art grafique',de:'Grafik',en:'Graphics'},scope:['events'],label:'Grafiek',labelnl:'Grafiek',labelfr:'Art grafique',labelen:'Graphics',labelde:'Grafik'},{id:'1.0.3.0.0',domain:'theme',name:{nl:'Installatiekunst',fr:'Art d\'installation',de:'Installation Art',en:'Installation art'},scope:['events'],label:'Installatiekunst',labelnl:'Installatiekunst',labelfr:'Art d\'installation',labelen:'Installation art',labelde:'Installation Art'},{id:'1.0.1.0.0',domain:'theme',name:{nl:'Schilderkunst',fr:'Peinture',de:'Malerei',en:'Painting'},scope:['events'],label:'Schilderkunst',labelnl:'Schilderkunst',labelfr:'Peinture',labelen:'Painting',labelde:'Malerei'},{id:'1.0.5.0.0',domain:'theme',name:{nl:'Decoratieve kunst',fr:'Arts décoratives',de:'Angewandte Kunst',en:'Decorative arts'},scope:['events'],label:'Decoratieve kunst',labelnl:'Decoratieve kunst',labelfr:'Arts décoratives',labelen:'Decorative arts',labelde:'Angewandte Kunst'},{id:'1.2.2.0.0',domain:'theme',name:{nl:'Design',fr:'Design',de:'Design',en:'Design'},scope:['events'],label:'Design',labelnl:'Design',labelfr:'Design',labelen:'Design',labelde:'Design'},{id:'1.49.0.0.0',domain:'theme',name:{nl:'Mode',fr:'Mode',de:'Mode',en:'Fashion'},scope:['events'],label:'Mode',labelnl:'Mode',labelfr:'Mode',labelen:'Fashion',labelde:'Mode'},{id:'1.9.1.0.0',domain:'theme',name:{nl:'Ballet en klassieke dans',fr:'Ballet et danse classique',de:'Ballett und klassischer Tanz',en:'Classical dance and ballet'},scope:['events'],label:'Ballet en klassieke dans',labelnl:'Ballet en klassieke dans',labelfr:'Ballet et danse classique',labelen:'Classical dance and ballet',labelde:'Ballett und klassischer Tanz'},{id:'1.9.3.0.0',domain:'theme',name:{nl:'Volksdans en werelddans',fr:'Danse folklorique et mondiale',de:'Folk-und World Dance',en:'Folk dance'},scope:['events'],label:'Volksdans en werelddans',labelnl:'Volksdans en werelddans',labelfr:'Danse folklorique et mondiale',labelen:'Folk dance',labelde:'Folk-und World Dance'},{id:'1.9.5.0.0',domain:'theme',name:{nl:'Stijl en salondansen',fr:'Danse de salon et stylée',de:'Stil-und Gesellschaftstanz',en:'Ballroom dancing'},scope:['events'],label:'Stijl en salondansen',labelnl:'Stijl en salondansen',labelfr:'Danse de salon et stylée',labelen:'Ballroom dancing',labelde:'Stil-und Gesellschaftstanz'},{id:'1.9.2.0.0',domain:'theme',name:{nl:'Moderne dans',fr:'Danse moderne',de:'Modern Dance',en:'Modern dance'},scope:['events'],label:'Moderne dans',labelnl:'Moderne dans',labelfr:'Danse moderne',labelen:'Modern dance',labelde:'Modern Dance'},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events'],label:'Erfgoed',labelnl:'Erfgoed',labelfr:'Patrimoine',labelen:'Heritage',labelde:'Kulturerben'},{id:'1.7.2.0.0',domain:'theme',name:{nl:'Actie- en avonturenfilm',fr:'Film d\'action et d\'aventure',de:'Action- und Abenteuerfilm',en:'Action and adventure film'},scope:['events'],label:'Actie- en avonturenfilm',labelnl:'Actie- en avonturenfilm',labelfr:'Film d\'action et d\'aventure',labelen:'Action and adventure film',labelde:'Action- und Abenteuerfilm'},{id:'1.7.12.0.0',domain:'theme',name:{nl:'Animatie en kinderfilms',fr:'Films animés et films pour enfants',de:'Animations-und Kinderfilme',en:'Animation and children\'s films'},scope:['events'],label:'Animatie en kinderfilms',labelnl:'Animatie en kinderfilms',labelfr:'Films animés et films pour enfants',labelen:'Animation and children\'s films',labelde:'Animations-und Kinderfilme'},{id:'1.7.1.0.0',domain:'theme',name:{nl:'Documentaires en reportages',fr:'Documentaires et reportages',de:'Dokumentationen und Reportagen',en:'Documentary'},scope:['events'],label:'Documentaires en reportages',labelnl:'Documentaires en reportages',labelfr:'Documentaires et reportages',labelen:'Documentary',labelde:'Dokumentationen und Reportagen'},{id:'1.7.6.0.0',domain:'theme',name:{nl:'Griezelfilm of horror',fr:'Films d\'épouvantes ou orreurs',de:'Horror',en:'Horror'},scope:['events'],label:'Griezelfilm of horror',labelnl:'Griezelfilm of horror',labelfr:'Films d\'épouvantes ou orreurs',labelen:'Horror',labelde:'Horror'},{id:'1.7.8.0.0',domain:'theme',name:{nl:'Historische film',fr:'Films historiques',de:'Historische Film',en:'Historical film'},scope:['events'],label:'Historische film',labelnl:'Historische film',labelfr:'Films historiques',labelen:'Historical film',labelde:'Historische Film'},{id:'1.7.3.0.0',domain:'theme',name:{nl:'Komedie',fr:'Comédie',de:'Komödie',en:'Comedy'},scope:['events'],label:'Komedie',labelnl:'Komedie',labelfr:'Comédie',labelen:'Comedy',labelde:'Komödie'},{id:'1.7.13.0.0',domain:'theme',name:{nl:'Kortfilm',fr:'Court métrage',de:'Kurzfilm',en:'Short film'},scope:['events'],label:'Kortfilm',labelnl:'Kortfilm',labelfr:'Court métrage',labelen:'Short film',labelde:'Kurzfilm'},{id:'1.7.10.0.0',domain:'theme',name:{nl:'Filmmusical',fr:'Comédie musicale',de:'Musical',en:'Musical'},scope:['events'],label:'Filmmusical',labelnl:'Filmmusical',labelfr:'Comédie musicale',labelen:'Musical',labelde:'Musical'},{id:'1.7.4.0.0',domain:'theme',name:{nl:'Drama',fr:'Films dramatiques',de:'Drama',en:'Drama'},scope:['events'],label:'Drama',labelnl:'Drama',labelfr:'Films dramatiques',labelen:'Drama',labelde:'Drama'},{id:'1.7.7.0.0',domain:'theme',name:{nl:'Science fiction',fr:'Science fiction',de:'Science-Fiction',en:'Science fiction'},scope:['events'],label:'Science fiction',labelnl:'Science fiction',labelfr:'Science fiction',labelen:'Science fiction',labelde:'Science-Fiction'},{id:'1.7.11.0.0',domain:'theme',name:{nl:'Cinefiel',fr:'Cinéphile',de:'Cinephile',en:'Independent'},scope:['events'],label:'Cinefiel',labelnl:'Cinefiel',labelfr:'Cinéphile',labelen:'Independent',labelde:'Cinephile'},{id:'1.11.0.0.0',domain:'theme',name:{nl:'Geschiedenis',fr:'Histoire',de:'Geschichte',en:'History'},scope:['events'],label:'Geschiedenis',labelnl:'Geschiedenis',labelfr:'Histoire',labelen:'History',labelde:'Geschichte'},{id:'1.62.0.0.0',domain:'theme',name:{nl:'Gezondheid en wellness',fr:'Santé et bien-être',de:'Gesundheit und Wellness',en:'Health and wellness'},scope:['events'],label:'Gezondheid en wellness',labelnl:'Gezondheid en wellness',labelfr:'Santé et bien-être',labelen:'Health and wellness',labelde:'Gesundheit und Wellness'},{id:'1.63.0.0.0',domain:'theme',name:{nl:'Landbouw en platteland',fr:'Agriculture et campagne',de:'Landwirtschaft ',en:'Agriculture'},scope:['events'],label:'Landbouw en platteland',labelnl:'Landbouw en platteland',labelfr:'Agriculture et campagne',labelen:'Agriculture',labelde:'Landwirtschaft '},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events'],label:'Literatuur',labelnl:'Literatuur',labelfr:'Litérature',labelen:'Literature',labelde:'Literatur'},{id:'1.10.5.0.0',domain:'theme',name:{nl:'Poezie',fr:'Poésie',de:'Poesie',en:'Poetry'},scope:['events'],label:'Poezie',labelnl:'Poezie',labelfr:'Poésie',labelen:'Poetry',labelde:'Poesie'},{id:'1.10.11.0.0',domain:'theme',name:{nl:'Fictie',fr:'Fiction',de:'Fiktion',en:'Fiction'},scope:['events'],label:'Fictie',labelnl:'Fictie',labelfr:'Fiction',labelen:'Fiction',labelde:'Fiktion'},{id:'1.10.12.0.0',domain:'theme',name:{nl:'Non fictie',fr:'Non fiction',de:'Sachbücher',en:'Non fiction'},scope:['events'],label:'Non fictie',labelnl:'Non fictie',labelfr:'Non fiction',labelen:'Non fiction',labelde:'Sachbücher'},{id:'1.10.8.0.0',domain:'theme',name:{nl:'Strips',fr:'Bandes dessinés',de:'Comics',en:'Comic books'},scope:['events'],label:'Strips',labelnl:'Strips',labelfr:'Bandes dessinés',labelen:'Comic books',labelde:'Comics'},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events'],label:'Milieu en natuur',labelnl:'Milieu en natuur',labelfr:'Environnement et nature',labelen:'Environment and nature',labelde:'Umwelt und Natur'},{id:'1.8.1.0.0',domain:'theme',name:{nl:'Klassieke muziek',fr:'Musique classique',de:'Klassische Musik',en:'Classical music'},scope:['events'],label:'Klassieke muziek',labelnl:'Klassieke muziek',labelfr:'Musique classique',labelen:'Classical music',labelde:'Klassische Musik'},{id:'1.8.2.0.0',domain:'theme',name:{nl:'Jazz en blues',fr:'Jazz et blues',de:'Jazz und Blues',en:'Jazz and blues'},scope:['events'],label:'Jazz en blues',labelnl:'Jazz en blues',labelfr:'Jazz et blues',labelen:'Jazz and blues',labelde:'Jazz und Blues'},{id:'1.8.3.1.0',domain:'theme',name:{nl:'Pop en rock',fr:'Pop et rock',de:'Pop und Rock',en:'Pop and rock'},scope:['events'],label:'Pop en rock',labelnl:'Pop en rock',labelfr:'Pop et rock',labelen:'Pop and rock',labelde:'Pop und Rock'},{id:'1.8.3.2.0',domain:'theme',name:{nl:'Hip hop, rnb en rap',fr:'Hip hop, rnb et rap',de:'Hip-Hop, R und B und Rap',en:'Hip hop, rnb and rap'},scope:['events'],label:'Hip hop, rnb en rap',labelnl:'Hip hop, rnb en rap',labelfr:'Hip hop, rnb et rap',labelen:'Hip hop, rnb and rap',labelde:'Hip-Hop, R und B und Rap'},{id:'1.8.3.3.0',domain:'theme',name:{nl:'Dance muziek',fr:'Musique de danse',de:'Tanzmusik',en:'Dance music'},scope:['events'],label:'Dance muziek',labelnl:'Dance muziek',labelfr:'Musique de danse',labelen:'Dance music',labelde:'Tanzmusik'},{id:'1.8.4.0.0',domain:'theme',name:{nl:'Folk en wereldmuziek',fr:'Musique folklorique et mondiale',de:'Folk und World',en:'Folk and world music'},scope:['events'],label:'Folk en wereldmuziek',labelnl:'Folk en wereldmuziek',labelfr:'Musique folklorique et mondiale',labelen:'Folk and world music',labelde:'Folk und World'},{id:'1.8.3.5.0',domain:'theme',name:{nl:'Amusementsmuziek',fr:'Cabaret',de:'Schlager',en:'Cabaret music'},scope:['events'],label:'Amusementsmuziek',labelnl:'Amusementsmuziek',labelfr:'Cabaret',labelen:'Cabaret music',labelde:'Schlager'},{id:'1.52.0.0.0',domain:'theme',name:{nl:'Politiek en maatschappij',fr:'Politique et société',de:'Politik und Gesellschaft',en:'Politics and society'},scope:['events'],label:'Politiek en maatschappij',labelnl:'Politiek en maatschappij',labelfr:'Politique et société',labelen:'Politics and society',labelde:'Politik und Gesellschaft'},{id:'1.42.0.0.0',domain:'theme',name:{nl:'Creativiteit',fr:'Créativité',de:'Kreativität',en:'Creativity'},scope:['events'],label:'Creativiteit',labelnl:'Creativiteit',labelfr:'Créativité',labelen:'Creativity',labelde:'Kreativität'},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events'],label:'Computer en techniek',labelnl:'Computer en techniek',labelfr:'Ordinateurs et technologie',labelen:'Computer and technology',labelde:'Computer-und Technik'},{id:'1.37.0.0.0',domain:'theme',name:{nl:'Opvoeding',fr:'Éducation',de:'Bildung',en:'Education'},scope:['events'],label:'Opvoeding',labelnl:'Opvoeding',labelfr:'Éducation',labelen:'Education',labelde:'Bildung'},{id:'1.61.0.0.0',domain:'theme',name:{nl:'Persoon en relaties',fr:'Hommes et relations',de:'Person und Gesellschaft',en:'People and society'},scope:['events'],label:'Persoon en relaties',labelnl:'Persoon en relaties',labelfr:'Hommes et relations',labelen:'People and society',labelde:'Person und Gesellschaft'},{id:'1.43.0.0.0',domain:'theme',name:{nl:'Interculturele vorming',fr:'Formation interculturelle',de:'Interkulturelle Erziehung',en:'Cross-cultural education'},scope:['events'],label:'Interculturele vorming',labelnl:'Interculturele vorming',labelfr:'Formation interculturelle',labelen:'Cross-cultural education',labelde:'Interkulturelle Erziehung'},{id:'1.41.0.0.0',domain:'theme',name:{nl:'Kunst en kunsteducatie',fr:'Arts et formation artistique',de:'Kunst und Kunsterziehung',en:'Arts education'},scope:['events'],label:'Kunst en kunsteducatie',labelnl:'Kunst en kunsteducatie',labelfr:'Arts et formation artistique',labelen:'Arts education',labelde:'Kunst und Kunsterziehung'},{id:'1.51.13.0.0',domain:'theme',name:{nl:'Bal en racketsport',fr:'Sports au ballons et raquettes',de:'Ball und Schläger',en:'Ball and racket sports'},scope:['events'],label:'Bal en racketsport',labelnl:'Bal en racketsport',labelfr:'Sports au ballons et raquettes',labelen:'Ball and racket sports',labelde:'Ball und Schläger'},{id:'1.51.14.0.0',domain:'theme',name:{nl:'Atletiek, wandelen en fietsen',fr:'Athlétisme, marche et cyclisme',de:'Leichtathletik, Wandern und Radfahren',en:'Athletics, running and cycling'},scope:['events'],label:'Atletiek, wandelen en fietsen',labelnl:'Atletiek, wandelen en fietsen',labelfr:'Athlétisme, marche et cyclisme',labelen:'Athletics, running and cycling',labelde:'Leichtathletik, Wandern und Radfahren'},{id:'1.51.3.0.0',domain:'theme',name:{nl:'Zwemmen en watersport',fr:'Natation et sports nautiques',de:'Schwimmen und Wassersport',en:'Swimming and water sports'},scope:['events'],label:'Zwemmen en watersport',labelnl:'Zwemmen en watersport',labelfr:'Natation et sports nautiques',labelen:'Swimming and water sports',labelde:'Schwimmen und Wassersport'},{id:'1.51.6.0.0',domain:'theme',name:{nl:'Fitness, gymnastiek, dans en vechtsport',fr:'Fitness, gymnastique, danse et arts martiaux',de:'Fitness, Tanz und Kampfkunst',en:'Fitness, gymnastics, dance and martial arts'},scope:['events'],label:'Fitness, gymnastiek, dans en vechtsport',labelnl:'Fitness, gymnastiek, dans en vechtsport',labelfr:'Fitness, gymnastique, danse et arts martiaux',labelen:'Fitness, gymnastics, dance and martial arts',labelde:'Fitness, Tanz und Kampfkunst'},{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events'],label:'Outdoor en Adventure sport',labelnl:'Outdoor en Adventure sport',labelfr:'Sports de plein air et d\'aventure',labelen:'Outdoor and Adventure sports',labelde:'Outdoor- und Abenteuersport'},{id:'1.58.8.0.0',domain:'theme',name:{nl:'Lucht en motorsport',fr:'Sports aero et moteurs',de:'Luft-und Motorsport',en:'Air and motorsports'},scope:['events'],label:'Lucht en motorsport',labelnl:'Lucht en motorsport',labelfr:'Sports aero et moteurs',labelen:'Air and motorsports',labelde:'Luft-und Motorsport'},{id:'1.51.10.0.0',domain:'theme',name:{nl:'Volkssporten',fr:'Sports folkloriques',de:'Sport Menschen',en:'Folklore sports'},scope:['events'],label:'Volkssporten',labelnl:'Volkssporten',labelfr:'Sports folkloriques',labelen:'Folklore sports',labelde:'Sport Menschen'},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events'],label:'Omnisport en andere',labelnl:'Omnisport en andere',labelfr:'Omnisports et autres',labelen:'Other sports',labelde:'Omnisport und andere'},{id:'1.3.1.0.0',domain:'theme',name:{nl:'Tekst en muziektheater',fr:'Théâtre dramatique et musical',de:'Text und Musik',en:'Theatre and Musical theatre'},scope:['events'],label:'Tekst en muziektheater',labelnl:'Tekst en muziektheater',labelfr:'Théâtre dramatique et musical',labelen:'Theatre and Musical theatre',labelde:'Text und Musik'},{id:'1.3.10.0.0',domain:'theme',name:{nl:'Humor en comedy',fr:'L\'humour et la comédie',de:'Humor und comedy',en:'Humor and comedy'},scope:['events'],label:'Humor en comedy',labelnl:'Humor en comedy',labelfr:'L\'humour et la comédie',labelen:'Humor and comedy',labelde:'Humor und comedy'},{id:'1.4.0.0.0',domain:'theme',name:{nl:'Musical',fr:'Comédie musicale',de:'Musical',en:'Musical'},scope:['events'],label:'Musical',labelnl:'Musical',labelfr:'Comédie musicale',labelen:'Musical',labelde:'Musical'},{id:'1.3.5.0.0',domain:'theme',name:{nl:'Figuren en poppentheater',fr:'Théâtre de marionnettes',de:'Figuren und Marionetten',en:'Puppetry'},scope:['events'],label:'Figuren en poppentheater',labelnl:'Figuren en poppentheater',labelfr:'Théâtre de marionnettes',labelen:'Puppetry',labelde:'Figuren und Marionetten'},{id:'1.5.0.0.0',domain:'theme',name:{nl:'Opera en operette',fr:'Opéra et opérette',de:'Oper und Operette',en:'Opera and operetta'},scope:['events'],label:'Opera en operette',labelnl:'Opera en operette',labelfr:'Opéra et opérette',labelen:'Opera and operetta',labelde:'Oper und Operette'},{id:'1.3.4.0.0',domain:'theme',name:{nl:'Mime en bewegingstheater',fr:'Mime et theéâtre de mouvements',de:'Mime und Bewegungstheater',en:'Mime '},scope:['events'],label:'Mime en bewegingstheater',labelnl:'Mime en bewegingstheater',labelfr:'Mime et theéâtre de mouvements',labelen:'Mime ',labelde:'Mime und Bewegungstheater'},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events'],label:'Wetenschap',labelnl:'Wetenschap',labelfr:'Science',labelen:'Science',labelde:'Wissenschaft'},{id:'1.44.0.0.0',domain:'theme',name:{nl:'Zingeving, filosofie en religie',fr:'Sense de la vie, philosophie et religion',de:'Philosophie und Religion',en:'Philosophy and religion'},scope:['events'],label:'Zingeving, filosofie en religie',labelnl:'Zingeving, filosofie en religie',labelfr:'Sense de la vie, philosophie et religion',labelen:'Philosophy and religion',labelde:'Philosophie und Religion'},{id:'1.58.0.0.0',domain:'theme',name:{nl:'Thema onbepaald',fr:'Thème non défini',de:'unbestimmt',en:'Theme undefined'},scope:['events'],label:'Thema onbepaald',labelnl:'Thema onbepaald',labelfr:'Thème non défini',labelen:'Theme undefined',labelde:'unbestimmt'},{id:'3.14.0.0.0',domain:'facility',name:{nl:'Educatieve dienstverlening',fr:'Services éducatifs',de:'Bildungsleistungen',en:'Educational service'},scope:['events'],label:'Educatieve dienstverlening',labelnl:'Educatieve dienstverlening',labelfr:'Services éducatifs',labelen:'Educational service',labelde:'Bildungsleistungen'},{id:'0.51.0.0.0',domain:'eventtype',name:{nl:'Type onbepaald',fr:'Catégorie non déterminé',de:'unbestimmt',en:'Type undefined'},scope:['events'],label:'Type onbepaald',labelnl:'Type onbepaald',labelfr:'Catégorie non déterminé',labelen:'Type undefined',labelde:'unbestimmt'},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events'],label:'Meerdere kunstvormen',labelnl:'Meerdere kunstvormen',labelfr:'Arts multiples',labelen:'Multiple art forms',labelde:'Mehrere Formen der Kunst'},{id:'1.7.14.0.0',domain:'theme',name:{nl:'Meerdere filmgenres',fr:'Films de tous genres',de:'Mehrere Filmgenres',en:'Multiple film genres'},scope:['events'],label:'Meerdere filmgenres',labelnl:'Meerdere filmgenres',labelfr:'Films de tous genres',labelen:'Multiple film genres',labelde:'Mehrere Filmgenres'},{id:'1.37.1.0.0',domain:'theme',name:{nl:'Gezondheid en zorg',fr:'Santé et soins',de:'Gesundheit und Pflege',en:'Health and care'},scope:['events'],label:'Gezondheid en zorg',labelnl:'Gezondheid en zorg',labelfr:'Santé et soins',labelen:'Health and care',labelde:'Gesundheit und Pflege'},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events'],label:'Samenleving',labelnl:'Samenleving',labelfr:'Vivre en société',labelen:'Society',labelde:'Gesellschaft'},{id:'3.23.1.0.0',domain:'facility',name:{nl:'Voorzieningen voor rolstoelgebruikers',fr:'Facilités pour fauteuils roulants',de:'EInrichtung für Rollstuhlfahrer',en:'Wheelchair facilities'},scope:['events'],label:'Voorzieningen voor rolstoelgebruikers',labelnl:'Voorzieningen voor rolstoelgebruikers',labelfr:'Facilités pour fauteuils roulants',labelen:'Wheelchair facilities',labelde:'EInrichtung für Rollstuhlfahrer'},{id:'3.23.2.0.0',domain:'facility',name:{nl:'Assistentie',fr:'Assistance',de:'Hilfe',en:'Assistance'},scope:['events'],label:'Assistentie',labelnl:'Assistentie',labelfr:'Assistance',labelen:'Assistance',labelde:'Hilfe'},{id:'3.23.3.0.0',domain:'facility',name:{nl:'Rolstoel ter beschikking',fr:'Disponibilité de fauteuils roulants',de:'Rollstuhl verfügbar',en:'Wheelchair available'},scope:['events','places'],label:'Rolstoel ter beschikking',labelnl:'Rolstoel ter beschikking',labelfr:'Disponibilité de fauteuils roulants',labelen:'Wheelchair available',labelde:'Rollstuhl verfügbar'},{id:'3.13.1.0.0',domain:'facility',name:{nl:'Voorzieningen voor assistentiehonden',fr:'Facilités de chiens d\'assistance',de:'Einrichtung für Begleithunden',en:'Facilities for guide dogs'},scope:['events','places'],label:'Voorzieningen voor assistentiehonden',labelnl:'Voorzieningen voor assistentiehonden',labelfr:'Facilités de chiens d\'assistance',labelen:'Facilities for guide dogs',labelde:'Einrichtung für Begleithunden'},{id:'3.13.2.0.0',domain:'facility',name:{nl:'Audiodescriptie',fr:'Audiodéscription',de:'Audio-Beschreibung',en:'Audiodescription'},scope:['events'],label:'Audiodescriptie',labelnl:'Audiodescriptie',labelfr:'Audiodéscription',labelen:'Audiodescription',labelde:'Audio-Beschreibung'},{id:'3.17.1.0.0',domain:'facility',name:{nl:'Ringleiding',fr:'Boucle auditive',de:'Audio Induktionsschleife',en:'Audio induction loop'},scope:['events'],label:'Ringleiding',labelnl:'Ringleiding',labelfr:'Boucle auditive',labelen:'Audio induction loop',labelde:'Audio Induktionsschleife'},{id:'3.17.3.0.0',domain:'facility',name:{nl:'Boven- of ondertiteling',fr:'Soustitrages',de:'Untertitel',en:'Subtitles'},scope:['events'],label:'Boven- of ondertiteling',labelnl:'Boven- of ondertiteling',labelfr:'Soustitrages',labelen:'Subtitles',labelde:'Untertitel'},{id:'1.7.15.0.0',domain:'theme',name:{nl:'Thriller',fr:'Films à suspense',de:'Thriller',en:'Thriller'},scope:['events'],label:'Thriller',labelnl:'Thriller',labelfr:'Films à suspense',labelen:'Thriller',labelde:'Thriller'},{id:'1.65.0.0.0',domain:'theme',name:{nl:'Voeding',fr:'Nutrition',de:'Ernährung',en:'Nutrition'},scope:['events'],label:'Voeding',labelnl:'Voeding',labelfr:'Nutrition',labelen:'Nutrition',labelde:'Ernährung'},{id:'1.66.0.0.0',domain:'theme',name:{nl:'Economie',fr:'Économie',de:'Wirtschaft',en:'Economy'},scope:['events'],label:'Economie',labelnl:'Economie',labelfr:'Économie',labelen:'Economy',labelde:'Wirtschaft'},{id:'3CuHvenJ+EGkcvhXLg9Ykg',domain:'eventtype',name:{nl:'Archeologische site',fr:'Site archéologique',de:'Archäologische Stätte',en:'Archaeological site'},scope:['places'],label:'Archeologische site',labelnl:'Archeologische site',labelfr:'Site archéologique',labelen:'Archaeological site',labelde:'Archäologische Stätte'},{id:'rJRFUqmd6EiqTD4c7HS90w',domain:'eventtype',name:{nl:'School of onderwijscentrum',fr:'École ou centre éducatif',de:'Schule oder Bildungszentrum',en:'School or educational centre'},scope:['places'],label:'School of onderwijscentrum',labelnl:'School of onderwijscentrum',labelfr:'École ou centre éducatif',labelen:'School or educational centre',labelde:'Schule oder Bildungszentrum'},{id:'eBwaUAAhw0ur0Z02i5ttnw',domain:'eventtype',name:{nl:'Sportcentrum',fr:'Centre sportif',de:'Sportzentrum',en:'Sports Centre'},scope:['places'],label:'Sportcentrum',labelnl:'Sportcentrum',labelfr:'Centre sportif',labelen:'Sports Centre',labelde:'Sportzentrum'},{id:'VRC6HX0Wa063sq98G5ciqw',domain:'eventtype',name:{nl:'Winkel',fr:'Magasin',de:'Laden',en:'Shop'},scope:['places'],label:'Winkel',labelnl:'Winkel',labelfr:'Magasin',labelen:'Shop',labelde:'Laden'},{id:'GnPFp9uvOUyqhOckIFMKmg',domain:'eventtype',name:{nl:'Museum of galerij',fr:'Musée ou galerie',de:'Museum oder Galerie',en:'Museum or gallery'},scope:['places'],label:'Museum of galerij',labelnl:'Museum of galerij',labelfr:'Musée ou galerie',labelen:'Museum or gallery',labelde:'Museum oder Galerie'},{id:'JCjA0i5COUmdjMwcyjNAFA',domain:'eventtype',name:{nl:'Jeugdhuis of jeugdcentrum',fr:'Maison de jeunes ou centre de jeunesse',de:'Jugendzentrum',en:'Youth centre'},scope:['places'],label:'Jeugdhuis of jeugdcentrum',labelnl:'Jeugdhuis of jeugdcentrum',labelfr:'Maison de jeunes ou centre de jeunesse',labelen:'Youth centre',labelde:'Jugendzentrum'},{id:'Yf4aZBfsUEu2NsQqsprngw',domain:'eventtype',name:{nl:'Cultuur- of ontmoetingscentrum',fr:'Centre culturel ou centre de réunion',de:'Kultur- oder Begegnungszentrum',en:'Cultural centre'},scope:['places'],label:'Cultuur- of ontmoetingscentrum',labelnl:'Cultuur- of ontmoetingscentrum',labelfr:'Centre culturel ou centre de réunion',labelen:'Cultural centre',labelde:'Kultur- oder Begegnungszentrum'},{id:'YVBc8KVdrU6XfTNvhMYUpg',domain:'eventtype',name:{nl:'Discotheek',fr:'Discothèque',de:'Diskothek',en:'Nightclub'},scope:['places'],label:'Discotheek',labelnl:'Discotheek',labelfr:'Discothèque',labelen:'Nightclub',labelde:'Diskothek'},{id:'kI7uAyn2uUu9VV6Z3uWZTA',domain:'eventtype',name:{nl:'Bibliotheek of documentatiecentrum',fr:'Bibliothèque ou centre de documentation',de:'Bibliothek oder Dokumentationszentrum',en:'Library or documentation centre'},scope:['places'],label:'Bibliotheek of documentatiecentrum',labelnl:'Bibliotheek of documentatiecentrum',labelfr:'Bibliothèque ou centre de documentation',labelen:'Library or documentation centre',labelde:'Bibliothek oder Dokumentationszentrum'},{id:'BtVNd33sR0WntjALVbyp3w',domain:'eventtype',name:{nl:'Bioscoop',fr:'Cinéma',de:'Kino',en:'Cinema'},scope:['places'],label:'Bioscoop',labelnl:'Bioscoop',labelfr:'Cinéma',labelen:'Cinema',labelde:'Kino'},{id:'ekdc4ATGoUitCa0e6me6xA',domain:'eventtype',name:{nl:'Horeca',fr:'Horeca',de:'Gastgewerbe',en:'Hospitality'},scope:['places'],label:'Horeca',labelnl:'Horeca',labelfr:'Horeca',labelen:'Hospitality',labelde:'Gastgewerbe'},{id:'wwjRVmExI0w6xfQwT1KWpx',domain:'eventtype',name:{nl:'Speeltuin',fr:'Aire de jeu',de:'Spielplatz',en:'Playground'},scope:['places'],label:'Speeltuin',labelnl:'Speeltuin',labelfr:'Aire de jeu',labelen:'Playground',labelde:'Spielplatz'},{id:'OyaPaf64AEmEAYXHeLMAtA',domain:'eventtype',name:{nl:'Zaal of expohal',fr:'Hall ou salle d\'expo',de:'Saal oder Expo-Halle',en:'Hall or exhibition hall'},scope:['places'],label:'Zaal of expohal',labelnl:'Zaal of expohal',labelfr:'Hall ou salle d\'expo',labelen:'Hall or exhibition hall',labelde:'Saal oder Expo-Halle'},{id:'0.8.0.0.0',domain:'eventtype',name:{nl:'Openbare ruimte',fr:'Espace public',de:'Der öffentliche Raum',en:'Public space'},scope:['places'],label:'Openbare ruimte',labelnl:'Openbare ruimte',labelfr:'Espace public',labelen:'Public space',labelde:'Der öffentliche Raum'},{id:'3.25.0.0.0',domain:'facility',name:{nl:'Contactpunt voor personen met handicap',fr:'point de contact pour les personnes avec un handicap',de:'Kontakpunkt für Menschen mit Behinderung',en:'Point of contact for people with a disability'},scope:['events','places'],label:'Contactpunt voor personen met handicap',labelnl:'Contactpunt voor personen met handicap',labelfr:'point de contact pour les personnes avec un handicap',labelen:'Point of contact for people with a disability',labelde:'Kontakpunkt für Menschen mit Behinderung'},{id:'3.26.0.0.0',domain:'facility',name:{nl:'Parkeerplaats',fr:'Place de parking',de:'Behindertenparkplatz',en:'Parking area'},scope:['events','places'],label:'Parkeerplaats',labelnl:'Parkeerplaats',labelfr:'Place de parking',labelen:'Parking area',labelde:'Behindertenparkplatz'},{id:'3.27.0.0.0',domain:'facility',name:{nl:'Rolstoeltoegankelijk',fr:'Accessible en fauteuil roulant',de:'Rollstuhlgerecht',en:'Accessible for wheelchairs'},scope:['events'],label:'Rolstoeltoegankelijk',labelnl:'Rolstoeltoegankelijk',labelfr:'Accessible en fauteuil roulant',labelen:'Accessible for wheelchairs',labelde:'Rollstuhlgerecht'},{id:'3.28.0.0.0',domain:'facility',name:{nl:'Alternatieve ingang',fr:'Entrée alternative',de:'Alternativer Eingang',en:'Alternative entrance'},scope:['events'],label:'Alternatieve ingang',labelnl:'Alternatieve ingang',labelfr:'Entrée alternative',labelen:'Alternative entrance',labelde:'Alternativer Eingang'},{id:'3.29.0.0.0',domain:'facility',name:{nl:'Gegarandeerd zicht',fr:'Vue garantie',de:'Gewährleistete Aussicht',en:'Guaranteed view'},scope:['events'],label:'Gegarandeerd zicht',labelnl:'Gegarandeerd zicht',labelfr:'Vue garantie',labelen:'Guaranteed view',labelde:'Gewährleistete Aussicht'},{id:'3.30.0.0.0',domain:'facility',name:{nl:'Rolstoelpodium',fr:'Podium surélevé',de:'Rollstuhlpodest',en:'Viewing platform'},scope:['events'],label:'Rolstoelpodium',labelnl:'Rolstoelpodium',labelfr:'Podium surélevé',labelen:'Viewing platform',labelde:'Rollstuhlpodest'},{id:'3.31.0.0.0',domain:'facility',name:{nl:'Toegankelijk sanitair',fr:'Installations sanitaires accesibles',de:'Sanitäranlage für Rollstuhlbenutzer',en:'Accessible sanitary facilities'},scope:['events'],label:'Toegankelijk sanitair',labelnl:'Toegankelijk sanitair',labelfr:'Installations sanitaires accesibles',labelen:'Accessible sanitary facilities',labelde:'Sanitäranlage für Rollstuhlbenutzer'},{id:'3.32.0.0.0',domain:'facility',name:{nl:'Voorbehouden camping',fr:'Camping réservé',de:'Reservierter Campingplatz',en:'Reserved campsite'},scope:['events'],label:'Voorbehouden camping',labelnl:'Voorbehouden camping',labelfr:'Camping réservé',labelen:'Reserved campsite',labelde:'Reservierter Campingplatz'},{id:'3.33.0.0.0',domain:'facility',name:{nl:'Tolken Vlaamse Gebarentaal',fr:'Interprètes de langue de signes',de:'Gebärdensprachdolmetscher',en:'Sign language interpreting service'},scope:['events'],label:'Tolken Vlaamse Gebarentaal',labelnl:'Tolken Vlaamse Gebarentaal',labelfr:'Interprètes de langue de signes',labelen:'Sign language interpreting service',labelde:'Gebärdensprachdolmetscher'},{id:'3.34.0.0.0',domain:'facility',name:{nl:'Vereenvoudigde informatie',fr:'Information simplifiée',de:'Vereinfachte Information',en:'Simplified information'},scope:['events'],label:'Vereenvoudigde informatie',labelnl:'Vereenvoudigde informatie',labelfr:'Information simplifiée',labelen:'Simplified information',labelde:'Vereinfachte Information'},{id:'3.36.0.0.0',domain:'facility',name:{nl:'Verzorgingsruimte',fr:'Salle de soins',de:'Pflegeraum',en:'Care room'},scope:['events'],label:'Verzorgingsruimte',labelnl:'Verzorgingsruimte',labelfr:'Salle de soins',labelen:'Care room',labelde:'Pflegeraum'},{id:'3.37.0.0.0',domain:'facility',name:{nl:'Oplaadzone rolstoelen',fr:'Zone de chargement pour fauteuils roulants',de:'Aufladungsmöglichkeit für Rollstuhle',en:'Charging facility for wheelchairs'},scope:['events'],label:'Oplaadzone rolstoelen',labelnl:'Oplaadzone rolstoelen',labelfr:'Zone de chargement pour fauteuils roulants',labelen:'Charging facility for wheelchairs',labelde:'Aufladungsmöglichkeit für Rollstuhle'},{id:'3.38.0.0.0',domain:'facility',name:{nl:'Inter-assistentie',fr:'Assistance spéciale',de:'Spezialhilfe',en:'Special assistance'},scope:['events'],label:'Inter-assistentie',labelnl:'Inter-assistentie',labelfr:'Assistance spéciale',labelen:'Special assistance',labelde:'Spezialhilfe'},{id:'3.39.0.0.0',domain:'facility',name:{nl:'Begeleiderspas bij gehandicapten',fr:'Carte d\'accompagnateur',de:'Ausweis Begleitperson',en:'Carer pass'},scope:['events'],label:'Begeleiderspas bij gehandicapten',labelnl:'Begeleiderspas bij gehandicapten',labelfr:'Carte d\'accompagnateur',labelen:'Carer pass',labelde:'Ausweis Begleitperson'},{id:'3.40.0.0.0',domain:'facility',name:{nl:'Inter-Toegankelijkheidsgarantie',fr:'Accessibilité garantie',de:'Zertifizierte Zugänglichkeit',en:'Certified accessibility'},scope:['events'],label:'Inter-Toegankelijkheidsgarantie',labelnl:'Inter-Toegankelijkheidsgarantie',labelfr:'Accessibilité garantie',labelen:'Certified accessibility',labelde:'Zertifizierte Zugänglichkeit'},{id:'H28fcfRKFQAQs00K9NF9hh',domain:'facility',name:{nl:'Prikkelarm aanbod',fr:'Offre faiblement incitative',de:'Anreizarmes Angebot',en:'Low incentive'},scope:['events'],label:'Prikkelarm aanbod',labelnl:'Prikkelarm aanbod',labelfr:'Offre faiblement incitative',labelen:'Low incentive',labelde:'Anreizarmes Angebot'},{id:'4Vz9eZf0cnQmtfqcGGnNMF',domain:'facility',name:{nl:'Afspraken en voorspelbaarheid',fr:'Accords et prévisibilité',de:'Vereinbarungen und Vorhersehbarkeit',en:'Agreements and predictability'},scope:['events'],label:'Afspraken en voorspelbaarheid',labelnl:'Afspraken en voorspelbaarheid',labelfr:'Accords et prévisibilité',labelen:'Agreements and predictability',labelde:'Vereinbarungen und Vorhersehbarkeit'},{id:'1.11.1.0.0',domain:'theme',name:{nl:'Taal en communicatie',fr:'Langue et communication',de:'Sprache und Kommunikation',en:'Language and communication'},scope:['events'],label:'Taal en communicatie',labelnl:'Taal en communicatie',labelfr:'Langue et communication',labelen:'Language and communication',labelde:'Sprache und Kommunikation'},{id:'1.11.2.0.0',domain:'theme',name:{nl:'Themakamp',fr:'Camp thématique',de:'Themencamp',en:'Theme camp'},scope:['events'],label:'Themakamp',labelnl:'Themakamp',labelfr:'Camp thématique',labelen:'Theme camp',labelde:'Themencamp'},{id:'0.3.1.0.1',domain:'eventtype',name:{nl:'Cursus met open sessies',fr:'Cours avec sessions ouvertes',de:'Kurs mit offenen Sitzungen',en:'Course with open sessions'},scope:['events'],otherSuggestedTerms:[{id:'1.9.1.0.0',domain:'theme',name:{nl:'Ballet en klassieke dans',fr:'Ballet et danse classique',de:'Ballett und klassischer Tanz',en:'Classical dance and ballet'},scope:['events']},{id:'1.9.2.0.0',domain:'theme',name:{nl:'Moderne dans',fr:'Danse moderne',de:'Modern Dance',en:'Modern dance'},scope:['events']},{id:'1.9.5.0.0',domain:'theme',name:{nl:'Stijl en salondansen',fr:'Danse de salon et stylée',de:'Stil-und Gesellschaftstanz',en:'Ballroom dancing'},scope:['events']},{id:'1.9.3.0.0',domain:'theme',name:{nl:'Volksdans en werelddans',fr:'Danse folklorique et mondiale',de:'Folk-und World Dance',en:'Folk dance'},scope:['events']},{id:'1.1.0.0.0',domain:'theme',name:{nl:'Audiovisuele kunst',fr:'Arts audiovisuels',de:'Audiovisuelle Kunst',en:'Audiovisual arts'},scope:['events']},{id:'1.0.2.0.0',domain:'theme',name:{nl:'Beeldhouwkunst',fr:'Sculpture',de:'Skulptur',en:'Sculpture'},scope:['events']},{id:'0.52.0.0.0',domain:'theme',name:{nl:'Circus',fr:'Cirque',de:'Zirkus',en:'Circus'},scope:['events']},{id:'1.42.0.0.0',domain:'theme',name:{nl:'Creativiteit',fr:'Créativité',de:'Kreativität',en:'Creativity'},scope:['events']},{id:'1.0.5.0.0',domain:'theme',name:{nl:'Decoratieve kunst',fr:'Arts décoratives',de:'Angewandte Kunst',en:'Decorative arts'},scope:['events']},{id:'1.2.2.0.0',domain:'theme',name:{nl:'Design',fr:'Design',de:'Design',en:'Design'},scope:['events']},{id:'1.40.0.0.0',domain:'theme',name:{nl:'Erfgoed',fr:'Patrimoine',de:'Kulturerben',en:'Heritage'},scope:['events']},{id:'1.0.6.0.0',domain:'theme',name:{nl:'Fotografie',fr:'Photographie',de:'Fotografie',en:'Photography'},scope:['events']},{id:'1.0.4.0.0',domain:'theme',name:{nl:'Grafiek',fr:'Art grafique',de:'Grafik',en:'Graphics'},scope:['events']},{id:'1.10.0.0.0',domain:'theme',name:{nl:'Literatuur',fr:'Litérature',de:'Literatur',en:'Literature'},scope:['events']},{id:'1.0.9.0.0',domain:'theme',name:{nl:'Meerdere kunstvormen',fr:'Arts multiples',de:'Mehrere Formen der Kunst',en:'Multiple art forms'},scope:['events']},{id:'1.49.0.0.0',domain:'theme',name:{nl:'Mode',fr:'Mode',de:'Mode',en:'Fashion'},scope:['events']},{id:'1.10.5.0.0',domain:'theme',name:{nl:'Poezie',fr:'Poésie',de:'Poesie',en:'Poetry'},scope:['events']},{id:'1.0.1.0.0',domain:'theme',name:{nl:'Schilderkunst',fr:'Peinture',de:'Malerei',en:'Painting'},scope:['events']},{id:'1.3.1.0.0',domain:'theme',name:{nl:'Tekst en muziektheater',fr:'Théâtre dramatique et musical',de:'Text und Musik',en:'Theatre and Musical theatre'},scope:['events']},{id:'1.8.3.5.0',domain:'theme',name:{nl:'Amusementsmuziek',fr:'Cabaret',de:'Schlager',en:'Cabaret music'},scope:['events']},{id:'1.8.3.3.0',domain:'theme',name:{nl:'Dance muziek',fr:'Musique de danse',de:'Tanzmusik',en:'Dance music'},scope:['events']},{id:'1.8.4.0.0',domain:'theme',name:{nl:'Folk en wereldmuziek',fr:'Musique folklorique et mondiale',de:'Folk und World',en:'Folk and world music'},scope:['events']},{id:'1.8.3.2.0',domain:'theme',name:{nl:'Hip hop, rnb en rap',fr:'Hip hop, rnb et rap',de:'Hip-Hop, R und B und Rap',en:'Hip hop, rnb and rap'},scope:['events']},{id:'1.8.2.0.0',domain:'theme',name:{nl:'Jazz en blues',fr:'Jazz et blues',de:'Jazz und Blues',en:'Jazz and blues'},scope:['events']},{id:'1.8.1.0.0',domain:'theme',name:{nl:'Klassieke muziek',fr:'Musique classique',de:'Klassische Musik',en:'Classical music'},scope:['events']},{id:'1.8.3.1.0',domain:'theme',name:{nl:'Pop en rock',fr:'Pop et rock',de:'Pop und Rock',en:'Pop and rock'},scope:['events']},{id:'1.51.14.0.0',domain:'theme',name:{nl:'Atletiek, wandelen en fietsen',fr:'Athlétisme, marche et cyclisme',de:'Leichtathletik, Wandern und Radfahren',en:'Athletics, running and cycling'},scope:['events']},{id:'1.51.13.0.0',domain:'theme',name:{nl:'Bal en racketsport',fr:'Sports au ballons et raquettes',de:'Ball und Schläger',en:'Ball and racket sports'},scope:['events']},{id:'1.51.6.0.0',domain:'theme',name:{nl:'Fitness, gymnastiek, dans en vechtsport',fr:'Fitness, gymnastique, danse et arts martiaux',de:'Fitness, Tanz und Kampfkunst',en:'Fitness, gymnastics, dance and martial arts'},scope:['events']},{id:'1.58.8.0.0',domain:'theme',name:{nl:'Lucht en motorsport',fr:'Sports aero et moteurs',de:'Luft-und Motorsport',en:'Air and motorsports'},scope:['events']},{id:'1.51.12.0.0',domain:'theme',name:{nl:'Omnisport en andere',fr:'Omnisports et autres',de:'Omnisport und andere',en:'Other sports'},scope:['events']},{id:'1.51.11.0.0',domain:'theme',name:{nl:'Outdoor en Adventure sport',fr:'Sports de plein air et d\'aventure',de:'Outdoor- und Abenteuersport',en:'Outdoor and Adventure sports'},scope:['events']},{id:'1.51.10.0.0',domain:'theme',name:{nl:'Volkssporten',fr:'Sports folkloriques',de:'Sport Menschen',en:'Folklore sports'},scope:['events']},{id:'1.51.3.0.0',domain:'theme',name:{nl:'Zwemmen en watersport',fr:'Natation et sports nautiques',de:'Schwimmen und Wassersport',en:'Swimming and water sports'},scope:['events']},{id:'1.37.1.0.0',domain:'theme',name:{nl:'Gezondheid en zorg',fr:'Santé et soins',de:'Gesundheit und Pflege',en:'Health and care'},scope:['events']},{id:'1.43.0.0.0',domain:'theme',name:{nl:'Interculturele vorming',fr:'Formation interculturelle',de:'Interkulturelle Erziehung',en:'Cross-cultural education'},scope:['events']},{id:'1.64.0.0.0',domain:'theme',name:{nl:'Milieu en natuur',fr:'Environnement et nature',de:'Umwelt und Natur',en:'Environment and nature'},scope:['events']},{id:'1.37.0.0.0',domain:'theme',name:{nl:'Opvoeding',fr:'Éducation',de:'Bildung',en:'Education'},scope:['events']},{id:'1.61.0.0.0',domain:'theme',name:{nl:'Persoon en relaties',fr:'Hommes et relations',de:'Person und Gesellschaft',en:'People and society'},scope:['events']},{id:'1.37.2.0.0',domain:'theme',name:{nl:'Samenleving',fr:'Vivre en société',de:'Gesellschaft',en:'Society'},scope:['events']},{id:'1.65.0.0.0',domain:'theme',name:{nl:'Voeding',fr:'Nutrition',de:'Ernährung',en:'Nutrition'},scope:['events']},{id:'1.25.0.0.0',domain:'theme',name:{nl:'Wetenschap',fr:'Science',de:'Wissenschaft',en:'Science'},scope:['events']},{id:'1.44.0.0.0',domain:'theme',name:{nl:'Zingeving, filosofie en religie',fr:'Sense de la vie, philosophie et religion',de:'Philosophie und Religion',en:'Philosophy and religion'},scope:['events']},{id:'1.21.0.0.0',domain:'theme',name:{nl:'Computer en techniek',fr:'Ordinateurs et technologie',de:'Computer-und Technik',en:'Computer and technology'},scope:['events']}],label:'Cursus met open sessies',labelnl:'Cursus met open sessies',labelfr:'Cours avec sessions ouvertes',labelen:'Course with open sessions',labelde:'Kurs mit offenen Sitzungen'},{id:'8.70.0.0.0',domain:'eventtype',name:{nl:'Theater',fr:'Théâtre',de:'Theater',en:'Theatre'},scope:['places'],label:'Theater',labelnl:'Theater',labelfr:'Théâtre',labelen:'Theatre',labelde:'Theater'}]) - -.constant('eventCategories', [{label:'Begeleide uitstap of rondleiding',id:'0.7.0.0.0',primary:true,themes:[{id:'1.2.1.0.0',label:'Architectuur'},{id:'1.40.0.0.0',label:'Erfgoed'},{id:'1.11.0.0.0',label:'Geschiedenis'},{id:'1.41.0.0.0',label:'Kunst en kunsteducatie'},{id:'1.63.0.0.0',label:'Landbouw en platteland'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.64.0.0.0',label:'Milieu en natuur'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.25.0.0.0',label:'Wetenschap'},{id:'1.44.0.0.0',label:'Zingeving, filosofie en religie'}]},{label:'Beurs',id:'0.6.0.0.0',primary:false,themes:[{id:'1.17.0.0.0',label:'Antiek en brocante'},{id:'1.7.2.0.0',label:'Erfgoed'},{id:'1.62.0.0.0',label:'Gezondheid en wellness'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.64.0.0.0',label:'Milieu en natuur'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.10.8.0.0',label:'Strips'},{id:'1.65.0.0.0',label:'Voeding'},{id:'1.25.0.0.0',label:'Wetenschap'}]},{label:'Concert',id:'0.50.4.0.0',primary:true,themes:[{id:'1.8.3.5.0',label:'Amusementsmuziek'},{id:'1.8.3.3.0',label:'Dance muziek'},{id:'1.8.4.0.0',label:'Folk en wereldmuziek'},{id:'1.8.3.2.0',label:'Hiphop, r&b en rap'},{id:'1.8.2.0.0',label:'Jazz en blues'},{id:'1.8.1.0.0',label:'Klassieke muziek'},{id:'1.8.3.1.0',label:'Pop en rock'}]},{label:'Lessenreeks',id:'0.3.1.0.0',primary:true,themes:[{id:'1.9.1.0.0',label:'Ballet en klassieke dans',group:'Dans'},{id:'1.9.2.0.0',label:'Moderne dans',group:'Dans'},{id:'1.9.5.0.0',label:'Stijl en salondansen',group:'Dans'},{id:'1.9.3.0.0',label:'Volksdans en werelddans',group:'Dans'},{id:'1.1.0.0.0',label:'Audiovisuele kunst',group:'Kunst en erfgoed'},{id:'1.0.2.0.0',label:'Beeldhouwkunst',group:'Kunst en erfgoed'},{id:'0.52.0.0.0',label:'Circus',group:'Kunst en erfgoed'},{id:'1.42.0.0.0',label:'Creativiteit',group:'Kunst en erfgoed'},{id:'1.0.5.0.0',label:'Decoratieve kunst',group:'Kunst en erfgoed'},{id:'1.2.2.0.0',label:'Design',group:'Kunst en erfgoed'},{id:'1.40.0.0.0',label:'Erfgoed',group:'Kunst en erfgoed'},{id:'1.0.6.0.0',label:'Fotografie',group:'Kunst en erfgoed'},{id:'1.0.4.0.0',label:'Grafiek',group:'Kunst en erfgoed'},{id:'1.10.0.0.0',label:'Literatuur',group:'Kunst en erfgoed'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen',group:'Kunst en erfgoed'},{id:'1.49.0.0.0',label:'Mode',group:'Kunst en erfgoed'},{id:'1.10.5.0.0',label:'Poëzie',group:'Kunst en erfgoed'},{id:'1.0.1.0.0',label:'Schilderkunst',group:'Kunst en erfgoed'},{id:'1.3.1.0.0',label:'Tekst- en muziektheater',group:'Kunst en erfgoed'},{id:'1.8.3.5.0',label:'Amusementsmuziek',group:'Muziek'},{id:'1.8.3.3.0',label:'Dance muziek',group:'Muziek'},{id:'1.8.4.0.0',label:'Folk en wereldmuziek',group:'Muziek'},{id:'1.8.3.2.0',label:'Hiphop, r&b en rap',group:'Muziek'},{id:'1.8.2.0.0',label:'Jazz en blues',group:'Muziek'},{id:'1.8.1.0.0',label:'Klassieke muziek',group:'Muziek'},{id:'1.8.3.1.0',label:'Pop en rock',group:'Muziek'},{id:'1.51.14.0.0',label:'Atletiek, wandelen en fietsen',group:'Sport'},{id:'1.51.13.0.0',label:'Bal en racketsport',group:'Sport'},{id:'1.51.6.0.0',label:'Fitness, gymnastiek, dans en vechtsport',group:'Sport'},{id:'1.58.8.0.0',label:'Lucht en motorsport',group:'Sport'},{id:'1.51.12.0.0',label:'Omnisport en andere',group:'Sport'},{id:'1.51.11.0.0',label:'Outdoor en Adventure sport',group:'Sport'},{id:'1.51.10.0.0',label:'Volkssporten',group:'Sport'},{id:'1.51.3.0.0',label:'Zwemmen en watersport',group:'Sport'},{id:'1.37.1.0.0',label:'Gezondheid en wellness',group:'Varia'},{id:'1.43.0.0.0',label:'Interculturele vorming',group:'Varia'},{id:'1.64.0.0.0',label:'Milieu en natuur',group:'Varia'},{id:'1.37.0.0.0',label:'Opvoeding',group:'Varia'},{id:'1.61.0.0.0',label:'Persoon en relaties',group:'Varia'},{id:'1.37.2.0.0',label:'Samenleving',group:'Varia'},{id:'1.65.0.0.0',label:'Voeding',group:'Varia'},{id:'1.25.0.0.0',label:'Wetenschap',group:'Varia'},{id:'1.44.0.0.0',label:'Zingeving, filosofie en religie',group:'Varia'}]},{label:'Cursus met open sessies',id:'0.3.1.0.1',primary:true,themes:[{id:'1.9.1.0.0',label:'Ballet en klassieke dans',group:'Dans'},{id:'1.9.2.0.0',label:'Moderne dans',group:'Dans'},{id:'1.9.5.0.0',label:'Stijl en salondansen',group:'Dans'},{id:'1.9.3.0.0',label:'Volksdans en werelddans',group:'Dans'},{id:'1.1.0.0.0',label:'Audiovisuele kunst',group:'Kunst en erfgoed'},{id:'1.0.2.0.0',label:'Beeldhouwkunst',group:'Kunst en erfgoed'},{id:'0.52.0.0.0',label:'Circus',group:'Kunst en erfgoed'},{id:'1.42.0.0.0',label:'Creativiteit',group:'Kunst en erfgoed'},{id:'1.0.5.0.0',label:'Decoratieve kunst',group:'Kunst en erfgoed'},{id:'1.2.2.0.0',label:'Design',group:'Kunst en erfgoed'},{id:'1.40.0.0.0',label:'Erfgoed',group:'Kunst en erfgoed'},{id:'1.0.6.0.0',label:'Fotografie',group:'Kunst en erfgoed'},{id:'1.0.4.0.0',label:'Grafiek',group:'Kunst en erfgoed'},{id:'1.10.0.0.0',label:'Literatuur',group:'Kunst en erfgoed'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen',group:'Kunst en erfgoed'},{id:'1.49.0.0.0',label:'Mode',group:'Kunst en erfgoed'},{id:'1.10.5.0.0',label:'Poëzie',group:'Kunst en erfgoed'},{id:'1.0.1.0.0',label:'Schilderkunst',group:'Kunst en erfgoed'},{id:'1.3.1.0.0',label:'Tekst- en muziektheater',group:'Kunst en erfgoed'},{id:'1.8.3.5.0',label:'Amusementsmuziek',group:'Muziek'},{id:'1.8.3.3.0',label:'Dance muziek',group:'Muziek'},{id:'1.8.4.0.0',label:'Folk en wereldmuziek',group:'Muziek'},{id:'1.8.3.2.0',label:'Hiphop, r&b en rap',group:'Muziek'},{id:'1.8.2.0.0',label:'Jazz en blues',group:'Muziek'},{id:'1.8.1.0.0',label:'Klassieke muziek',group:'Muziek'},{id:'1.8.3.1.0',label:'Pop en rock',group:'Muziek'},{id:'1.51.14.0.0',label:'Atletiek, wandelen en fietsen',group:'Sport'},{id:'1.51.13.0.0',label:'Bal en racketsport',group:'Sport'},{id:'1.51.6.0.0',label:'Fitness, gymnastiek, dans en vechtsport',group:'Sport'},{id:'1.58.8.0.0',label:'Lucht en motorsport',group:'Sport'},{id:'1.51.12.0.0',label:'Omnisport en andere',group:'Sport'},{id:'1.51.11.0.0',label:'Outdoor en Adventure sport',group:'Sport'},{id:'1.51.10.0.0',label:'Volkssporten',group:'Sport'},{id:'1.51.3.0.0',label:'Zwemmen en watersport',group:'Sport'},{id:'1.37.1.0.0',label:'Gezondheid en wellness',group:'Varia'},{id:'1.43.0.0.0',label:'Interculturele vorming',group:'Varia'},{id:'1.64.0.0.0',label:'Milieu en natuur',group:'Varia'},{id:'1.37.0.0.0',label:'Opvoeding',group:'Varia'},{id:'1.61.0.0.0',label:'Persoon en relaties',group:'Varia'},{id:'1.37.2.0.0',label:'Samenleving',group:'Varia'},{id:'1.65.0.0.0',label:'Voeding',group:'Varia'},{id:'1.25.0.0.0',label:'Wetenschap',group:'Varia'},{id:'1.44.0.0.0',label:'Zingeving, filosofie en religie',group:'Varia'}]},{label:'Dansvoorstelling',id:'0.54.0.0.0',primary:false,themes:[{id:'1.9.1.0.0',label:'Ballet en klassieke dans'},{id:'1.9.2.0.0',label:'Moderne dans'},{id:'1.9.5.0.0',label:'Stijl en salondansen'},{id:'1.9.3.0.0',label:'Volksdans en werelddans'}]},{label:'Eet- of drankfestijn',id:'1.50.0.0.0',primary:false},{label:'Festival',id:'0.5.0.0.0',primary:false,themes:[{id:'1.8.3.5.0',label:'Amusementsmuziek'},{id:'0.52.0.0.0',label:'Circus'},{id:'1.8.3.3.0',label:'Dance muziek'},{id:'1.8.4.0.0',label:'Folk en wereldmuziek'},{id:'1.3.10.0.0',label:'Humor en comedy'},{id:'1.8.2.0.0',label:'Jazz en blues'},{id:'1.8.1.0.0',label:'Klassieke muziek'},{id:'1.41.0.0.0',label:'Kunst en kunsteducatie'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.7.14.0.0',label:'Meerdere filmgenres'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.8.3.1.0',label:'Pop en rock'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.3.1.0.0',label:'Tekst- en muziektheater'},{id:'1.25.0.0.0',label:'Wetenschap'}]},{label:'Film',id:'0.50.6.0.0',primary:true,themes:[{id:'1.7.2.0.0',label:'Actie- en avonturenfilm'},{id:'1.7.12.0.0',label:'Animatie en kinderfilms'},{id:'1.7.11.0.0',label:'Cinefiel'},{id:'1.7.1.0.0',label:'Documentaires en reportages'},{id:'1.7.4.0.0',label:'Drama'},{id:'1.7.10.0.0',label:'Filmmusical'},{id:'1.7.6.0.0',label:'Griezelfilm of horror'},{id:'1.7.8.0.0',label:'Historische film'},{id:'1.7.3.0.0',label:'Komedie'},{id:'1.7.13.0.0',label:'Kortfilm'},{id:'1.7.7.0.0',label:'Science fiction'},{id:'1.7.15.0.0',label:'Thriller'}]},{label:'Kamp of vakantie',id:'0.57.0.0.0',primary:false,themes:[{id:'1.51.11.0.0',label:'Avontuur'},{id:'1.42.0.0.0',label:'Creativiteit'},{id:'1.65.0.0.0',label:'Koken'},{id:'1.64.0.0.0',label:'Natuur'},{id:'1.51.12.0.0',label:'Sport'},{id:'1.21.0.0.0',label:'Technologie'},{id:'1.11.2.0.0',label:'Themakamp'},{id:'1.11.1.0.0',label:'Taal en communicatie'}]},{label:'Festiviteit',id:'0.28.0.0.0',primary:false},{label:'Lezing of congres',id:'0.3.2.0.0',primary:'false',themes:[{id:'1.21.0.0.0',label:'Computer en techniek'},{id:'1.42.0.0.0',label:'Creativiteit'},{id:'1.40.0.0.0',label:'Erfgoed'},{id:'1.11.0.0.0',label:'Geschiedenis'},{id:'1.37.1.0.0',label:'Gezondheid en zorg'},{id:'1.41.0.0.0',label:'Kunst en kunsteducatie'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.64.0.0.0',label:'Milieu en natuur'},{id:'1.37.0.0.0',label:'Opvoeding'},{id:'1.61.0.0.0',label:'Persoon en relaties'},{id:'1.10.5.0.0',label:'Poëzie'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.25.0.0.0',label:'Wetenschap'},{id:'1.44.0.0.0',label:'Zingeving, filosofie en religie'}]},{label:'Markt, braderie of kermis',id:'0.37.0.0.0',primary:false,themes:[{id:'1.17.0.0.0',label:'Antiek en brocante'},{id:'1.66.0.0.0',label:'Economie'},{id:'1.62.0.0.0',label:'Gezondheid en wellness'},{id:'1.63.0.0.0',label:'Landbouw en platteland'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.64.0.0.0',label:'Milieu en natuur'},{id:'1.37.2.0.0',label:'Samenleving'}]},{label:'Opendeurdag',id:'0.12.0.0.0',primary:true,themes:[{id:'1.2.1.0.0',label:'Architectuur'},{id:'1.21.0.0.0',label:'Computer en techniek'},{id:'1.40.0.0.0',label:'Erfgoed'},{id:'1.41.0.0.0',label:'Kunst en kunsteducatie'},{id:'1.63.0.0.0',label:'Landbouw en platteland'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.25.0.0.0',label:'Wetenschap'}]},{label:'Party of fuif',id:'0.49.0.0.0',primary:false},{label:'Route',id:'0.17.0.0.0',primary:true},{label:'Spel of quiz',id:'0.50.21.0.0',primary:false},{label:'Sport en beweging',id:'0.59.0.0.0',primary:false,themes:[{id:'1.51.14.0.0',label:'Atletiek, wandelen en fietsen'},{id:'1.51.13.0.0',label:'Bal en racketsport'},{id:'1.51.6.0.0',label:'Fitness, gymnastiek, dans en vechtsport'},{id:'1.58.8.0.0',label:'Lucht en motorsport'},{id:'1.51.12.0.0',label:'Omnisport en andere'},{id:'1.51.11.0.0',label:'Outdoor en Adventure sport'},{id:'1.51.10.0.0',label:'Volkssporten'},{id:'1.51.3.0.0',label:'Zwemmen en watersport'}]},{label:'Sportwedstrijd bekijken',id:'0.19.0.0.0',primary:false,themes:[{id:'1.51.14.0.0',label:'Atletiek, wandelen en fietsen'},{id:'1.51.13.0.0',label:'Bal en racketsport'},{id:'1.51.6.0.0',label:'Fitness, gymnastiek, dans en vechtsport'},{id:'1.58.8.0.0',label:'Lucht en motorsport'},{id:'1.51.12.0.0',label:'Omnisport en andere'},{id:'1.51.11.0.0',label:'Outdoor en Adventure sport'},{id:'1.51.10.0.0',label:'Volkssporten'},{id:'1.51.3.0.0',label:'Zwemmen en watersport'}]},{label:'Tentoonstelling',id:'0.0.0.0.0',primary:true,themes:[{id:'1.2.1.0.0',label:'Architectuur'},{id:'1.1.0.0.0',label:'Audiovisuele kunst'},{id:'1.0.2.0.0',label:'Beeldhouwkunst'},{id:'1.0.5.0.0',label:'Decoratieve kunst'},{id:'1.2.2.0.0',label:'Design'},{id:'1.40.0.0.0',label:'Erfgoed'},{id:'1.0.6.0.0',label:'Fotografie'},{id:'1.11.0.0.0',label:'Geschiedenis'},{id:'1.0.4.0.0',label:'Grafiek'},{id:'1.0.3.0.0',label:'Installatiekunst'},{id:'1.10.0.0.0',label:'Literatuur'},{id:'1.0.9.0.0',label:'Meerdere kunstvormen'},{id:'1.64.0.0.0',label:'Milieu en natuur'},{id:'1.49.0.0.0',label:'Mode'},{id:'1.37.2.0.0',label:'Samenleving'},{id:'1.0.1.0.0',label:'Schilderkunst'},{id:'1.25.0.0.0',label:'Wetenschap'}]},{label:'Theatervoorstelling',id:'0.55.0.0.0',primary:false,themes:[{id:'0.52.0.0.0',label:'Circus'},{id:'1.3.5.0.0',label:'Figuren en poppentheater'},{id:'1.3.10.0.0',label:'Humor en comedy'},{id:'1.3.4.0.0',label:'Mime en bewegingstheater'},{id:'1.4.0.0.0',label:'Musical'},{id:'1.5.0.0.0',label:'Opera en operette'},{id:'1.3.1.0.0',label:'Tekst- en muziektheater'}]}]) - -.constant('placeCategories', [{label:'Archeologische Site',id:'3CuHvenJ+EGkcvhXLg9Ykg',primary:true},{label:'Bibliotheek of documentatiecentrum',id:'kI7uAyn2uUu9VV6Z3uWZTA',primary:true},{label:'Bioscoop',id:'BtVNd33sR0WntjALVbyp3w',primary:false},{label:'Cultuur- of ontmoetingscentrum',id:'Yf4aZBfsUEu2NsQqsprngw',primary:false},{label:'Discotheek',id:'YVBc8KVdrU6XfTNvhMYUpg',primary:false},{label:'Horeca',id:'ekdc4ATGoUitCa0e6me6xA',primary:false},{label:'Jeugdhuis of jeugdcentrum',id:'JCjA0i5COUmdjMwcyjNAFA',primary:false},{label:'Monument',id:'0.14.0.0.0',primary:true},{label:'Museum of galerij',id:'GnPFp9uvOUyqhOckIFMKmg',primary:true},{label:'Natuur, park of tuin',id:'0.15.0.0.0',primary:true},{label:'Openbare ruimte',id:'0.8.0.0.0',primary:false},{label:'Recreatiedomein of centrum',id:'0.53.0.0.0',primary:false},{label:'School of onderwijscentrum',id:'rJRFUqmd6EiqTD4c7HS90w',primary:false},{label:'Sportcentrum',id:'eBwaUAAhw0ur0Z02i5ttnw',primary:false},{label:'Theater',id:'8.70.0.0.0',primary:false},{label:'Thema of pretpark',id:'0.41.0.0.0',primary:false},{label:'Winkel',id:'VRC6HX0Wa063sq98G5ciqw',primary:false},{label:'Speeltuin',id:'wwjRVmExI0w6xfQwT1KWpx',primary:false},{label:'Zaal of expohal',id:'OyaPaf64AEmEAYXHeLMAtA',primary:false}]) - -.constant('facilities', {motor:[{label:'Assistentie',id:'3.23.2.0.0'},{label:'Parkeerplaats',id:'3.26.0.0.0'},{label:'Rolstoel ter beschikking',id:'3.23.3.0.0'},{label:'Rolstoelpodium',id:'3.30.0.0.0'},{label:'Rolstoeltoegankelijk',id:'3.27.0.0.0'},{label:'Toegankelijk sanitair',id:'3.31.0.0.0'}],visual:[{label:'Audiodescriptie',id:'3.13.2.0.0'},{label:'Voorzieningen voor assistentiehonden',id:'3.13.1.0.0'}],hearing:[{label:'Boven- of ondertiteling',id:'3.17.3.0.0'},{label:'Ringleiding',id:'3.17.1.0.0'},{label:'Tolken Vlaamse Gebarentaal',id:'3.33.0.0.0'}],mental:[{label:'Vereenvoudigde informatie',id:'3.34.0.0.0'}],neurodivers:[{label:'Prikkelarm aanbod',id:'H28fcfRKFQAQs00K9NF9hh'},{label:'Afspraken en voorspelbaarheid',id:'4Vz9eZf0cnQmtfqcGGnNMF'}],other:[{label:'Alternatieve ingang',id:'3.28.0.0.0'},{label:'Begeleiderspas',id:'3.39.0.0.0'},{label:'Contactpunt voor personen met handicap',id:'3.25.0.0.0'},{label:'Gegarandeerd zicht',id:'3.29.0.0.0'},{label:'Inter-assistentie',id:'3.38.0.0.0'},{label:'Inter-events',id:'3.40.0.0.0'},{label:'Stroomvoorziening voor handicap',id:'3.37.0.0.0'},{label:'Verzorgingsruimte',id:'3.36.0.0.0'},{label:'Voorbehouden camping',id:'3.32.0.0.0'}],place:[{label:'Contactpunt voor personen met handicap',id:'3.25.0.0.0'},{label:'Rolstoel ter beschikking',id:'3.23.3.0.0'},{label:'Parkeerplaats',id:'3.26.0.0.0'},{label:'Voorzieningen voor assistentiehonden',id:'3.13.1.0.0'}]}) - -.constant('citiesBE', [{label:'5680 Vodelée',name:'Vodelée',zip:'5680'},{label:'5680 Vaucelles',name:'Vaucelles',zip:'5680'},{label:'5680 Soulme',name:'Soulme',zip:'5680'},{label:'5680 Romerée',name:'Romerée',zip:'5680'},{label:'5680 Niverlée',name:'Niverlée',zip:'5680'},{label:'5680 Matagne-la-Petite',name:'Matagne-la-Petite',zip:'5680'},{label:'5680 Matagne-la-Grande',name:'Matagne-la-Grande',zip:'5680'},{label:'5680 Gochenée',name:'Gochenée',zip:'5680'},{label:'5680 Gimnée',name:'Gimnée',zip:'5680'},{label:'5680 Doische',name:'Doische',zip:'5680'},{label:'5670 Viroinval',name:'Viroinval',zip:'5670'},{label:'5670 Vierves-sur-Viroin',name:'Vierves-sur-Viroin',zip:'5670'},{label:'5670 Treignes',name:'Treignes',zip:'5670'},{label:'5670 Olloy-sur-Viroin',name:'Olloy-sur-Viroin',zip:'5670'},{label:'5670 Oignies-en-Thiérache',name:'Oignies-en-Thiérache',zip:'5670'},{label:'5670 Nismes',name:'Nismes',zip:'5670'},{label:'5670 Mazée',name:'Mazée',zip:'5670'},{label:'5670 Le Mesnil',name:'Le Mesnil',zip:'5670'},{label:'5670 Dourbes',name:'Dourbes',zip:'5670'},{label:'5660 Presgaux',name:'Presgaux',zip:'5660'},{label:'5660 Petite-Chapelle',name:'Petite-Chapelle',zip:'5660'},{label:'5660 Petigny',name:'Petigny',zip:'5660'},{label:'5660 Pesche',name:'Pesche',zip:'5660'},{label:'5660 Mariembourg',name:'Mariembourg',zip:'5660'},{label:'5660 Gonrieux',name:'Gonrieux',zip:'5660'},{label:'5660 Frasnes Namur',name:'Frasnes Namur',zip:'5660'},{label:'5660 Dailly',name:'Dailly',zip:'5660'},{label:'5660 Cul-des-Sarts',name:'Cul-des-Sarts',zip:'5660'},{label:'5660 Couvin',name:'Couvin',zip:'5660'},{label:'5660 Brûly-de-Pesche',name:'Brûly-de-Pesche',zip:'5660'},{label:'5660 Brûly',name:'Brûly',zip:'5660'},{label:'5660 Boussu-en-Fagne',name:'Boussu-en-Fagne',zip:'5660'},{label:'5660 Aublain',name:'Aublain',zip:'5660'},{label:'5651 Thy-le-Château',name:'Thy-le-Château',zip:'5651'},{label:'5651 Tarcienne',name:'Tarcienne',zip:'5651'},{label:'5651 Somzée',name:'Somzée',zip:'5651'},{label:'5651 Rognée',name:'Rognée',zip:'5651'},{label:'5651 Laneffe',name:'Laneffe',zip:'5651'},{label:'5651 Gourdinne',name:'Gourdinne',zip:'5651'},{label:'5651 Berzée',name:'Berzée',zip:'5651'},{label:'5650 Yves-Gomezée',name:'Yves-Gomezée',zip:'5650'},{label:'5650 Walcourt',name:'Walcourt',zip:'5650'},{label:'5650 Vogenée',name:'Vogenée',zip:'5650'},{label:'5650 Pry',name:'Pry',zip:'5650'},{label:'5650 Fraire',name:'Fraire',zip:'5650'},{label:'5650 Fontenelle',name:'Fontenelle',zip:'5650'},{label:'5650 Clermont Namur',name:'Clermont Namur',zip:'5650'},{label:'5650 Chastrès',name:'Chastrès',zip:'5650'},{label:'5650 Castillon',name:'Castillon',zip:'5650'},{label:'5646 Stave',name:'Stave',zip:'5646'},{label:'5644 Ermeton-sur-Biert',name:'Ermeton-sur-Biert',zip:'5644'},{label:'5641 Furnaux',name:'Furnaux',zip:'5641'},{label:'5640 Saint-Gérard',name:'Saint-Gérard',zip:'5640'},{label:'5640 Oret',name:'Oret',zip:'5640'},{label:'5640 Mettet',name:'Mettet',zip:'5640'},{label:'5640 Graux',name:'Graux',zip:'5640'},{label:'5640 Biesmerée',name:'Biesmerée',zip:'5640'},{label:'5640 Biesme',name:'Biesme',zip:'5640'},{label:'5630 Villers-Deux-Eglises',name:'Villers-Deux-Eglises',zip:'5630'},{label:'5630 Soumoy',name:'Soumoy',zip:'5630'},{label:'5630 Silenrieux',name:'Silenrieux',zip:'5630'},{label:'5630 Senzeille',name:'Senzeille',zip:'5630'},{label:'5630 Daussois',name:'Daussois',zip:'5630'},{label:'5630 Cerfontaine',name:'Cerfontaine',zip:'5630'},{label:'5621 Thy-le-Bauduin',name:'Thy-le-Bauduin',zip:'5621'},{label:'5621 Morialmé',name:'Morialmé',zip:'5621'},{label:'5621 Hanzinne',name:'Hanzinne',zip:'5621'},{label:'5621 Hanzinelle',name:'Hanzinelle',zip:'5621'},{label:'5620 Saint-Aubin',name:'Saint-Aubin',zip:'5620'},{label:'5620 Rosée',name:'Rosée',zip:'5620'},{label:'5620 Morville',name:'Morville',zip:'5620'},{label:'5620 Hemptinne-lez-Florennes',name:'Hemptinne-lez-Florennes',zip:'5620'},{label:'5620 Florennes',name:'Florennes',zip:'5620'},{label:'5620 Flavion',name:'Flavion',zip:'5620'},{label:'5620 Corenne',name:'Corenne',zip:'5620'},{label:'5600 Vodecée',name:'Vodecée',zip:'5600'},{label:'5600 Villers-le-Gambon',name:'Villers-le-Gambon',zip:'5600'},{label:'5600 Villers-en-Fagne',name:'Villers-en-Fagne',zip:'5600'},{label:'5600 Surice',name:'Surice',zip:'5600'},{label:'5600 Sautour',name:'Sautour',zip:'5600'},{label:'5600 Sart-en-Fagne',name:'Sart-en-Fagne',zip:'5600'},{label:'5600 Samart',name:'Samart',zip:'5600'},{label:'5600 Romedenne',name:'Romedenne',zip:'5600'},{label:'5600 Roly',name:'Roly',zip:'5600'},{label:'5600 Philippeville',name:'Philippeville',zip:'5600'},{label:'5600 Omezée',name:'Omezée',zip:'5600'},{label:'5600 Neuville Philippeville',name:'Neuville Philippeville',zip:'5600'},{label:'5600 Merlemont',name:'Merlemont',zip:'5600'},{label:'5600 Jamiolle',name:'Jamiolle',zip:'5600'},{label:'5600 Jamagne',name:'Jamagne',zip:'5600'},{label:'5600 Franchimont',name:'Franchimont',zip:'5600'},{label:'5600 Fagnolle',name:'Fagnolle',zip:'5600'},{label:'5590 Sovet',name:'Sovet',zip:'5590'},{label:'5590 Serinchamps',name:'Serinchamps',zip:'5590'},{label:'5590 Pessoux',name:'Pessoux',zip:'5590'},{label:'5590 Leignon',name:'Leignon',zip:'5590'},{label:'5590 Haversin',name:'Haversin',zip:'5590'},{label:'5590 Conneux',name:'Conneux',zip:'5590'},{label:'5590 Ciney',name:'Ciney',zip:'5590'},{label:'5590 Chevetogne',name:'Chevetogne',zip:'5590'},{label:'5590 Braibant',name:'Braibant',zip:'5590'},{label:'5590 Achêne',name:'Achêne',zip:'5590'},{label:'5580 Wavreille',name:'Wavreille',zip:'5580'},{label:'5580 Villers-sur-Lesse',name:'Villers-sur-Lesse',zip:'5580'},{label:'5580 Rochefort',name:'Rochefort',zip:'5580'},{label:'5580 Mont-Gauthier',name:'Mont-Gauthier',zip:'5580'},{label:'5580 Lessive',name:'Lessive',zip:'5580'},{label:'5580 Lavaux-Sainte-Anne',name:'Lavaux-Sainte-Anne',zip:'5580'},{label:'5580 Jemelle',name:'Jemelle',zip:'5580'},{label:'5580 Han-sur-Lesse',name:'Han-sur-Lesse',zip:'5580'},{label:'5580 Eprave',name:'Eprave',zip:'5580'},{label:'5580 Buissonville',name:'Buissonville',zip:'5580'},{label:'5580 Ave-et-Auffe',name:'Ave-et-Auffe',zip:'5580'},{label:'5575 Willerzie',name:'Willerzie',zip:'5575'},{label:'5575 Vencimont',name:'Vencimont',zip:'5575'},{label:'5575 Sart-Custinne',name:'Sart-Custinne',zip:'5575'},{label:'5575 Rienne',name:'Rienne',zip:'5575'},{label:'5575 Patignies',name:'Patignies',zip:'5575'},{label:'5575 Malvoisin',name:'Malvoisin',zip:'5575'},{label:'5575 Louette-Saint-Pierre',name:'Louette-Saint-Pierre',zip:'5575'},{label:'5575 Louette-Saint-Denis',name:'Louette-Saint-Denis',zip:'5575'},{label:'5575 Houdremont',name:'Houdremont',zip:'5575'},{label:'5575 Gedinne',name:'Gedinne',zip:'5575'},{label:'5575 Bourseigne-Vieille',name:'Bourseigne-Vieille',zip:'5575'},{label:'5575 Bourseigne-Neuve',name:'Bourseigne-Neuve',zip:'5575'},{label:'5576 Froidfontaine',name:'Froidfontaine',zip:'5576'},{label:'5574 Pondrôme',name:'Pondrôme',zip:'5574'},{label:'5573 Martouzin-Neuville',name:'Martouzin-Neuville',zip:'5573'},{label:'5572 Focant',name:'Focant',zip:'5572'},{label:'5571 Wiesme',name:'Wiesme',zip:'5571'},{label:'5570 Winenne',name:'Winenne',zip:'5570'},{label:'5570 Wancennes',name:'Wancennes',zip:'5570'},{label:'5570 Vonêche',name:'Vonêche',zip:'5570'},{label:'5570 Javingue',name:'Javingue',zip:'5570'},{label:'5570 Honnay',name:'Honnay',zip:'5570'},{label:'5570 Feschaux',name:'Feschaux',zip:'5570'},{label:'5570 Felenne',name:'Felenne',zip:'5570'},{label:'5570 Dion',name:'Dion',zip:'5570'},{label:'5570 Beauraing',name:'Beauraing',zip:'5570'},{label:'5570 Baronville',name:'Baronville',zip:'5570'},{label:'5564 Wanlin',name:'Wanlin',zip:'5564'},{label:'5563 Hour',name:'Hour',zip:'5563'},{label:'5562 Custinne',name:'Custinne',zip:'5562'},{label:'5561 Celles Namur',name:'Celles Namur',zip:'5561'},{label:'5560 Mesnil-Saint-Blaise',name:'Mesnil-Saint-Blaise',zip:'5560'},{label:'5560 Mesnil-Eglise',name:'Mesnil-Eglise',zip:'5560'},{label:'5560 Hulsonniaux',name:'Hulsonniaux',zip:'5560'},{label:'5560 Houyet',name:'Houyet',zip:'5560'},{label:'5560 Finnevaux',name:'Finnevaux',zip:'5560'},{label:'5560 Ciergnon',name:'Ciergnon',zip:'5560'},{label:'5555 Petit-Fays',name:'Petit-Fays',zip:'5555'},{label:'5555 Oizy',name:'Oizy',zip:'5555'},{label:'5555 Naomé',name:'Naomé',zip:'5555'},{label:'5555 Monceau-en-Ardenne',name:'Monceau-en-Ardenne',zip:'5555'},{label:'5555 Gros-Fays',name:'Gros-Fays',zip:'5555'},{label:'5555 Graide',name:'Graide',zip:'5555'},{label:'5555 Cornimont',name:'Cornimont',zip:'5555'},{label:'5555 Bièvre',name:'Bièvre',zip:'5555'},{label:'5555 Bellefontaine Namur',name:'Bellefontaine Namur',zip:'5555'},{label:'5555 Baillamont',name:'Baillamont',zip:'5555'},{label:'5550 Vresse-sur-Semois',name:'Vresse-sur-Semois',zip:'5550'},{label:'5550 Sugny',name:'Sugny',zip:'5550'},{label:'5550 Pussemange',name:'Pussemange',zip:'5550'},{label:'5550 Orchimont',name:'Orchimont',zip:'5550'},{label:'5550 Nafraiture',name:'Nafraiture',zip:'5550'},{label:'5550 Mouzaive',name:'Mouzaive',zip:'5550'},{label:'5550 Membre',name:'Membre',zip:'5550'},{label:'5550 Laforêt',name:'Laforêt',zip:'5550'},{label:'5550 Chairière',name:'Chairière',zip:'5550'},{label:'5550 Bohan',name:'Bohan',zip:'5550'},{label:'5550 Bagimont',name:'Bagimont',zip:'5550'},{label:'5550 Alle',name:'Alle',zip:'5550'},{label:'5544 Agimont',name:'Agimont',zip:'5544'},{label:'5543 Heer',name:'Heer',zip:'5543'},{label:'5542 Blaimont',name:'Blaimont',zip:'5542'},{label:'5541 Hastière-par-Delà',name:'Hastière-par-Delà',zip:'5541'},{label:'5540 Waulsort',name:'Waulsort',zip:'5540'},{label:'5540 Hermeton-sur-Meuse',name:'Hermeton-sur-Meuse',zip:'5540'},{label:'5540 Hastière-Lavaux',name:'Hastière-Lavaux',zip:'5540'},{label:'5540 Hastière',name:'Hastière',zip:'5540'},{label:'5537 Warnant',name:'Warnant',zip:'5537'},{label:'5537 Sosoye',name:'Sosoye',zip:'5537'},{label:'5537 Haut-le-Wastia',name:'Haut-le-Wastia',zip:'5537'},{label:'5537 Denée',name:'Denée',zip:'5537'},{label:'5537 Bioul',name:'Bioul',zip:'5537'},{label:'5537 Annevoie-Rouillon',name:'Annevoie-Rouillon',zip:'5537'},{label:'5537 Anhée',name:'Anhée',zip:'5537'},{label:'5530 Yvoir',name:'Yvoir',zip:'5530'},{label:'5530 Spontin',name:'Spontin',zip:'5530'},{label:'5530 Purnode',name:'Purnode',zip:'5530'},{label:'5530 Mont Namur',name:'Mont Namur',zip:'5530'},{label:'5530 Houx',name:'Houx',zip:'5530'},{label:'5530 Godinne',name:'Godinne',zip:'5530'},{label:'5530 Evrehailles',name:'Evrehailles',zip:'5530'},{label:'5530 Durnal',name:'Durnal',zip:'5530'},{label:'5530 Dorinne',name:'Dorinne',zip:'5530'},{label:'5524 Gerin',name:'Gerin',zip:'5524'},{label:'5523 Weillen',name:'Weillen',zip:'5523'},{label:'5523 Sommière',name:'Sommière',zip:'5523'},{label:'5522 Falaën',name:'Falaën',zip:'5522'},{label:'5521 Serville',name:'Serville',zip:'5521'},{label:'5520 Onhaye',name:'Onhaye',zip:'5520'},{label:'5520 Anthée',name:'Anthée',zip:'5520'},{label:'5504 Foy-Notre-Dame',name:'Foy-Notre-Dame',zip:'5504'},{label:'5503 Sorinnes',name:'Sorinnes',zip:'5503'},{label:'5502 Thynes',name:'Thynes',zip:'5502'},{label:'5501 Lisogne',name:'Lisogne',zip:'5501'},{label:'5500 Furfooz',name:'Furfooz',zip:'5500'},{label:'5500 Falmignoul',name:'Falmignoul',zip:'5500'},{label:'5500 Falmagne',name:'Falmagne',zip:'5500'},{label:'5500 Dréhance',name:'Dréhance',zip:'5500'},{label:'5500 Dinant',name:'Dinant',zip:'5500'},{label:'5500 Bouvignes-sur-Meuse',name:'Bouvignes-sur-Meuse',zip:'5500'},{label:'5500 Anseremme',name:'Anseremme',zip:'5500'},{label:'5380 Tillier',name:'Tillier',zip:'5380'},{label:'5380 Pontillas',name:'Pontillas',zip:'5380'},{label:'5380 Noville-les-Bois',name:'Noville-les-Bois',zip:'5380'},{label:'5380 Marchovelette',name:'Marchovelette',zip:'5380'},{label:'5380 Hingeon',name:'Hingeon',zip:'5380'},{label:'5380 Hemptinne Fernelmont',name:'Hemptinne Fernelmont',zip:'5380'},{label:'5380 Franc-Waret',name:'Franc-Waret',zip:'5380'},{label:'5380 Forville',name:'Forville',zip:'5380'},{label:'5380 Fernelmont',name:'Fernelmont',zip:'5380'},{label:'5380 Cortil-Wodon',name:'Cortil-Wodon',zip:'5380'},{label:'5380 Bierwart',name:'Bierwart',zip:'5380'},{label:'5377 Waillet',name:'Waillet',zip:'5377'},{label:'5377 Somme-Leuze',name:'Somme-Leuze',zip:'5377'},{label:'5377 Sinsin',name:'Sinsin',zip:'5377'},{label:'5377 Noiseux',name:'Noiseux',zip:'5377'},{label:'5377 Nettinne',name:'Nettinne',zip:'5377'},{label:'5377 Hogne',name:'Hogne',zip:'5377'},{label:'5377 Heure Namur',name:'Heure Namur',zip:'5377'},{label:'5377 Bonsin',name:'Bonsin',zip:'5377'},{label:'5377 Baillonville',name:'Baillonville',zip:'5377'},{label:'5376 Miécret',name:'Miécret',zip:'5376'},{label:'5374 Maffe',name:'Maffe',zip:'5374'},{label:'5372 Méan',name:'Méan',zip:'5372'},{label:'5370 Verlée',name:'Verlée',zip:'5370'},{label:'5370 Porcheresse Namur',name:'Porcheresse Namur',zip:'5370'},{label:'5370 Jeneffe Namur',name:'Jeneffe Namur',zip:'5370'},{label:'5370 Havelange',name:'Havelange',zip:'5370'},{label:'5370 Flostoy',name:'Flostoy',zip:'5370'},{label:'5370 Barvaux-Condroz',name:'Barvaux-Condroz',zip:'5370'},{label:'5364 Schaltin',name:'Schaltin',zip:'5364'},{label:'5363 Emptinne',name:'Emptinne',zip:'5363'},{label:'5362 Achet',name:'Achet',zip:'5362'},{label:'5361 Scy',name:'Scy',zip:'5361'},{label:'5361 Mohiville',name:'Mohiville',zip:'5361'},{label:'5360 Natoye',name:'Natoye',zip:'5360'},{label:'5360 Hamois',name:'Hamois',zip:'5360'},{label:'5354 Jallet',name:'Jallet',zip:'5354'},{label:'5353 Goesnes',name:'Goesnes',zip:'5353'},{label:'5352 Perwez-Haillot',name:'Perwez-Haillot',zip:'5352'},{label:'5351 Haillot',name:'Haillot',zip:'5351'},{label:'5350 Ohey',name:'Ohey',zip:'5350'},{label:'5350 Evelette',name:'Evelette',zip:'5350'},{label:'5340 Sorée',name:'Sorée',zip:'5340'},{label:'5340 Mozet',name:'Mozet',zip:'5340'},{label:'5340 Haltinne',name:'Haltinne',zip:'5340'},{label:'5340 Gesves',name:'Gesves',zip:'5340'},{label:'5340 Faulx-les-Tombes',name:'Faulx-les-Tombes',zip:'5340'},{label:'5336 Courrière',name:'Courrière',zip:'5336'},{label:'5334 Florée',name:'Florée',zip:'5334'},{label:'5333 Sorinne-la-Longue',name:'Sorinne-la-Longue',zip:'5333'},{label:'5332 Crupet',name:'Crupet',zip:'5332'},{label:'5330 Sart-Bernard',name:'Sart-Bernard',zip:'5330'},{label:'5330 Maillen',name:'Maillen',zip:'5330'},{label:'5330 Assesse',name:'Assesse',zip:'5330'},{label:'5310 Waret-la-Chaussée',name:'Waret-la-Chaussée',zip:'5310'},{label:'5310 Upigny',name:'Upigny',zip:'5310'},{label:'5310 Taviers Namur',name:'Taviers Namur',zip:'5310'},{label:'5310 Saint-Germain',name:'Saint-Germain',zip:'5310'},{label:'5310 Noville-sur-Méhaigne',name:'Noville-sur-Méhaigne',zip:'5310'},{label:'5310 Mehaigne',name:'Mehaigne',zip:'5310'},{label:'5310 Longchamps',name:'Longchamps',zip:'5310'},{label:'5310 Liernu',name:'Liernu',zip:'5310'},{label:'5310 Leuze Namur',name:'Leuze Namur',zip:'5310'},{label:'5310 Hanret',name:'Hanret',zip:'5310'},{label:'5310 Eghezée',name:'Eghezée',zip:'5310'},{label:'5310 Dhuy',name:'Dhuy',zip:'5310'},{label:'5310 Branchon',name:'Branchon',zip:'5310'},{label:'5310 Boneffe',name:'Boneffe',zip:'5310'},{label:'5310 Bolinne',name:'Bolinne',zip:'5310'},{label:'5310 Aische-en-Refail',name:'Aische-en-Refail',zip:'5310'},{label:'5300 Vezin',name:'Vezin',zip:'5300'},{label:'5300 Thon',name:'Thon',zip:'5300'},{label:'5300 Seilles',name:'Seilles',zip:'5300'},{label:'5300 Sclayn',name:'Sclayn',zip:'5300'},{label:'5300 Namêche',name:'Namêche',zip:'5300'},{label:'5300 Maizeret',name:'Maizeret',zip:'5300'},{label:'5300 Landenne',name:'Landenne',zip:'5300'},{label:'5300 Coutisse',name:'Coutisse',zip:'5300'},{label:'5300 Bonneville',name:'Bonneville',zip:'5300'},{label:'5300 Andenne',name:'Andenne',zip:'5300'},{label:'5190 Spy',name:'Spy',zip:'5190'},{label:'5190 Saint-Martin',name:'Saint-Martin',zip:'5190'},{label:'5190 Onoz',name:'Onoz',zip:'5190'},{label:'5190 Moustier-sur-Sambre',name:'Moustier-sur-Sambre',zip:'5190'},{label:'5190 Mornimont',name:'Mornimont',zip:'5190'},{label:'5190 Jemeppe-sur-Sambre',name:'Jemeppe-sur-Sambre',zip:'5190'},{label:'5190 Ham-sur-Sambre',name:'Ham-sur-Sambre',zip:'5190'},{label:'5190 Balâtre',name:'Balâtre',zip:'5190'},{label:'5170 Rivière',name:'Rivière',zip:'5170'},{label:'5170 Profondeville',name:'Profondeville',zip:'5170'},{label:'5170 Lustin',name:'Lustin',zip:'5170'},{label:'5170 Lesve',name:'Lesve',zip:'5170'},{label:'5170 Bois-de-Villers',name:'Bois-de-Villers',zip:'5170'},{label:'5170 Arbre Namur',name:'Arbre Namur',zip:'5170'},{label:'5150 Soye Namur',name:'Soye Namur',zip:'5150'},{label:'5150 Franière',name:'Franière',zip:'5150'},{label:'5150 Floriffoux',name:'Floriffoux',zip:'5150'},{label:'5150 Floreffe',name:'Floreffe',zip:'5150'},{label:'5140 Tongrinne',name:'Tongrinne',zip:'5140'},{label:'5140 Sombreffe',name:'Sombreffe',zip:'5140'},{label:'5140 Ligny',name:'Ligny',zip:'5140'},{label:'5140 Boignée',name:'Boignée',zip:'5140'},{label:'5081 Saint-Denis-Bovesse',name:'Saint-Denis-Bovesse',zip:'5081'},{label:'5081 Meux',name:'Meux',zip:'5081'},{label:'5081 Bovesse',name:'Bovesse',zip:'5081'},{label:'5080 Warisoulx',name:'Warisoulx',zip:'5080'},{label:'5080 Villers-lez-Heest',name:'Villers-lez-Heest',zip:'5080'},{label:'5080 Rhisnes',name:'Rhisnes',zip:'5080'},{label:'5080 La Bruyère',name:'La Bruyère',zip:'5080'},{label:'5080 Emines',name:'Emines',zip:'5080'},{label:'5070 Vitrival',name:'Vitrival',zip:'5070'},{label:'5070 Sart-Saint-Laurent',name:'Sart-Saint-Laurent',zip:'5070'},{label:'5070 Sart-Eustache',name:'Sart-Eustache',zip:'5070'},{label:'5070 Le Roux',name:'Le Roux',zip:'5070'},{label:'5070 Fosses-la-Ville',name:'Fosses-la-Ville',zip:'5070'},{label:'5070 Aisemont',name:'Aisemont',zip:'5070'},{label:'5060 Velaine-sur-Sambre',name:'Velaine-sur-Sambre',zip:'5060'},{label:'5060 Tamines',name:'Tamines',zip:'5060'},{label:'5060 Sambreville',name:'Sambreville',zip:'5060'},{label:'5060 Moignelée',name:'Moignelée',zip:'5060'},{label:'5060 Keumiée',name:'Keumiée',zip:'5060'},{label:'5060 Falisolle',name:'Falisolle',zip:'5060'},{label:'5060 Auvelais',name:'Auvelais',zip:'5060'},{label:'5060 Arsimont',name:'Arsimont',zip:'5060'},{label:'5032 Mazy',name:'Mazy',zip:'5032'},{label:'5032 Isnes',name:'Isnes',zip:'5032'},{label:'5032 Corroy-le-Château',name:'Corroy-le-Château',zip:'5032'},{label:'5032 Bothey',name:'Bothey',zip:'5032'},{label:'5032 Bossière',name:'Bossière',zip:'5032'},{label:'5031 Grand-Leez',name:'Grand-Leez',zip:'5031'},{label:'5030 Sauvenière',name:'Sauvenière',zip:'5030'},{label:'5030 Lonzée',name:'Lonzée',zip:'5030'},{label:'5030 Grand-Manil',name:'Grand-Manil',zip:'5030'},{label:'5030 Gembloux',name:'Gembloux',zip:'5030'},{label:'5030 Ernage',name:'Ernage',zip:'5030'},{label:'5030 Beuzet',name:'Beuzet',zip:'5030'},{label:'5101 Loyers',name:'Loyers',zip:'5101'},{label:'5101 Lives-sur-Meuse',name:'Lives-sur-Meuse',zip:'5101'},{label:'5101 Erpent',name:'Erpent',zip:'5101'},{label:'5100 Wierde',name:'Wierde',zip:'5100'},{label:'5100 Wépion',name:'Wépion',zip:'5100'},{label:'5100 Naninne',name:'Naninne',zip:'5100'},{label:'5100 Jambes',name:'Jambes',zip:'5100'},{label:'5100 Dave',name:'Dave',zip:'5100'},{label:'5024 Marche-les-Dames',name:'Marche-les-Dames',zip:'5024'},{label:'5024 Gelbressée',name:'Gelbressée',zip:'5024'},{label:'5022 Cognelée',name:'Cognelée',zip:'5022'},{label:'5021 Boninne',name:'Boninne',zip:'5021'},{label:'5020 Vedrin',name:'Vedrin',zip:'5020'},{label:'5020 Temploux',name:'Temploux',zip:'5020'},{label:'5020 Suarlée',name:'Suarlée',zip:'5020'},{label:'5020 Malonne',name:'Malonne',zip:'5020'},{label:'5020 Flawinne',name:'Flawinne',zip:'5020'},{label:'5020 Daussoulx',name:'Daussoulx',zip:'5020'},{label:'5020 Champion',name:'Champion',zip:'5020'},{label:'5004 Bouge',name:'Bouge',zip:'5004'},{label:'5003 Saint-Marc',name:'Saint-Marc',zip:'5003'},{label:'5002 Saint-Servais',name:'Saint-Servais',zip:'5002'},{label:'5001 Belgrade',name:'Belgrade',zip:'5001'},{label:'5000 Namur',name:'Namur',zip:'5000'},{label:'5000 Beez',name:'Beez',zip:'5000'},{label:'6997 Soy',name:'Soy',zip:'6997'},{label:'6997 Mormont',name:'Mormont',zip:'6997'},{label:'6997 Erezée',name:'Erezée',zip:'6997'},{label:'6997 Amonines',name:'Amonines',zip:'6997'},{label:'6990 Marenne',name:'Marenne',zip:'6990'},{label:'6990 Hotton',name:'Hotton',zip:'6990'},{label:'6990 Hampteau',name:'Hampteau',zip:'6990'},{label:'6990 Fronville',name:'Fronville',zip:'6990'},{label:'6987 Rendeux',name:'Rendeux',zip:'6987'},{label:'6987 Marcourt',name:'Marcourt',zip:'6987'},{label:'6987 Hodister',name:'Hodister',zip:'6987'},{label:'6987 Beffe',name:'Beffe',zip:'6987'},{label:'6986 Halleux',name:'Halleux',zip:'6986'},{label:'6984 Hives',name:'Hives',zip:'6984'},{label:'6983 Ortho',name:'Ortho',zip:'6983'},{label:'6982 Samrée',name:'Samrée',zip:'6982'},{label:'6980 La-Roche-en-Ardenne',name:'La-Roche-en-Ardenne',zip:'6980'},{label:'6980 Beausaint',name:'Beausaint',zip:'6980'},{label:'6972 Erneuville',name:'Erneuville',zip:'6972'},{label:'6971 Champlon',name:'Champlon',zip:'6971'},{label:'6970 Tenneville',name:'Tenneville',zip:'6970'},{label:'6960 Vaux-Chavanne',name:'Vaux-Chavanne',zip:'6960'},{label:'6960 Odeigne',name:'Odeigne',zip:'6960'},{label:'6960 Manhay',name:'Manhay',zip:'6960'},{label:'6960 Malempré',name:'Malempré',zip:'6960'},{label:'6960 Harre',name:'Harre',zip:'6960'},{label:'6960 Grandmenil',name:'Grandmenil',zip:'6960'},{label:'6960 Dochamps',name:'Dochamps',zip:'6960'},{label:'6953 Masbourg',name:'Masbourg',zip:'6953'},{label:'6953 Lesterny',name:'Lesterny',zip:'6953'},{label:'6953 Forrières',name:'Forrières',zip:'6953'},{label:'6953 Ambly',name:'Ambly',zip:'6953'},{label:'6952 Grune',name:'Grune',zip:'6952'},{label:'6951 Bande',name:'Bande',zip:'6951'},{label:'6950 Nassogne',name:'Nassogne',zip:'6950'},{label:'6950 Harsin',name:'Harsin',zip:'6950'},{label:'6941 Villers-Sainte-Gertrude',name:'Villers-Sainte-Gertrude',zip:'6941'},{label:'6941 Tohogne',name:'Tohogne',zip:'6941'},{label:'6941 Izier',name:'Izier',zip:'6941'},{label:'6941 Heyd',name:'Heyd',zip:'6941'},{label:'6941 Borlon',name:'Borlon',zip:'6941'},{label:'6941 Bomal-sur-Ourthe',name:'Bomal-sur-Ourthe',zip:'6941'},{label:'6941 Bende',name:'Bende',zip:'6941'},{label:'6940 Wéris',name:'Wéris',zip:'6940'},{label:'6940 Septon',name:'Septon',zip:'6940'},{label:'6940 Grandhan',name:'Grandhan',zip:'6940'},{label:'6940 Durbuy',name:'Durbuy',zip:'6940'},{label:'6940 Barvaux-sur-Ourthe',name:'Barvaux-sur-Ourthe',zip:'6940'},{label:'6929 Porcheresse Luxembourg',name:'Porcheresse Luxembourg',zip:'6929'},{label:'6929 Haut-Fays',name:'Haut-Fays',zip:'6929'},{label:'6929 Gembes',name:'Gembes',zip:'6929'},{label:'6929 Daverdisse',name:'Daverdisse',zip:'6929'},{label:'6927 Tellin',name:'Tellin',zip:'6927'},{label:'6927 Resteigne',name:'Resteigne',zip:'6927'},{label:'6927 Grupont',name:'Grupont',zip:'6927'},{label:'6927 Bure',name:'Bure',zip:'6927'},{label:'6924 Lomprez',name:'Lomprez',zip:'6924'},{label:'6922 Halma',name:'Halma',zip:'6922'},{label:'6921 Chanly',name:'Chanly',zip:'6921'},{label:'6920 Wellin',name:'Wellin',zip:'6920'},{label:'6920 Sohier',name:'Sohier',zip:'6920'},{label:'6900 Waha',name:'Waha',zip:'6900'},{label:'6900 Roy',name:'Roy',zip:'6900'},{label:'6900 On',name:'On',zip:'6900'},{label:'6900 Marche-en-Famenne',name:'Marche-en-Famenne',zip:'6900'},{label:'6900 Humain',name:'Humain',zip:'6900'},{label:'6900 Hargimont',name:'Hargimont',zip:'6900'},{label:'6900 Aye',name:'Aye',zip:'6900'},{label:'6890 Villance',name:'Villance',zip:'6890'},{label:'6890 Transinne',name:'Transinne',zip:'6890'},{label:'6890 Smuid',name:'Smuid',zip:'6890'},{label:'6890 Redu',name:'Redu',zip:'6890'},{label:'6890 Ochamps',name:'Ochamps',zip:'6890'},{label:'6890 Libin',name:'Libin',zip:'6890'},{label:'6890 Anloy',name:'Anloy',zip:'6890'},{label:'6887 Straimont',name:'Straimont',zip:'6887'},{label:'6887 Saint-Médard',name:'Saint-Médard',zip:'6887'},{label:'6887 Herbeumont',name:'Herbeumont',zip:'6887'},{label:'6880 Orgeo',name:'Orgeo',zip:'6880'},{label:'6880 Jehonville',name:'Jehonville',zip:'6880'},{label:'6880 Cugnon',name:'Cugnon',zip:'6880'},{label:'6880 Bertrix',name:'Bertrix',zip:'6880'},{label:'6880 Auby-sur-Semois',name:'Auby-sur-Semois',zip:'6880'},{label:'6870 Vesqueville',name:'Vesqueville',zip:'6870'},{label:'6870 Saint-Hubert',name:'Saint-Hubert',zip:'6870'},{label:'6870 Mirwart',name:'Mirwart',zip:'6870'},{label:'6870 Hatrival',name:'Hatrival',zip:'6870'},{label:'6870 Awenne',name:'Awenne',zip:'6870'},{label:'6870 Arville',name:'Arville',zip:'6870'},{label:'6860 Witry',name:'Witry',zip:'6860'},{label:'6860 Mellier',name:'Mellier',zip:'6860'},{label:'6860 Léglise',name:'Léglise',zip:'6860'},{label:'6860 Ebly',name:'Ebly',zip:'6860'},{label:'6860 Assenois',name:'Assenois',zip:'6860'},{label:'6856 Fays-les-Veneurs',name:'Fays-les-Veneurs',zip:'6856'},{label:'6853 Framont',name:'Framont',zip:'6853'},{label:'6852 Opont',name:'Opont',zip:'6852'},{label:'6852 Maissin',name:'Maissin',zip:'6852'},{label:'6851 Nollevaux',name:'Nollevaux',zip:'6851'},{label:'6850 Paliseul',name:'Paliseul',zip:'6850'},{label:'6850 Offagne',name:'Offagne',zip:'6850'},{label:'6850 Carlsbourg',name:'Carlsbourg',zip:'6850'},{label:'6840 Tournay',name:'Tournay',zip:'6840'},{label:'6840 Neufchâteau',name:'Neufchâteau',zip:'6840'},{label:'6840 Longlier',name:'Longlier',zip:'6840'},{label:'6840 Hamipré',name:'Hamipré',zip:'6840'},{label:'6840 Grapfontaine',name:'Grapfontaine',zip:'6840'},{label:'6840 Grandvoir',name:'Grandvoir',zip:'6840'},{label:'6838 Corbion',name:'Corbion',zip:'6838'},{label:'6836 Dohan',name:'Dohan',zip:'6836'},{label:'6834 Bellevaux',name:'Bellevaux',zip:'6834'},{label:'6833 Vivy',name:'Vivy',zip:'6833'},{label:'6833 Ucimont',name:'Ucimont',zip:'6833'},{label:'6832 Sensenruth',name:'Sensenruth',zip:'6832'},{label:'6831 Noirefontaine',name:'Noirefontaine',zip:'6831'},{label:'6830 Rochehaut',name:'Rochehaut',zip:'6830'},{label:'6830 Poupehan',name:'Poupehan',zip:'6830'},{label:'6830 Les Hayons',name:'Les Hayons',zip:'6830'},{label:'6830 Bouillon',name:'Bouillon',zip:'6830'},{label:'6824 Chassepierre',name:'Chassepierre',zip:'6824'},{label:'6823 Villers-devant-Orval',name:'Villers-devant-Orval',zip:'6823'},{label:'6821 Lacuisine',name:'Lacuisine',zip:'6821'},{label:'6820 Sainte-Cécile',name:'Sainte-Cécile',zip:'6820'},{label:'6820 Muno',name:'Muno',zip:'6820'},{label:'6820 Fontenoille',name:'Fontenoille',zip:'6820'},{label:'6820 Florenville',name:'Florenville',zip:'6820'},{label:'6813 Termes',name:'Termes',zip:'6813'},{label:'6812 Suxy',name:'Suxy',zip:'6812'},{label:'6811 Les Bulles',name:'Les Bulles',zip:'6811'},{label:'6810 Jamoigne',name:'Jamoigne',zip:'6810'},{label:'6810 Izel',name:'Izel',zip:'6810'},{label:'6810 Chiny',name:'Chiny',zip:'6810'},{label:'6800 Saint-Pierre',name:'Saint-Pierre',zip:'6800'},{label:'6800 Sainte-Marie-Chevigny',name:'Sainte-Marie-Chevigny',zip:'6800'},{label:'6800 Remagne',name:'Remagne',zip:'6800'},{label:'6800 Recogne',name:'Recogne',zip:'6800'},{label:'6800 Moircy',name:'Moircy',zip:'6800'},{label:'6800 Libramont-Chevigny',name:'Libramont-Chevigny',zip:'6800'},{label:'6800 Libramont',name:'Libramont',zip:'6800'},{label:'6800 Freux',name:'Freux',zip:'6800'},{label:'6800 Bras',name:'Bras',zip:'6800'},{label:'6792 Rachecourt',name:'Rachecourt',zip:'6792'},{label:'6792 Halanzy',name:'Halanzy',zip:'6792'},{label:'6791 Athus',name:'Athus',zip:'6791'},{label:'6790 Aubange',name:'Aubange',zip:'6790'},{label:'6782 Habergy',name:'Habergy',zip:'6782'},{label:'6781 Sélange',name:'Sélange',zip:'6781'},{label:'6780 Wolkrange',name:'Wolkrange',zip:'6780'},{label:'6780 Messancy',name:'Messancy',zip:'6780'},{label:'6780 Hondelange',name:'Hondelange',zip:'6780'},{label:'6769 Villers-la-Loue',name:'Villers-la-Loue',zip:'6769'},{label:'6769 Sommethonne',name:'Sommethonne',zip:'6769'},{label:'6769 Robelmont',name:'Robelmont',zip:'6769'},{label:'6769 Meix-devant-Virton',name:'Meix-devant-Virton',zip:'6769'},{label:'6769 Gérouville',name:'Gérouville',zip:'6769'},{label:'6767 Torgny',name:'Torgny',zip:'6767'},{label:'6767 Rouvroy',name:'Rouvroy',zip:'6767'},{label:'6767 Lamorteau',name:'Lamorteau',zip:'6767'},{label:'6767 Harnoncourt',name:'Harnoncourt',zip:'6767'},{label:'6767 Dampicourt',name:'Dampicourt',zip:'6767'},{label:'6762 Saint-Mard',name:'Saint-Mard',zip:'6762'},{label:'6761 Latour',name:'Latour',zip:'6761'},{label:'6760 Virton',name:'Virton',zip:'6760'},{label:'6760 Ruette',name:'Ruette',zip:'6760'},{label:'6760 Ethe',name:'Ethe',zip:'6760'},{label:'6760 Bleid',name:'Bleid',zip:'6760'},{label:'6750 Signeulx',name:'Signeulx',zip:'6750'},{label:'6750 Mussy-la-Ville',name:'Mussy-la-Ville',zip:'6750'},{label:'6750 Musson',name:'Musson',zip:'6750'},{label:'6747 Saint-Léger Luxembourg',name:'Saint-Léger Luxembourg',zip:'6747'},{label:'6747 Meix-le-Tige',name:'Meix-le-Tige',zip:'6747'},{label:'6747 Châtillon',name:'Châtillon',zip:'6747'},{label:'6743 Buzenol',name:'Buzenol',zip:'6743'},{label:'6742 Chantemelle',name:'Chantemelle',zip:'6742'},{label:'6741 Vance',name:'Vance',zip:'6741'},{label:'6740 Villers-sur-Semois',name:'Villers-sur-Semois',zip:'6740'},{label:'6740 Sainte-Marie-sur-Semois',name:'Sainte-Marie-sur-Semois',zip:'6740'},{label:'6740 Etalle',name:'Etalle',zip:'6740'},{label:'6730 Tintigny',name:'Tintigny',zip:'6730'},{label:'6730 Saint-Vincent',name:'Saint-Vincent',zip:'6730'},{label:'6730 Rossignol',name:'Rossignol',zip:'6730'},{label:'6730 Bellefontaine Luxembourg',name:'Bellefontaine Luxembourg',zip:'6730'},{label:'6724 Rulles',name:'Rulles',zip:'6724'},{label:'6724 Marbehan Luxembourg',name:'Marbehan Luxembourg',zip:'6724'},{label:'6724 Houdemont',name:'Houdemont',zip:'6724'},{label:'6723 Habay-la-Vieille',name:'Habay-la-Vieille',zip:'6723'},{label:'6721 Anlier',name:'Anlier',zip:'6721'},{label:'6720 Hachy',name:'Hachy',zip:'6720'},{label:'6720 Habay-la-Neuve',name:'Habay-la-Neuve',zip:'6720'},{label:'6720 Habay',name:'Habay',zip:'6720'},{label:'6717 Tontelange',name:'Tontelange',zip:'6717'},{label:'6717 Thiaumont',name:'Thiaumont',zip:'6717'},{label:'6717 Nothomb',name:'Nothomb',zip:'6717'},{label:'6717 Nobressart',name:'Nobressart',zip:'6717'},{label:'6717 Attert',name:'Attert',zip:'6717'},{label:'6706 Autelbas',name:'Autelbas',zip:'6706'},{label:'6704 Guirsch',name:'Guirsch',zip:'6704'},{label:'6700 Toernich',name:'Toernich',zip:'6700'},{label:'6700 Heinsch',name:'Heinsch',zip:'6700'},{label:'6700 Bonnert',name:'Bonnert',zip:'6700'},{label:'6700 Arlon',name:'Arlon',zip:'6700'},{label:'6698 Grand-Halleux',name:'Grand-Halleux',zip:'6698'},{label:'6692 Petit-Thier',name:'Petit-Thier',zip:'6692'},{label:'6690 Vielsalm',name:'Vielsalm',zip:'6690'},{label:'6690 Bihain',name:'Bihain',zip:'6690'},{label:'6688 Longchamps Luxembourg',name:'Longchamps Luxembourg',zip:'6688'},{label:'6687 Bertogne',name:'Bertogne',zip:'6687'},{label:'6686 Flamierge',name:'Flamierge',zip:'6686'},{label:'6681 Lavacherie',name:'Lavacherie',zip:'6681'},{label:'6680 Tillet',name:'Tillet',zip:'6680'},{label:'6680 Sainte-Ode',name:'Sainte-Ode',zip:'6680'},{label:'6680 Amberloup',name:'Amberloup',zip:'6680'},{label:'6674 Montleban',name:'Montleban',zip:'6674'},{label:'6673 Cherain',name:'Cherain',zip:'6673'},{label:'6672 Beho',name:'Beho',zip:'6672'},{label:'6671 Bovigny',name:'Bovigny',zip:'6671'},{label:'6670 Limerlé',name:'Limerlé',zip:'6670'},{label:'6670 Gouvy',name:'Gouvy',zip:'6670'},{label:'6666 Wibrin',name:'Wibrin',zip:'6666'},{label:'6663 Mabompré',name:'Mabompré',zip:'6663'},{label:'6662 Tavigny',name:'Tavigny',zip:'6662'},{label:'6661 Tailles',name:'Tailles',zip:'6661'},{label:'6661 Mont Luxembourg',name:'Mont Luxembourg',zip:'6661'},{label:'6660 Nadrin',name:'Nadrin',zip:'6660'},{label:'6660 Houffalize',name:'Houffalize',zip:'6660'},{label:'6642 Juseret',name:'Juseret',zip:'6642'},{label:'6640 Vaux-sur-Sûre',name:'Vaux-sur-Sûre',zip:'6640'},{label:'6640 Vaux-lez-Rosières',name:'Vaux-lez-Rosières',zip:'6640'},{label:'6640 Sibret',name:'Sibret',zip:'6640'},{label:'6640 Nives',name:'Nives',zip:'6640'},{label:'6640 Morhet',name:'Morhet',zip:'6640'},{label:'6640 Hompré',name:'Hompré',zip:'6640'},{label:'6637 Tintange',name:'Tintange',zip:'6637'},{label:'6637 Hollange',name:'Hollange',zip:'6637'},{label:'6637 Fauvillers',name:'Fauvillers',zip:'6637'},{label:'6630 Martelange',name:'Martelange',zip:'6630'},{label:'6600 Wardin',name:'Wardin',zip:'6600'},{label:'6600 Villers-la-Bonne-Eau',name:'Villers-la-Bonne-Eau',zip:'6600'},{label:'6600 Noville Luxembourg',name:'Noville Luxembourg',zip:'6600'},{label:'6600 Longvilly',name:'Longvilly',zip:'6600'},{label:'6600 Bastogne',name:'Bastogne',zip:'6600'},{label:'1495 Villers-la-Ville',name:'Villers-la-Ville',zip:'1495'},{label:'1495 Tilly',name:'Tilly',zip:'1495'},{label:'1495 Sart-Dames-Avelines',name:'Sart-Dames-Avelines',zip:'1495'},{label:'1495 Mellery',name:'Mellery',zip:'1495'},{label:'1495 Marbais Br.W.',name:'Marbais Br.W.',zip:'1495'},{label:'1490 Court-Saint-Etienne',name:'Court-Saint-Etienne',zip:'1490'},{label:'1480 Tubize',name:'Tubize',zip:'1480'},{label:'1480 Saintes',name:'Saintes',zip:'1480'},{label:'1480 Oisquercq',name:'Oisquercq',zip:'1480'},{label:'1480 Clabecq',name:'Clabecq',zip:'1480'},{label:'1476 Houtain-le-Val',name:'Houtain-le-Val',zip:'1476'},{label:'1474 Ways',name:'Ways',zip:'1474'},{label:'1473 Glabais',name:'Glabais',zip:'1473'},{label:'1472 Vieux-Genappe',name:'Vieux-Genappe',zip:'1472'},{label:'1471 Loupoigne',name:'Loupoigne',zip:'1471'},{label:'1470 Genappe',name:'Genappe',zip:'1470'},{label:'1470 Bousval',name:'Bousval',zip:'1470'},{label:'1470 Baisy-Thy',name:'Baisy-Thy',zip:'1470'},{label:'1461 Haut-Ittre',name:'Haut-Ittre',zip:'1461'},{label:'1460 Virginal-Samme',name:'Virginal-Samme',zip:'1460'},{label:'1460 Ittre',name:'Ittre',zip:'1460'},{label:'1457 Walhain-Saint-Paul',name:'Walhain-Saint-Paul',zip:'1457'},{label:'1457 Walhain',name:'Walhain',zip:'1457'},{label:'1457 Tourinnes-Saint-Lambert',name:'Tourinnes-Saint-Lambert',zip:'1457'},{label:'1457 Nil-Saint-Vincent-Saint-Martin',name:'Nil-Saint-Vincent-Saint-Martin',zip:'1457'},{label:'1450 Saint-Géry',name:'Saint-Géry',zip:'1450'},{label:'1450 Gentinnes',name:'Gentinnes',zip:'1450'},{label:'1450 Cortil-Noirmont',name:'Cortil-Noirmont',zip:'1450'},{label:'1450 Chastre-Villeroux-Blanmont',name:'Chastre-Villeroux-Blanmont',zip:'1450'},{label:'1450 Chastre',name:'Chastre',zip:'1450'},{label:'1440 Wauthier-Braine',name:'Wauthier-Braine',zip:'1440'},{label:'1440 Braine-le-Château',name:'Braine-le-Château',zip:'1440'},{label:'1435 Mont-Saint-Guibert',name:'Mont-Saint-Guibert',zip:'1435'},{label:'1435 Hévillers',name:'Hévillers',zip:'1435'},{label:'1435 Corbais',name:'Corbais',zip:'1435'},{label:'1430 Rebecq-Rognon',name:'Rebecq-Rognon',zip:'1430'},{label:'1430 Rebecq',name:'Rebecq',zip:'1430'},{label:'1430 Quenast',name:'Quenast',zip:'1430'},{label:'1430 Bierghes',name:'Bierghes',zip:'1430'},{label:'1428 Lillois-Witterzée',name:'Lillois-Witterzée',zip:'1428'},{label:'1421 Ophain-Bois-Seigneur-Isaac',name:'Ophain-Bois-Seigneur-Isaac',zip:'1421'},{label:'1410 Waterloo',name:'Waterloo',zip:'1410'},{label:'1404 Bornival',name:'Bornival',zip:'1404'},{label:'1402 Thines',name:'Thines',zip:'1402'},{label:'1401 Baulers',name:'Baulers',zip:'1401'},{label:'1400 Nivelles',name:'Nivelles',zip:'1400'},{label:'1400 Monstreux',name:'Monstreux',zip:'1400'},{label:'1390 Nethen',name:'Nethen',zip:'1390'},{label:'1390 Grez-Doiceau',name:'Grez-Doiceau',zip:'1390'},{label:'1390 Bossut-Gottechain',name:'Bossut-Gottechain',zip:'1390'},{label:'1390 Biez',name:'Biez',zip:'1390'},{label:'1390 Archennes',name:'Archennes',zip:'1390'},{label:'1380 Plancenoit',name:'Plancenoit',zip:'1380'},{label:'1380 Ohain',name:'Ohain',zip:'1380'},{label:'1380 Maransart',name:'Maransart',zip:'1380'},{label:'1380 Lasne-Chapelle-Saint-Lambert',name:'Lasne-Chapelle-Saint-Lambert',zip:'1380'},{label:'1380 Lasne',name:'Lasne',zip:'1380'},{label:'1380 Couture-Saint-Germain',name:'Couture-Saint-Germain',zip:'1380'},{label:'1370 Zétrud-Lumay',name:'Zétrud-Lumay',zip:'1370'},{label:'1370 Saint-Remy-Geest',name:'Saint-Remy-Geest',zip:'1370'},{label:'1370 Saint-Jean-Geest',name:'Saint-Jean-Geest',zip:'1370'},{label:'1370 Piétrain',name:'Piétrain',zip:'1370'},{label:'1370 Mélin',name:'Mélin',zip:'1370'},{label:'1370 Lathuy',name:'Lathuy',zip:'1370'},{label:'1370 Jodoigne-Souveraine',name:'Jodoigne-Souveraine',zip:'1370'},{label:'1370 Jodoigne',name:'Jodoigne',zip:'1370'},{label:'1370 Jauchelette',name:'Jauchelette',zip:'1370'},{label:'1370 Dongelberg',name:'Dongelberg',zip:'1370'},{label:'1367 Ramillies-Offus',name:'Ramillies-Offus',zip:'1367'},{label:'1367 Mont-Saint-André',name:'Mont-Saint-André',zip:'1367'},{label:'1367 Huppaye',name:'Huppaye',zip:'1367'},{label:'1367 Grand-Rosière-Hottomont',name:'Grand-Rosière-Hottomont',zip:'1367'},{label:'1367 Gérompont',name:'Gérompont',zip:'1367'},{label:'1367 Geest-Gérompont-Petit-Rosière',name:'Geest-Gérompont-Petit-Rosière',zip:'1367'},{label:'1367 Bomal Br.W.',name:'Bomal Br.W.',zip:'1367'},{label:'1367 Autre-Eglise',name:'Autre-Eglise',zip:'1367'},{label:'1360 Thorembais-Saint-Trond',name:'Thorembais-Saint-Trond',zip:'1360'},{label:'1360 Thorembais-les-Béguines',name:'Thorembais-les-Béguines',zip:'1360'},{label:'1360 Perwez',name:'Perwez',zip:'1360'},{label:'1360 Orbais',name:'Orbais',zip:'1360'},{label:'1360 Malèves-Sainte-Marie-Wastines',name:'Malèves-Sainte-Marie-Wastines',zip:'1360'},{label:'1357 Opheylissem',name:'Opheylissem',zip:'1357'},{label:'1357 Neerheylissem',name:'Neerheylissem',zip:'1357'},{label:'1357 Linsmeau',name:'Linsmeau',zip:'1357'},{label:'1357 Hélécine',name:'Hélécine',zip:'1357'},{label:'1350 Orp-le-Grand',name:'Orp-le-Grand',zip:'1350'},{label:'1350 Orp-Jauche',name:'Orp-Jauche',zip:'1350'},{label:'1350 Noduwez',name:'Noduwez',zip:'1350'},{label:'1350 Marilles',name:'Marilles',zip:'1350'},{label:'1350 Jauche',name:'Jauche',zip:'1350'},{label:'1350 Jandrain-Jandrenouille',name:'Jandrain-Jandrenouille',zip:'1350'},{label:'1350 Folx-les-Caves',name:'Folx-les-Caves',zip:'1350'},{label:'1350 Enines',name:'Enines',zip:'1350'},{label:'1348 Louvain-la-Neuve',name:'Louvain-la-Neuve',zip:'1348'},{label:'1342 Limelette',name:'Limelette',zip:'1342'},{label:'1341 Céroux-Mousty',name:'Céroux-Mousty',zip:'1341'},{label:'1340 Ottignies-Louvain-la-Neuve',name:'Ottignies-Louvain-la-Neuve',zip:'1340'},{label:'1340 Ottignies',name:'Ottignies',zip:'1340'},{label:'1332 Genval',name:'Genval',zip:'1332'},{label:'1331 Rosières',name:'Rosières',zip:'1331'},{label:'1330 Rixensart',name:'Rixensart',zip:'1330'},{label:'1325 Longueville',name:'Longueville',zip:'1325'},{label:'1325 Dion-Valmont',name:'Dion-Valmont',zip:'1325'},{label:'1325 Corroy-le-Grand',name:'Corroy-le-Grand',zip:'1325'},{label:'1325 Chaumont-Gistoux',name:'Chaumont-Gistoux',zip:'1325'},{label:'1325 Bonlez',name:'Bonlez',zip:'1325'},{label:'1320 Tourinnes-la-Grosse',name:'Tourinnes-la-Grosse',zip:'1320'},{label:'1320 Nodebais',name:'Nodebais',zip:'1320'},{label:'1320 Hamme-Mille',name:'Hamme-Mille',zip:'1320'},{label:'1320 Beauvechain',name:'Beauvechain',zip:'1320'},{label:'1315 Roux-Miroir',name:'Roux-Miroir',zip:'1315'},{label:'1315 Piétrebais',name:'Piétrebais',zip:'1315'},{label:'1315 Opprebais',name:'Opprebais',zip:'1315'},{label:'1315 Incourt',name:'Incourt',zip:'1315'},{label:'1315 Glimes',name:'Glimes',zip:'1315'},{label:'1310 La Hulpe',name:'La Hulpe',zip:'1310'},{label:'1301 Bierges',name:'Bierges',zip:'1301'},{label:'1300 Wavre',name:'Wavre',zip:'1300'},{label:'1300 Limal',name:'Limal',zip:'1300'},{label:'4990 Lierneux',name:'Lierneux',zip:'4990'},{label:'4990 Bra',name:'Bra',zip:'4990'},{label:'4990 Arbrefontaine',name:'Arbrefontaine',zip:'4990'},{label:'4987 Stoumont',name:'Stoumont',zip:'4987'},{label:'4987 Rahier',name:'Rahier',zip:'4987'},{label:'4987 Lorcé',name:'Lorcé',zip:'4987'},{label:'4987 La Gleize',name:'La Gleize',zip:'4987'},{label:'4987 Chevron',name:'Chevron',zip:'4987'},{label:'4983 Basse-Bodeux',name:'Basse-Bodeux',zip:'4983'},{label:'4980 Wanne',name:'Wanne',zip:'4980'},{label:'4980 Trois-Ponts',name:'Trois-Ponts',zip:'4980'},{label:'4980 Fosse Liège',name:'Fosse Liège',zip:'4980'},{label:'4970 Stavelot',name:'Stavelot',zip:'4970'},{label:'4970 Francorchamps',name:'Francorchamps',zip:'4970'},{label:'4960 Malmedy',name:'Malmedy',zip:'4960'},{label:'4960 Bevercé',name:'Bevercé',zip:'4960'},{label:'4960 Bellevaux-Ligneuville',name:'Bellevaux-Ligneuville',zip:'4960'},{label:'4950 Waimes/Weismes',name:'Waimes/Weismes',zip:'4950'},{label:'4950 Sourbrodt',name:'Sourbrodt',zip:'4950'},{label:'4950 Robertville',name:'Robertville',zip:'4950'},{label:'4950 Faymonville',name:'Faymonville',zip:'4950'},{label:'4920 Sougné-Remouchamps',name:'Sougné-Remouchamps',zip:'4920'},{label:'4920 Harzé',name:'Harzé',zip:'4920'},{label:'4920 Ernonheid',name:'Ernonheid',zip:'4920'},{label:'4920 Aywaille',name:'Aywaille',zip:'4920'},{label:'4910 Theux',name:'Theux',zip:'4910'},{label:'4910 Polleur',name:'Polleur',zip:'4910'},{label:'4910 La Reid',name:'La Reid',zip:'4910'},{label:'4900 Spa',name:'Spa',zip:'4900'},{label:'4890 Thimister-Clermont',name:'Thimister-Clermont',zip:'4890'},{label:'4890 Thimister',name:'Thimister',zip:'4890'},{label:'4890 Clermont Liège',name:'Clermont Liège',zip:'4890'},{label:'4880 Aubel',name:'Aubel',zip:'4880'},{label:'4877 Olne',name:'Olne',zip:'4877'},{label:'4870 Trooz',name:'Trooz',zip:'4870'},{label:'4870 Nessonvaux',name:'Nessonvaux',zip:'4870'},{label:'4870 Fraipont',name:'Fraipont',zip:'4870'},{label:'4870 Forêt',name:'Forêt',zip:'4870'},{label:'4861 Soiron',name:'Soiron',zip:'4861'},{label:'4860 Wegnez',name:'Wegnez',zip:'4860'},{label:'4860 Pepinster',name:'Pepinster',zip:'4860'},{label:'4860 Cornesse',name:'Cornesse',zip:'4860'},{label:'4852 Hombourg',name:'Hombourg',zip:'4852'},{label:'4851 Sippenaeken',name:'Sippenaeken',zip:'4851'},{label:'4851 Gemmenich',name:'Gemmenich',zip:'4851'},{label:'4850 Plombières',name:'Plombières',zip:'4850'},{label:'4850 Moresnet',name:'Moresnet',zip:'4850'},{label:'4850 Montzen',name:'Montzen',zip:'4850'},{label:'4845 Sart-lez-Spa',name:'Sart-lez-Spa',zip:'4845'},{label:'4845 Jalhay',name:'Jalhay',zip:'4845'},{label:'4841 Henri-Chapelle',name:'Henri-Chapelle',zip:'4841'},{label:'4840 Welkenraedt',name:'Welkenraedt',zip:'4840'},{label:'4837 Membach',name:'Membach',zip:'4837'},{label:'4837 Baelen Liège',name:'Baelen Liège',zip:'4837'},{label:'4834 Goé',name:'Goé',zip:'4834'},{label:'4831 Bilstain',name:'Bilstain',zip:'4831'},{label:'4830 Limbourg',name:'Limbourg',zip:'4830'},{label:'4821 Andrimont',name:'Andrimont',zip:'4821'},{label:'4820 Dison',name:'Dison',zip:'4820'},{label:'4802 Heusy',name:'Heusy',zip:'4802'},{label:'4801 Stembert',name:'Stembert',zip:'4801'},{label:'4800 Verviers',name:'Verviers',zip:'4800'},{label:'4800 Petit-Rechain',name:'Petit-Rechain',zip:'4800'},{label:'4800 Lambermont',name:'Lambermont',zip:'4800'},{label:'4800 Ensival',name:'Ensival',zip:'4800'},{label:'4791 Thommen',name:'Thommen',zip:'4791'},{label:'4790 Reuland',name:'Reuland',zip:'4790'},{label:'4790 Burg-Reuland',name:'Burg-Reuland',zip:'4790'},{label:'4784 Crombach',name:'Crombach',zip:'4784'},{label:'4783 Lommersweiler',name:'Lommersweiler',zip:'4783'},{label:'4782 Schönberg/Schoenberg',name:'Schönberg/Schoenberg',zip:'4782'},{label:'4780 Sankt Vith/Saint-Vith',name:'Sankt Vith/Saint-Vith',zip:'4780'},{label:'4780 Recht',name:'Recht',zip:'4780'},{label:'4771 Heppenbach',name:'Heppenbach',zip:'4771'},{label:'4770 Meyerode',name:'Meyerode',zip:'4770'},{label:'4770 Amel/Amblève',name:'Amel/Amblève',zip:'4770'},{label:'4761 Rocherath',name:'Rocherath',zip:'4761'},{label:'4760 Manderfeld',name:'Manderfeld',zip:'4760'},{label:'4760 Büllingen/Bullange',name:'Büllingen/Bullange',zip:'4760'},{label:'4750 Elsenborn',name:'Elsenborn',zip:'4750'},{label:'4750 Bütgenbach/Butgenbach',name:'Bütgenbach/Butgenbach',zip:'4750'},{label:'4731 Eynatten',name:'Eynatten',zip:'4731'},{label:'4730 Raeren',name:'Raeren',zip:'4730'},{label:'4730 Hauset',name:'Hauset',zip:'4730'},{label:'4728 Hergenrath',name:'Hergenrath',zip:'4728'},{label:'4721 Neu-Moresnet',name:'Neu-Moresnet',zip:'4721'},{label:'4720 Kelmis/La Calamine',name:'Kelmis/La Calamine',zip:'4720'},{label:'4711 Walhorn',name:'Walhorn',zip:'4711'},{label:'4710 Lontzen',name:'Lontzen',zip:'4710'},{label:'4701 Kettenis',name:'Kettenis',zip:'4701'},{label:'4700 Eupen',name:'Eupen',zip:'4700'},{label:'4690 Wonck',name:'Wonck',zip:'4690'},{label:'4690 Roclenge-sur-Geer',name:'Roclenge-sur-Geer',zip:'4690'},{label:'4690 Glons',name:'Glons',zip:'4690'},{label:'4690 Eben-Emael',name:'Eben-Emael',zip:'4690'},{label:'4690 Boirs',name:'Boirs',zip:'4690'},{label:'4690 Bassenge',name:'Bassenge',zip:'4690'},{label:'4684 Haccourt',name:'Haccourt',zip:'4684'},{label:'4683 Vivegnis',name:'Vivegnis',zip:'4683'},{label:'4682 Houtain-Saint-Siméon',name:'Houtain-Saint-Siméon',zip:'4682'},{label:'4682 Heure-le-Romain',name:'Heure-le-Romain',zip:'4682'},{label:'4681 Hermalle-sous-Argenteau',name:'Hermalle-sous-Argenteau',zip:'4681'},{label:'4680 Oupeye',name:'Oupeye',zip:'4680'},{label:'4680 Hermée',name:'Hermée',zip:'4680'},{label:'4672 Saint-Remy Liège',name:'Saint-Remy Liège',zip:'4672'},{label:'4671 Saive',name:'Saive',zip:'4671'},{label:'4671 Housse',name:'Housse',zip:'4671'},{label:'4671 Barchon',name:'Barchon',zip:'4671'},{label:'4670 Trembleur',name:'Trembleur',zip:'4670'},{label:'4670 Mortier',name:'Mortier',zip:'4670'},{label:'4670 Blégny',name:'Blégny',zip:'4670'},{label:'4654 Charneux',name:'Charneux',zip:'4654'},{label:'4653 Bolland',name:'Bolland',zip:'4653'},{label:'4652 Xhendelesse',name:'Xhendelesse',zip:'4652'},{label:'4651 Battice',name:'Battice',zip:'4651'},{label:'4650 Julémont',name:'Julémont',zip:'4650'},{label:'4650 Herve',name:'Herve',zip:'4650'},{label:'4650 Grand-Rechain',name:'Grand-Rechain',zip:'4650'},{label:'4650 Chaineux',name:'Chaineux',zip:'4650'},{label:'4633 Melen',name:'Melen',zip:'4633'},{label:'4632 Cérexhe-Heuseux',name:'Cérexhe-Heuseux',zip:'4632'},{label:'4631 Evegnée',name:'Evegnée',zip:'4631'},{label:'4630 Tignée',name:'Tignée',zip:'4630'},{label:'4630 Soumagne',name:'Soumagne',zip:'4630'},{label:'4630 Micheroux',name:'Micheroux',zip:'4630'},{label:'4630 Ayeneux',name:'Ayeneux',zip:'4630'},{label:'4624 Romsée',name:'Romsée',zip:'4624'},{label:'4623 Magnée',name:'Magnée',zip:'4623'},{label:'4621 Retinne',name:'Retinne',zip:'4621'},{label:'4620 Fléron',name:'Fléron',zip:'4620'},{label:'4610 Queue-du-Bois',name:'Queue-du-Bois',zip:'4610'},{label:'4610 Beyne-Heusay',name:'Beyne-Heusay',zip:'4610'},{label:'4610 Bellaire',name:'Bellaire',zip:'4610'},{label:'4608 Warsage',name:'Warsage',zip:'4608'},{label:'4608 Neufchâteau Liège',name:'Neufchâteau Liège',zip:'4608'},{label:'4607 Mortroux',name:'Mortroux',zip:'4607'},{label:'4607 Feneur',name:'Feneur',zip:'4607'},{label:'4607 Dalhem',name:'Dalhem',zip:'4607'},{label:'4607 Bombaye',name:'Bombaye',zip:'4607'},{label:'4607 Berneau',name:'Berneau',zip:'4607'},{label:'4606 Saint-André',name:'Saint-André',zip:'4606'},{label:'4602 Cheratte',name:'Cheratte',zip:'4602'},{label:'4601 Argenteau',name:'Argenteau',zip:'4601'},{label:'4600 Visé',name:'Visé',zip:'4600'},{label:'4600 Richelle',name:'Richelle',zip:'4600'},{label:'4600 Lixhe',name:'Lixhe',zip:'4600'},{label:'4600 Lanaye',name:'Lanaye',zip:'4600'},{label:'4590 Warzée',name:'Warzée',zip:'4590'},{label:'4590 Ouffet',name:'Ouffet',zip:'4590'},{label:'4590 Ellemelle',name:'Ellemelle',zip:'4590'},{label:'4577 Vierset-Barse',name:'Vierset-Barse',zip:'4577'},{label:'4577 Strée-lez-Huy',name:'Strée-lez-Huy',zip:'4577'},{label:'4577 Outrelouxhe',name:'Outrelouxhe',zip:'4577'},{label:'4577 Modave',name:'Modave',zip:'4577'},{label:'4570 Vyle-et-Tharoul',name:'Vyle-et-Tharoul',zip:'4570'},{label:'4570 Marchin',name:'Marchin',zip:'4570'},{label:'4560 Terwagne',name:'Terwagne',zip:'4560'},{label:'4560 Pailhe',name:'Pailhe',zip:'4560'},{label:'4560 Ocquier',name:'Ocquier',zip:'4560'},{label:'4560 Les Avins',name:'Les Avins',zip:'4560'},{label:'4560 Clavier',name:'Clavier',zip:'4560'},{label:'4560 Bois-et-Borsu',name:'Bois-et-Borsu',zip:'4560'},{label:'4557 Tinlot',name:'Tinlot',zip:'4557'},{label:'4557 Soheit-Tinlot',name:'Soheit-Tinlot',zip:'4557'},{label:'4557 Seny',name:'Seny',zip:'4557'},{label:'4557 Ramelot',name:'Ramelot',zip:'4557'},{label:'4557 Fraiture',name:'Fraiture',zip:'4557'},{label:'4557 Abée',name:'Abée',zip:'4557'},{label:'4550 Yernée-Fraineux',name:'Yernée-Fraineux',zip:'4550'},{label:'4550 Villers-le-Temple',name:'Villers-le-Temple',zip:'4550'},{label:'4550 Saint-Séverin',name:'Saint-Séverin',zip:'4550'},{label:'4550 Nandrin',name:'Nandrin',zip:'4550'},{label:'4540 Ombret',name:'Ombret',zip:'4540'},{label:'4540 Jehay',name:'Jehay',zip:'4540'},{label:'4540 Flône',name:'Flône',zip:'4540'},{label:'4540 Ampsin',name:'Ampsin',zip:'4540'},{label:'4540 Amay',name:'Amay',zip:'4540'},{label:'4537 Verlaine',name:'Verlaine',zip:'4537'},{label:'4537 Seraing-le-Château',name:'Seraing-le-Château',zip:'4537'},{label:'4537 Chapon-Seraing',name:'Chapon-Seraing',zip:'4537'},{label:'4530 Warnant-Dreye',name:'Warnant-Dreye',zip:'4530'},{label:'4530 Villers-le-Bouillet',name:'Villers-le-Bouillet',zip:'4530'},{label:'4530 Vieux-Waleffe',name:'Vieux-Waleffe',zip:'4530'},{label:'4530 Vaux-et-Borset',name:'Vaux-et-Borset',zip:'4530'},{label:'4530 Fize-Fontaine',name:'Fize-Fontaine',zip:'4530'},{label:'4520 Wanze',name:'Wanze',zip:'4520'},{label:'4520 Vinalmont',name:'Vinalmont',zip:'4520'},{label:'4520 Moha',name:'Moha',zip:'4520'},{label:'4520 Huccorgne',name:'Huccorgne',zip:'4520'},{label:'4520 Bas-Oha',name:'Bas-Oha',zip:'4520'},{label:'4520 Antheit',name:'Antheit',zip:'4520'},{label:'4500 Tihange',name:'Tihange',zip:'4500'},{label:'4500 Huy',name:'Huy',zip:'4500'},{label:'4500 Ben-Ahin',name:'Ben-Ahin',zip:'4500'},{label:'4480 Hermalle-sous-Huy',name:'Hermalle-sous-Huy',zip:'4480'},{label:'4480 Engis',name:'Engis',zip:'4480'},{label:'4480 Clermont-sous-Huy',name:'Clermont-sous-Huy',zip:'4480'},{label:'4470 Saint-Georges-sur-Meuse',name:'Saint-Georges-sur-Meuse',zip:'4470'},{label:'4460 Velroux',name:'Velroux',zip:'4460'},{label:'4460 Horion-Hozémont',name:'Horion-Hozémont',zip:'4460'},{label:'4460 Hollogne-aux-Pierres',name:'Hollogne-aux-Pierres',zip:'4460'},{label:'4460 Grâce-Hollogne',name:'Grâce-Hollogne',zip:'4460'},{label:'4460 Grâce-Berleur',name:'Grâce-Berleur',zip:'4460'},{label:'4460 Bierset',name:'Bierset',zip:'4460'},{label:'4458 Fexhe-Slins',name:'Fexhe-Slins',zip:'4458'},{label:'4453 Villers-Saint-Siméon',name:'Villers-Saint-Siméon',zip:'4453'},{label:'4452 Wihogne',name:'Wihogne',zip:'4452'},{label:'4452 Paifve',name:'Paifve',zip:'4452'},{label:'4451 Voroux-lez-Liers',name:'Voroux-lez-Liers',zip:'4451'},{label:'4450 Slins',name:'Slins',zip:'4450'},{label:'4450 Lantin',name:'Lantin',zip:'4450'},{label:'4450 Juprelle',name:'Juprelle',zip:'4450'},{label:'4432 Xhendremael',name:'Xhendremael',zip:'4432'},{label:'4432 Alleur',name:'Alleur',zip:'4432'},{label:'4431 Loncin',name:'Loncin',zip:'4431'},{label:'4430 Ans',name:'Ans',zip:'4430'},{label:'4420 Tilleur',name:'Tilleur',zip:'4420'},{label:'4420 Saint-Nicolas Liège',name:'Saint-Nicolas Liège',zip:'4420'},{label:'4420 Montegnée',name:'Montegnée',zip:'4420'},{label:'4400 Mons-lez-Liège',name:'Mons-lez-Liège',zip:'4400'},{label:'4400 Ivoz-Ramet',name:'Ivoz-Ramet',zip:'4400'},{label:'4400 Gleixhe',name:'Gleixhe',zip:'4400'},{label:'4400 Flémalle-Haute',name:'Flémalle-Haute',zip:'4400'},{label:'4400 Flémalle-Grande',name:'Flémalle-Grande',zip:'4400'},{label:'4400 Flémalle',name:'Flémalle',zip:'4400'},{label:'4400 Chokier',name:'Chokier',zip:'4400'},{label:'4400 Awirs',name:'Awirs',zip:'4400'},{label:'4367 Thys',name:'Thys',zip:'4367'},{label:'4367 Odeur',name:'Odeur',zip:'4367'},{label:'4367 Kemexhe',name:'Kemexhe',zip:'4367'},{label:'4367 Fize-le-Marsal',name:'Fize-le-Marsal',zip:'4367'},{label:'4367 Crisnée',name:'Crisnée',zip:'4367'},{label:'4360 Otrange',name:'Otrange',zip:'4360'},{label:'4360 Oreye',name:'Oreye',zip:'4360'},{label:'4360 Lens-sur-Geer',name:'Lens-sur-Geer',zip:'4360'},{label:'4360 Grandville',name:'Grandville',zip:'4360'},{label:'4360 Bergilers',name:'Bergilers',zip:'4360'},{label:'4357 Limont',name:'Limont',zip:'4357'},{label:'4357 Jeneffe Liège',name:'Jeneffe Liège',zip:'4357'},{label:'4357 Haneffe',name:'Haneffe',zip:'4357'},{label:'4357 Donceel',name:'Donceel',zip:'4357'},{label:'4351 Hodeige',name:'Hodeige',zip:'4351'},{label:'4350 Remicourt',name:'Remicourt',zip:'4350'},{label:'4350 Pousset',name:'Pousset',zip:'4350'},{label:'4350 Momalle',name:'Momalle',zip:'4350'},{label:'4350 Lamine',name:'Lamine',zip:'4350'},{label:'4347 Voroux-Goreux',name:'Voroux-Goreux',zip:'4347'},{label:'4347 Roloux',name:'Roloux',zip:'4347'},{label:'4347 Noville Liège',name:'Noville Liège',zip:'4347'},{label:'4347 Freloux',name:'Freloux',zip:'4347'},{label:'4347 Fexhe-le-Haut-Clocher',name:'Fexhe-le-Haut-Clocher',zip:'4347'},{label:'4342 Hognoul',name:'Hognoul',zip:'4342'},{label:'4340 Othée',name:'Othée',zip:'4340'},{label:'4340 Fooz',name:'Fooz',zip:'4340'},{label:'4340 Awans',name:'Awans',zip:'4340'},{label:'4317 Viemme',name:'Viemme',zip:'4317'},{label:'4317 Les Waleffes',name:'Les Waleffes',zip:'4317'},{label:'4317 Faimes',name:'Faimes',zip:'4317'},{label:'4317 Celles Liège',name:'Celles Liège',zip:'4317'},{label:'4317 Borlez',name:'Borlez',zip:'4317'},{label:'4317 Aineffe',name:'Aineffe',zip:'4317'},{label:'4300 Waremme',name:'Waremme',zip:'4300'},{label:'4300 Oleye',name:'Oleye',zip:'4300'},{label:'4300 Lantremange',name:'Lantremange',zip:'4300'},{label:'4300 Grand-Axhe',name:'Grand-Axhe',zip:'4300'},{label:'4300 Bovenistier',name:'Bovenistier',zip:'4300'},{label:'4300 Bleret',name:'Bleret',zip:'4300'},{label:'4300 Bettincourt',name:'Bettincourt',zip:'4300'},{label:'4287 Racour',name:'Racour',zip:'4287'},{label:'4287 Pellaines',name:'Pellaines',zip:'4287'},{label:'4287 Lincent',name:'Lincent',zip:'4287'},{label:'4280 Wansin',name:'Wansin',zip:'4280'},{label:'4280 Villers-le-Peuplier',name:'Villers-le-Peuplier',zip:'4280'},{label:'4280 Trognée',name:'Trognée',zip:'4280'},{label:'4280 Thisnes',name:'Thisnes',zip:'4280'},{label:'4280 Poucet',name:'Poucet',zip:'4280'},{label:'4280 Petit-Hallet',name:'Petit-Hallet',zip:'4280'},{label:'4280 Moxhe',name:'Moxhe',zip:'4280'},{label:'4280 Merdorp',name:'Merdorp',zip:'4280'},{label:'4280 Lens-Saint-Remy',name:'Lens-Saint-Remy',zip:'4280'},{label:'4280 Hannut',name:'Hannut',zip:'4280'},{label:'4280 Grand-Hallet',name:'Grand-Hallet',zip:'4280'},{label:'4280 Crehen',name:'Crehen',zip:'4280'},{label:'4280 Cras-Avernas',name:'Cras-Avernas',zip:'4280'},{label:'4280 Blehen',name:'Blehen',zip:'4280'},{label:'4280 Bertrée',name:'Bertrée',zip:'4280'},{label:'4280 Avin',name:'Avin',zip:'4280'},{label:'4280 Avernas-le-Bauduin',name:'Avernas-le-Bauduin',zip:'4280'},{label:'4280 Abolens',name:'Abolens',zip:'4280'},{label:'4263 Tourinne Liège',name:'Tourinne Liège',zip:'4263'},{label:'4261 Latinne',name:'Latinne',zip:'4261'},{label:'4260 Ville-en-Hesbaye',name:'Ville-en-Hesbaye',zip:'4260'},{label:'4260 Fumal',name:'Fumal',zip:'4260'},{label:'4260 Fallais',name:'Fallais',zip:'4260'},{label:'4260 Ciplet',name:'Ciplet',zip:'4260'},{label:'4260 Braives',name:'Braives',zip:'4260'},{label:'4260 Avennes',name:'Avennes',zip:'4260'},{label:'4257 Rosoux-Crenwick',name:'Rosoux-Crenwick',zip:'4257'},{label:'4257 Corswarem',name:'Corswarem',zip:'4257'},{label:'4257 Berloz',name:'Berloz',zip:'4257'},{label:'4254 Ligney',name:'Ligney',zip:'4254'},{label:'4253 Darion',name:'Darion',zip:'4253'},{label:'4252 Omal',name:'Omal',zip:'4252'},{label:'4250 Lens-Saint-Servais',name:'Lens-Saint-Servais',zip:'4250'},{label:'4250 Hollogne-sur-Geer',name:'Hollogne-sur-Geer',zip:'4250'},{label:'4250 Geer',name:'Geer',zip:'4250'},{label:'4250 Boëlhe',name:'Boëlhe',zip:'4250'},{label:'4219 Wasseiges',name:'Wasseiges',zip:'4219'},{label:'4219 Meeffe',name:'Meeffe',zip:'4219'},{label:'4219 Ambresin',name:'Ambresin',zip:'4219'},{label:'4219 Acosse',name:'Acosse',zip:'4219'},{label:'4218 Couthuin',name:'Couthuin',zip:'4218'},{label:'4217 Lavoir',name:'Lavoir',zip:'4217'},{label:'4217 Héron',name:'Héron',zip:'4217'},{label:'4210 Oteppe',name:'Oteppe',zip:'4210'},{label:'4210 Marneffe',name:'Marneffe',zip:'4210'},{label:'4210 Lamontzée',name:'Lamontzée',zip:'4210'},{label:'4210 Hannêche',name:'Hannêche',zip:'4210'},{label:'4210 Burdinne',name:'Burdinne',zip:'4210'},{label:'4190 Xhoris',name:'Xhoris',zip:'4190'},{label:'4190 Werbomont',name:'Werbomont',zip:'4190'},{label:'4190 Vieuxville',name:'Vieuxville',zip:'4190'},{label:'4190 My',name:'My',zip:'4190'},{label:'4190 Ferrières',name:'Ferrières',zip:'4190'},{label:'4181 Filot',name:'Filot',zip:'4181'},{label:'4180 Hamoir',name:'Hamoir',zip:'4180'},{label:'4180 Comblain-la-Tour',name:'Comblain-la-Tour',zip:'4180'},{label:'4180 Comblain-Fairon',name:'Comblain-Fairon',zip:'4180'},{label:'4171 Poulseur',name:'Poulseur',zip:'4171'},{label:'4170 Comblain-au-Pont',name:'Comblain-au-Pont',zip:'4170'},{label:'4163 Tavier',name:'Tavier',zip:'4163'},{label:'4162 Hody',name:'Hody',zip:'4162'},{label:'4161 Villers-aux-Tours',name:'Villers-aux-Tours',zip:'4161'},{label:'4160 Anthisnes',name:'Anthisnes',zip:'4160'},{label:'4141 Louveigné',name:'Louveigné',zip:'4141'},{label:'4140 Sprimont',name:'Sprimont',zip:'4140'},{label:'4140 Rouvreux',name:'Rouvreux',zip:'4140'},{label:'4140 Gomzé-Andoumont',name:'Gomzé-Andoumont',zip:'4140'},{label:'4140 Dolembreux',name:'Dolembreux',zip:'4140'},{label:'4130 Tilff',name:'Tilff',zip:'4130'},{label:'4130 Esneux',name:'Esneux',zip:'4130'},{label:'4122 Plainevaux',name:'Plainevaux',zip:'4122'},{label:'4121 Neuville-en-Condroz',name:'Neuville-en-Condroz',zip:'4121'},{label:'4120 Rotheux-Rimière',name:'Rotheux-Rimière',zip:'4120'},{label:'4120 Neupré',name:'Neupré',zip:'4120'},{label:'4120 Ehein',name:'Ehein',zip:'4120'},{label:'4102 Ougrée',name:'Ougrée',zip:'4102'},{label:'4101 Jemeppe-sur-Meuse',name:'Jemeppe-sur-Meuse',zip:'4101'},{label:'4100 Seraing',name:'Seraing',zip:'4100'},{label:'4100 Boncelles',name:'Boncelles',zip:'4100'},{label:'4053 Embourg',name:'Embourg',zip:'4053'},{label:'4052 Beaufays',name:'Beaufays',zip:'4052'},{label:'4051 Vaux-sous-Chèvremont',name:'Vaux-sous-Chèvremont',zip:'4051'},{label:'4050 Chaudfontaine',name:'Chaudfontaine',zip:'4050'},{label:'4042 Liers',name:'Liers',zip:'4042'},{label:'4041 Vottem',name:'Vottem',zip:'4041'},{label:'4041 Milmort',name:'Milmort',zip:'4041'},{label:'4040 Herstal',name:'Herstal',zip:'4040'},{label:'4032 Chênée',name:'Chênée',zip:'4032'},{label:'4031 Angleur',name:'Angleur',zip:'4031'},{label:'4030 Grivegnée',name:'Grivegnée',zip:'4030'},{label:'4020 Wandre',name:'Wandre',zip:'4020'},{label:'4020 Liège',name:'Liège',zip:'4020'},{label:'4020 Jupille-sur-Meuse',name:'Jupille-sur-Meuse',zip:'4020'},{label:'4020 Bressoux',name:'Bressoux',zip:'4020'},{label:'4000 Rocourt',name:'Rocourt',zip:'4000'},{label:'4000 Liège',name:'Liège',zip:'4000'},{label:'4000 Glain',name:'Glain',zip:'4000'},{label:'7973 Stambruges',name:'Stambruges',zip:'7973'},{label:'7973 Grandglise',name:'Grandglise',zip:'7973'},{label:'7972 Quevaucamps',name:'Quevaucamps',zip:'7972'},{label:'7972 Ellignies-Sainte-Anne',name:'Ellignies-Sainte-Anne',zip:'7972'},{label:'7972 Aubechies',name:'Aubechies',zip:'7972'},{label:'7971 Wadelincourt',name:'Wadelincourt',zip:'7971'},{label:'7971 Thumaide',name:'Thumaide',zip:'7971'},{label:'7971 Ramegnies',name:'Ramegnies',zip:'7971'},{label:'7971 Basècles',name:'Basècles',zip:'7971'},{label:'7970 Beloeil',name:'Beloeil',zip:'7970'},{label:'7951 Tongre-Notre-Dame',name:'Tongre-Notre-Dame',zip:'7951'},{label:'7950 Tongre-Saint-Martin',name:'Tongre-Saint-Martin',zip:'7950'},{label:'7950 Ladeuze',name:'Ladeuze',zip:'7950'},{label:'7950 Huissignies',name:'Huissignies',zip:'7950'},{label:'7950 Grosage',name:'Grosage',zip:'7950'},{label:'7950 Chièvres',name:'Chièvres',zip:'7950'},{label:'7943 Gages',name:'Gages',zip:'7943'},{label:'7942 Mévergnies-lez-Lens',name:'Mévergnies-lez-Lens',zip:'7942'},{label:'7941 Attre',name:'Attre',zip:'7941'},{label:'7940 Cambron-Casteau',name:'Cambron-Casteau',zip:'7940'},{label:'7940 Brugelette',name:'Brugelette',zip:'7940'},{label:'7912 Saint-Sauveur',name:'Saint-Sauveur',zip:'7912'},{label:'7912 Dergneau',name:'Dergneau',zip:'7912'},{label:'7911 Oeudeghien',name:'Oeudeghien',zip:'7911'},{label:'7911 Moustier Ht.',name:'Moustier Ht.',zip:'7911'},{label:'7911 Montroeul-au-Bois',name:'Montroeul-au-Bois',zip:'7911'},{label:'7911 Herquegies',name:'Herquegies',zip:'7911'},{label:'7911 Hacquegnies',name:'Hacquegnies',zip:'7911'},{label:'7911 Frasnes-lez-Buissenal',name:'Frasnes-lez-Buissenal',zip:'7911'},{label:'7911 Buissenal',name:'Buissenal',zip:'7911'},{label:'7910 Wattripont',name:'Wattripont',zip:'7910'},{label:'7910 Frasnes-lez-Anvaing',name:'Frasnes-lez-Anvaing',zip:'7910'},{label:'7910 Forest Ht.',name:'Forest Ht.',zip:'7910'},{label:'7910 Ellignies-lez-Frasnes',name:'Ellignies-lez-Frasnes',zip:'7910'},{label:'7910 Cordes',name:'Cordes',zip:'7910'},{label:'7910 Arc-Wattripont',name:'Arc-Wattripont',zip:'7910'},{label:'7910 Arc-Ainières',name:'Arc-Ainières',zip:'7910'},{label:'7910 Anvaing',name:'Anvaing',zip:'7910'},{label:'7906 Gallaix',name:'Gallaix',zip:'7906'},{label:'7904 Willaupuis',name:'Willaupuis',zip:'7904'},{label:'7904 Tourpes',name:'Tourpes',zip:'7904'},{label:'7904 Pipaix',name:'Pipaix',zip:'7904'},{label:'7903 Chapelle-à-Wattines',name:'Chapelle-à-Wattines',zip:'7903'},{label:'7903 Chapelle-à-Oie',name:'Chapelle-à-Oie',zip:'7903'},{label:'7903 Blicquy',name:'Blicquy',zip:'7903'},{label:'7901 Thieulain',name:'Thieulain',zip:'7901'},{label:'7900 Leuze-en-Hainaut',name:'Leuze-en-Hainaut',zip:'7900'},{label:'7900 Grandmetz',name:'Grandmetz',zip:'7900'},{label:'7890 Wodecq',name:'Wodecq',zip:'7890'},{label:'7890 Lahamaide',name:'Lahamaide',zip:'7890'},{label:'7890 Ellezelles',name:'Ellezelles',zip:'7890'},{label:'7880 Flobecq/Vloesberg',name:'Flobecq/Vloesberg',zip:'7880'},{label:'7870 Montignies-lez-Lens',name:'Montignies-lez-Lens',zip:'7870'},{label:'7870 Lombise',name:'Lombise',zip:'7870'},{label:'7870 Lens',name:'Lens',zip:'7870'},{label:'7870 Cambron-Saint-Vincent',name:'Cambron-Saint-Vincent',zip:'7870'},{label:'7870 Bauffe',name:'Bauffe',zip:'7870'},{label:'7866 Ollignies',name:'Ollignies',zip:'7866'},{label:'7866 Bois-de-Lessines',name:'Bois-de-Lessines',zip:'7866'},{label:'7864 Deux-Acren',name:'Deux-Acren',zip:'7864'},{label:'7863 Ghoy',name:'Ghoy',zip:'7863'},{label:'7862 Ogy',name:'Ogy',zip:'7862'},{label:'7861 Wannebecq',name:'Wannebecq',zip:'7861'},{label:'7861 Papignies',name:'Papignies',zip:'7861'},{label:'7860 Lessines',name:'Lessines',zip:'7860'},{label:'7850 Petit-Enghien/Lettelingen',name:'Petit-Enghien/Lettelingen',zip:'7850'},{label:'7850 Marcq/Mark',name:'Marcq/Mark',zip:'7850'},{label:'7850 Enghien/Edingen',name:'Enghien/Edingen',zip:'7850'},{label:'7830 Thoricourt',name:'Thoricourt',zip:'7830'},{label:'7830 Silly',name:'Silly',zip:'7830'},{label:'7830 Hoves Ht.',name:'Hoves Ht.',zip:'7830'},{label:'7830 Hellebecq',name:'Hellebecq',zip:'7830'},{label:'7830 Graty',name:'Graty',zip:'7830'},{label:'7830 Gondregnies',name:'Gondregnies',zip:'7830'},{label:'7830 Fouleng',name:'Fouleng',zip:'7830'},{label:'7830 Bassilly',name:'Bassilly',zip:'7830'},{label:'7823 Gibecq',name:'Gibecq',zip:'7823'},{label:'7822 Isières',name:'Isières',zip:'7822'},{label:'7822 Ghislenghien',name:'Ghislenghien',zip:'7822'},{label:'7812 Villers-Saint-Amand',name:'Villers-Saint-Amand',zip:'7812'},{label:'7812 Villers-Notre-Dame',name:'Villers-Notre-Dame',zip:'7812'},{label:'7812 Moulbaix',name:'Moulbaix',zip:'7812'},{label:'7812 Mainvault',name:'Mainvault',zip:'7812'},{label:'7812 Ligne',name:'Ligne',zip:'7812'},{label:'7812 Houtaing',name:'Houtaing',zip:'7812'},{label:'7811 Arbre Ht.',name:'Arbre Ht.',zip:'7811'},{label:'7810 Maffle',name:'Maffle',zip:'7810'},{label:'7804 Rebaix',name:'Rebaix',zip:'7804'},{label:'7804 Ostiches',name:'Ostiches',zip:'7804'},{label:'7803 Bouvignies',name:'Bouvignies',zip:'7803'},{label:'7802 Ormeignies',name:'Ormeignies',zip:'7802'},{label:'7801 Irchonwelz',name:'Irchonwelz',zip:'7801'},{label:'7800 Lanquesaint',name:'Lanquesaint',zip:'7800'},{label:'7800 Ath',name:'Ath',zip:'7800'},{label:'7784 Warneton/Waasten',name:'Warneton/Waasten',zip:'7784'},{label:'7784 Bas-Warneton/Neerwaasten',name:'Bas-Warneton/Neerwaasten',zip:'7784'},{label:'7783 Bizet',name:'Bizet',zip:'7783'},{label:'7782 Ploegsteert',name:'Ploegsteert',zip:'7782'},{label:'7781 Houthem Comines/Komen',name:'Houthem Comines/Komen',zip:'7781'},{label:'7780 Comines-Warneton/Komen-Waasten',name:'Comines-Warneton/Komen-Waasten',zip:'7780'},{label:'7780 Comines/Komen',name:'Comines/Komen',zip:'7780'},{label:'7760 Velaines',name:'Velaines',zip:'7760'},{label:'7760 Pottes',name:'Pottes',zip:'7760'},{label:'7760 Popuelles',name:'Popuelles',zip:'7760'},{label:'7760 Molenbaix',name:'Molenbaix',zip:'7760'},{label:'7760 Escanaffles',name:'Escanaffles',zip:'7760'},{label:'7760 Celles Ht.',name:'Celles Ht.',zip:'7760'},{label:'7750 Russeignies',name:'Russeignies',zip:'7750'},{label:'7750 Orroir',name:'Orroir',zip:'7750'},{label:'7750 Anseroeul',name:'Anseroeul',zip:'7750'},{label:'7750 Amougies',name:'Amougies',zip:'7750'},{label:'7743 Obigies',name:'Obigies',zip:'7743'},{label:'7743 Esquelmes',name:'Esquelmes',zip:'7743'},{label:'7742 Hérinnes-lez-Pecq',name:'Hérinnes-lez-Pecq',zip:'7742'},{label:'7740 Warcoing',name:'Warcoing',zip:'7740'},{label:'7740 Pecq',name:'Pecq',zip:'7740'},{label:'7730 Saint-Léger Ht.',name:'Saint-Léger Ht.',zip:'7730'},{label:'7730 Néchin',name:'Néchin',zip:'7730'},{label:'7730 Leers-Nord',name:'Leers-Nord',zip:'7730'},{label:'7730 Evregnies',name:'Evregnies',zip:'7730'},{label:'7730 Estaimpuis',name:'Estaimpuis',zip:'7730'},{label:'7730 Estaimbourg',name:'Estaimbourg',zip:'7730'},{label:'7730 Bailleul',name:'Bailleul',zip:'7730'},{label:'7712 Herseaux',name:'Herseaux',zip:'7712'},{label:'7711 Dottignies/Dottenijs',name:'Dottignies/Dottenijs',zip:'7711'},{label:'7700 Mouscron/Moeskroen',name:'Mouscron/Moeskroen',zip:'7700'},{label:'7700 Luingne',name:'Luingne',zip:'7700'},{label:'7643 Fontenoy',name:'Fontenoy',zip:'7643'},{label:'7642 Calonne',name:'Calonne',zip:'7642'},{label:'7641 Bruyelle',name:'Bruyelle',zip:'7641'},{label:'7640 Péronnes-lez-Antoing',name:'Péronnes-lez-Antoing',zip:'7640'},{label:'7640 Maubray',name:'Maubray',zip:'7640'},{label:'7640 Antoing',name:'Antoing',zip:'7640'},{label:'7624 Howardries',name:'Howardries',zip:'7624'},{label:'7623 Rongy',name:'Rongy',zip:'7623'},{label:'7622 Laplaigne',name:'Laplaigne',zip:'7622'},{label:'7621 Lesdain',name:'Lesdain',zip:'7621'},{label:'7620 Wez-Velvain',name:'Wez-Velvain',zip:'7620'},{label:'7620 Jollain-Merlin',name:'Jollain-Merlin',zip:'7620'},{label:'7620 Hollain',name:'Hollain',zip:'7620'},{label:'7620 Guignies',name:'Guignies',zip:'7620'},{label:'7620 Brunehaut',name:'Brunehaut',zip:'7620'},{label:'7620 Bléharies',name:'Bléharies',zip:'7620'},{label:'7618 Taintignies',name:'Taintignies',zip:'7618'},{label:'7611 La Glanerie',name:'La Glanerie',zip:'7611'},{label:'7610 Rumes',name:'Rumes',zip:'7610'},{label:'7608 Wiers',name:'Wiers',zip:'7608'},{label:'7604 Wasmes-Audemez-Briffoeil',name:'Wasmes-Audemez-Briffoeil',zip:'7604'},{label:'7604 Callenelle',name:'Callenelle',zip:'7604'},{label:'7604 Brasmenil',name:'Brasmenil',zip:'7604'},{label:'7604 Braffe',name:'Braffe',zip:'7604'},{label:'7604 Baugnies',name:'Baugnies',zip:'7604'},{label:'7603 Bon-Secours',name:'Bon-Secours',zip:'7603'},{label:'7602 Bury',name:'Bury',zip:'7602'},{label:'7601 Roucourt',name:'Roucourt',zip:'7601'},{label:'7600 Péruwelz',name:'Péruwelz',zip:'7600'},{label:'7548 Warchin',name:'Warchin',zip:'7548'},{label:'7543 Mourcourt',name:'Mourcourt',zip:'7543'},{label:'7542 Mont-Saint-Aubert',name:'Mont-Saint-Aubert',zip:'7542'},{label:'7540 Rumillies',name:'Rumillies',zip:'7540'},{label:'7540 Quartes',name:'Quartes',zip:'7540'},{label:'7540 Melles',name:'Melles',zip:'7540'},{label:'7540 Kain',name:'Kain',zip:'7540'},{label:'7538 Vezon',name:'Vezon',zip:'7538'},{label:'7536 Vaulx',name:'Vaulx',zip:'7536'},{label:'7534 Maulde',name:'Maulde',zip:'7534'},{label:'7534 Barry',name:'Barry',zip:'7534'},{label:'7533 Thimougies',name:'Thimougies',zip:'7533'},{label:'7532 Beclers',name:'Beclers',zip:'7532'},{label:'7531 Havinnes',name:'Havinnes',zip:'7531'},{label:'7530 Gaurain-Ramecroix',name:'Gaurain-Ramecroix',zip:'7530'},{label:'7522 Marquain',name:'Marquain',zip:'7522'},{label:'7522 Lamain',name:'Lamain',zip:'7522'},{label:'7522 Hertain',name:'Hertain',zip:'7522'},{label:'7522 Blandain',name:'Blandain',zip:'7522'},{label:'7521 Chercq',name:'Chercq',zip:'7521'},{label:'7520 Templeuve',name:'Templeuve',zip:'7520'},{label:'7520 Ramegnies-Chin',name:'Ramegnies-Chin',zip:'7520'},{label:'7506 Willemeau',name:'Willemeau',zip:'7506'},{label:'7504 Froidmont',name:'Froidmont',zip:'7504'},{label:'7503 Froyennes',name:'Froyennes',zip:'7503'},{label:'7502 Esplechin',name:'Esplechin',zip:'7502'},{label:'7501 Orcq',name:'Orcq',zip:'7501'},{label:'7500 Tournai',name:'Tournai',zip:'7500'},{label:'7500 Saint-Maur',name:'Saint-Maur',zip:'7500'},{label:'7500 Ere',name:'Ere',zip:'7500'},{label:'7390 Wasmuel',name:'Wasmuel',zip:'7390'},{label:'7390 Quaregnon',name:'Quaregnon',zip:'7390'},{label:'7387 Roisin',name:'Roisin',zip:'7387'},{label:'7387 Onnezies',name:'Onnezies',zip:'7387'},{label:'7387 Montignies-sur-Roc',name:'Montignies-sur-Roc',zip:'7387'},{label:'7387 Marchipont',name:'Marchipont',zip:'7387'},{label:'7387 Honnelles',name:'Honnelles',zip:'7387'},{label:'7387 Fayt-le-Franc',name:'Fayt-le-Franc',zip:'7387'},{label:'7387 Erquennes',name:'Erquennes',zip:'7387'},{label:'7387 Autreppe',name:'Autreppe',zip:'7387'},{label:'7387 Athis',name:'Athis',zip:'7387'},{label:'7387 Angreau',name:'Angreau',zip:'7387'},{label:'7387 Angre',name:'Angre',zip:'7387'},{label:'7382 Audregnies',name:'Audregnies',zip:'7382'},{label:'7380 Quiévrain',name:'Quiévrain',zip:'7380'},{label:'7380 Baisieux',name:'Baisieux',zip:'7380'},{label:'7370 Wihéries',name:'Wihéries',zip:'7370'},{label:'7370 Elouges',name:'Elouges',zip:'7370'},{label:'7370 Dour',name:'Dour',zip:'7370'},{label:'7370 Blaugies',name:'Blaugies',zip:'7370'},{label:'7350 Thulin',name:'Thulin',zip:'7350'},{label:'7350 Montroeul-sur-Haine',name:'Montroeul-sur-Haine',zip:'7350'},{label:'7350 Hensies',name:'Hensies',zip:'7350'},{label:'7350 Hainin',name:'Hainin',zip:'7350'},{label:'7340 Wasmes',name:'Wasmes',zip:'7340'},{label:'7340 Warquignies',name:'Warquignies',zip:'7340'},{label:'7340 Paturages',name:'Paturages',zip:'7340'},{label:'7340 Colfontaine',name:'Colfontaine',zip:'7340'},{label:'7334 Villerot',name:'Villerot',zip:'7334'},{label:'7334 Hautrage',name:'Hautrage',zip:'7334'},{label:'7333 Tertre',name:'Tertre',zip:'7333'},{label:'7332 Sirault',name:'Sirault',zip:'7332'},{label:'7332 Neufmaison',name:'Neufmaison',zip:'7332'},{label:'7331 Baudour',name:'Baudour',zip:'7331'},{label:'7330 Saint-Ghislain',name:'Saint-Ghislain',zip:'7330'},{label:'7322 Ville-Pommeroeul',name:'Ville-Pommeroeul',zip:'7322'},{label:'7322 Pommeroeul',name:'Pommeroeul',zip:'7322'},{label:'7321 Harchies',name:'Harchies',zip:'7321'},{label:'7321 Blaton',name:'Blaton',zip:'7321'},{label:'7320 Bernissart',name:'Bernissart',zip:'7320'},{label:'7301 Hornu',name:'Hornu',zip:'7301'},{label:'7300 Boussu',name:'Boussu',zip:'7300'},{label:'7191 Ecaussinnes-Lalaing',name:'Ecaussinnes-Lalaing',zip:'7191'},{label:'7190 Marche-lez-Ecaussinnes',name:'Marche-lez-Ecaussinnes',zip:'7190'},{label:'7190 Ecaussinnes',name:'Ecaussinnes',zip:'7190'},{label:'7181 Petit-Roeulx-lez-Nivelles',name:'Petit-Roeulx-lez-Nivelles',zip:'7181'},{label:'7181 Feluy',name:'Feluy',zip:'7181'},{label:'7181 Familleureux',name:'Familleureux',zip:'7181'},{label:'7181 Arquennes',name:'Arquennes',zip:'7181'},{label:'7180 Seneffe',name:'Seneffe',zip:'7180'},{label:'7170 Manage',name:'Manage',zip:'7170'},{label:'7170 La Hestre',name:'La Hestre',zip:'7170'},{label:'7170 Fayt-lez-Manage',name:'Fayt-lez-Manage',zip:'7170'},{label:'7170 Bellecourt',name:'Bellecourt',zip:'7170'},{label:'7160 Piéton',name:'Piéton',zip:'7160'},{label:'7160 Godarville',name:'Godarville',zip:'7160'},{label:'7160 Chapelle-lez-Herlaimont',name:'Chapelle-lez-Herlaimont',zip:'7160'},{label:'7141 Mont-Sainte-Aldegonde',name:'Mont-Sainte-Aldegonde',zip:'7141'},{label:'7141 Carnières',name:'Carnières',zip:'7141'},{label:'7140 Morlanwelz-Mariemont',name:'Morlanwelz-Mariemont',zip:'7140'},{label:'7140 Morlanwelz',name:'Morlanwelz',zip:'7140'},{label:'7134 Ressaix',name:'Ressaix',zip:'7134'},{label:'7134 Péronnes-lez-Binche',name:'Péronnes-lez-Binche',zip:'7134'},{label:'7134 Leval-Trahegnies',name:'Leval-Trahegnies',zip:'7134'},{label:'7134 Epinois',name:'Epinois',zip:'7134'},{label:'7133 Buvrinnes',name:'Buvrinnes',zip:'7133'},{label:'7131 Waudrez',name:'Waudrez',zip:'7131'},{label:'7130 Bray',name:'Bray',zip:'7130'},{label:'7130 Binche',name:'Binche',zip:'7130'},{label:'7130 Battignies',name:'Battignies',zip:'7130'},{label:'7120 Vellereille-le-Sec',name:'Vellereille-le-Sec',zip:'7120'},{label:'7120 Vellereille-les-Brayeux',name:'Vellereille-les-Brayeux',zip:'7120'},{label:'7120 Rouveroy Ht.',name:'Rouveroy Ht.',zip:'7120'},{label:'7120 Peissant',name:'Peissant',zip:'7120'},{label:'7120 Haulchin',name:'Haulchin',zip:'7120'},{label:'7120 Fauroeulx',name:'Fauroeulx',zip:'7120'},{label:'7120 Estinnes-au-Val',name:'Estinnes-au-Val',zip:'7120'},{label:'7120 Estinnes-au-Mont',name:'Estinnes-au-Mont',zip:'7120'},{label:'7120 Estinnes',name:'Estinnes',zip:'7120'},{label:'7120 Croix-lez-Rouveroy',name:'Croix-lez-Rouveroy',zip:'7120'},{label:'7110 Strépy-Bracquegnies',name:'Strépy-Bracquegnies',zip:'7110'},{label:'7110 Maurage',name:'Maurage',zip:'7110'},{label:'7110 Houdeng-Goegnies',name:'Houdeng-Goegnies',zip:'7110'},{label:'7110 Houdeng-Aimeries',name:'Houdeng-Aimeries',zip:'7110'},{label:'7110 Boussoit',name:'Boussoit',zip:'7110'},{label:'7100 Trivières',name:'Trivières',zip:'7100'},{label:'7100 Saint-Vaast',name:'Saint-Vaast',zip:'7100'},{label:'7100 La Louvière',name:'La Louvière',zip:'7100'},{label:'7100 Haine-Saint-Pierre',name:'Haine-Saint-Pierre',zip:'7100'},{label:'7100 Haine-Saint-Paul',name:'Haine-Saint-Paul',zip:'7100'},{label:'7090 Steenkerque Ht.',name:'Steenkerque Ht.',zip:'7090'},{label:'7090 Ronquières',name:'Ronquières',zip:'7090'},{label:'7090 Petit-Roeulx-lez-Braine',name:'Petit-Roeulx-lez-Braine',zip:'7090'},{label:'7090 Henripont',name:'Henripont',zip:'7090'},{label:'7090 Hennuyères',name:'Hennuyères',zip:'7090'},{label:'7090 Braine-le-Comte',name:'Braine-le-Comte',zip:'7090'},{label:'7080 Sars-la-Bruyère',name:'Sars-la-Bruyère',zip:'7080'},{label:'7080 Noirchain',name:'Noirchain',zip:'7080'},{label:'7080 La Bouverie',name:'La Bouverie',zip:'7080'},{label:'7080 Frameries',name:'Frameries',zip:'7080'},{label:'7080 Eugies Frameries',name:'Eugies Frameries',zip:'7080'},{label:'7070 Ville-sur-Haine Le Roeulx',name:'Ville-sur-Haine Le Roeulx',zip:'7070'},{label:'7070 Thieu',name:'Thieu',zip:'7070'},{label:'7070 Mignault',name:'Mignault',zip:'7070'},{label:'7070 Le Roeulx',name:'Le Roeulx',zip:'7070'},{label:'7070 Gottignies',name:'Gottignies',zip:'7070'},{label:'7063 Neufvilles',name:'Neufvilles',zip:'7063'},{label:'7063 Chaussée-Notre-Dame-Louvignies',name:'Chaussée-Notre-Dame-Louvignies',zip:'7063'},{label:'7062 Naast',name:'Naast',zip:'7062'},{label:'7061 Thieusies',name:'Thieusies',zip:'7061'},{label:'7061 Casteau Soignies',name:'Casteau Soignies',zip:'7061'},{label:'7060 Soignies',name:'Soignies',zip:'7060'},{label:'7060 Horrues',name:'Horrues',zip:'7060'},{label:'7050 Masnuy-Saint-Pierre',name:'Masnuy-Saint-Pierre',zip:'7050'},{label:'7050 Masnuy-Saint-Jean Jurbise',name:'Masnuy-Saint-Jean Jurbise',zip:'7050'},{label:'7050 Jurbise',name:'Jurbise',zip:'7050'},{label:'7050 Herchies',name:'Herchies',zip:'7050'},{label:'7050 Erbisoeul',name:'Erbisoeul',zip:'7050'},{label:'7050 Erbaut',name:'Erbaut',zip:'7050'},{label:'7041 Havay',name:'Havay',zip:'7041'},{label:'7041 Givry',name:'Givry',zip:'7041'},{label:'7040 Quévy-le-Petit',name:'Quévy-le-Petit',zip:'7040'},{label:'7040 Quévy-le-Grand',name:'Quévy-le-Grand',zip:'7040'},{label:'7040 Quévy',name:'Quévy',zip:'7040'},{label:'7040 Goegnies-Chaussée',name:'Goegnies-Chaussée',zip:'7040'},{label:'7040 Genly',name:'Genly',zip:'7040'},{label:'7040 Bougnies',name:'Bougnies',zip:'7040'},{label:'7040 Blaregnies',name:'Blaregnies',zip:'7040'},{label:'7040 Aulnois',name:'Aulnois',zip:'7040'},{label:'7040 Asquillies',name:'Asquillies',zip:'7040'},{label:'7034 Saint-Denis Ht.',name:'Saint-Denis Ht.',zip:'7034'},{label:'7034 Obourg',name:'Obourg',zip:'7034'},{label:'7033 Cuesmes',name:'Cuesmes',zip:'7033'},{label:'7032 Spiennes',name:'Spiennes',zip:'7032'},{label:'7031 Villers-Saint-Ghislain',name:'Villers-Saint-Ghislain',zip:'7031'},{label:'7030 Saint-Symphorien',name:'Saint-Symphorien',zip:'7030'},{label:'7024 Ciply',name:'Ciply',zip:'7024'},{label:'7022 Nouvelles',name:'Nouvelles',zip:'7022'},{label:'7022 Mesvin',name:'Mesvin',zip:'7022'},{label:'7022 Hyon',name:'Hyon',zip:'7022'},{label:'7022 Harveng',name:'Harveng',zip:'7022'},{label:'7022 Harmignies',name:'Harmignies',zip:'7022'},{label:'7021 Havré',name:'Havré',zip:'7021'},{label:'7020 Nimy',name:'Nimy',zip:'7020'},{label:'7020 Maisières',name:'Maisières',zip:'7020'},{label:'7012 Jemappes',name:'Jemappes',zip:'7012'},{label:'7012 Flénu',name:'Flénu',zip:'7012'},{label:'7011 Ghlin',name:'Ghlin',zip:'7011'},{label:'7000 Mons',name:'Mons',zip:'7000'},{label:'6596 Seloignes',name:'Seloignes',zip:'6596'},{label:'6596 Forges-Philippe',name:'Forges-Philippe',zip:'6596'},{label:'6594 Beauwelz',name:'Beauwelz',zip:'6594'},{label:'6593 Macquenoise',name:'Macquenoise',zip:'6593'},{label:'6592 Monceau-Imbrechies',name:'Monceau-Imbrechies',zip:'6592'},{label:'6591 Macon',name:'Macon',zip:'6591'},{label:'6590 Momignies',name:'Momignies',zip:'6590'},{label:'6567 Merbes-Sainte-Marie',name:'Merbes-Sainte-Marie',zip:'6567'},{label:'6567 Merbes-le-Château',name:'Merbes-le-Château',zip:'6567'},{label:'6567 Labuissière',name:'Labuissière',zip:'6567'},{label:'6567 Fontaine-Valmont',name:'Fontaine-Valmont',zip:'6567'},{label:'6560 Solre-sur-Sambre',name:'Solre-sur-Sambre',zip:'6560'},{label:'6560 Montignies-Saint-Christophe',name:'Montignies-Saint-Christophe',zip:'6560'},{label:'6560 Hantes-Wihéries',name:'Hantes-Wihéries',zip:'6560'},{label:'6560 Grand-Reng',name:'Grand-Reng',zip:'6560'},{label:'6560 Erquelinnes',name:'Erquelinnes',zip:'6560'},{label:'6543 Bienne-lez-Happart',name:'Bienne-lez-Happart',zip:'6543'},{label:'6542 Sars-la-Buissière',name:'Sars-la-Buissière',zip:'6542'},{label:'6540 Mont-Sainte-Geneviève',name:'Mont-Sainte-Geneviève',zip:'6540'},{label:'6540 Lobbes',name:'Lobbes',zip:'6540'},{label:'6536 Thuillies',name:'Thuillies',zip:'6536'},{label:'6536 Donstiennes',name:'Donstiennes',zip:'6536'},{label:'6534 Gozée',name:'Gozée',zip:'6534'},{label:'6533 Biercée',name:'Biercée',zip:'6533'},{label:'6532 Ragnies',name:'Ragnies',zip:'6532'},{label:'6531 Biesme-sous-Thuin',name:'Biesme-sous-Thuin',zip:'6531'},{label:'6530 Thuin',name:'Thuin',zip:'6530'},{label:'6530 Leers-et-Fosteau',name:'Leers-et-Fosteau',zip:'6530'},{label:'6511 Strée Ht.',name:'Strée Ht.',zip:'6511'},{label:'6500 Thirimont',name:'Thirimont',zip:'6500'},{label:'6500 Solre-Saint-Géry',name:'Solre-Saint-Géry',zip:'6500'},{label:'6500 Renlies',name:'Renlies',zip:'6500'},{label:'6500 Leval-Chaudeville',name:'Leval-Chaudeville',zip:'6500'},{label:'6500 Leugnies',name:'Leugnies',zip:'6500'},{label:'6500 Beaumont',name:'Beaumont',zip:'6500'},{label:'6500 Barbençon',name:'Barbençon',zip:'6500'},{label:'6470 Sivry-Rance',name:'Sivry-Rance',zip:'6470'},{label:'6470 Sivry',name:'Sivry',zip:'6470'},{label:'6470 Sautin',name:'Sautin',zip:'6470'},{label:'6470 Rance',name:'Rance',zip:'6470'},{label:'6470 Montbliart',name:'Montbliart',zip:'6470'},{label:'6470 Grandrieu',name:'Grandrieu',zip:'6470'},{label:'6464 Rièzes',name:'Rièzes',zip:'6464'},{label:'6464 Forges',name:'Forges',zip:'6464'},{label:'6464 Bourlers',name:'Bourlers',zip:'6464'},{label:'6464 Baileux',name:'Baileux',zip:'6464'},{label:'6463 Lompret',name:'Lompret',zip:'6463'},{label:'6462 Vaulx-lez-Chimay',name:'Vaulx-lez-Chimay',zip:'6462'},{label:'6461 Virelles',name:'Virelles',zip:'6461'},{label:'6460 Villers-la-Tour',name:'Villers-la-Tour',zip:'6460'},{label:'6460 Salles',name:'Salles',zip:'6460'},{label:'6460 Saint-Remy Ht.',name:'Saint-Remy Ht.',zip:'6460'},{label:'6460 Robechies',name:'Robechies',zip:'6460'},{label:'6460 Chimay',name:'Chimay',zip:'6460'},{label:'6460 Bailièvre',name:'Bailièvre',zip:'6460'},{label:'6441 Erpion',name:'Erpion',zip:'6441'},{label:'6440 Vergnies',name:'Vergnies',zip:'6440'},{label:'6440 Froidchapelle',name:'Froidchapelle',zip:'6440'},{label:'6440 Fourbechies',name:'Fourbechies',zip:'6440'},{label:'6440 Boussu-lez-Walcourt',name:'Boussu-lez-Walcourt',zip:'6440'},{label:'6280 Villers-Poterie',name:'Villers-Poterie',zip:'6280'},{label:'6280 Loverval',name:'Loverval',zip:'6280'},{label:'6280 Joncret',name:'Joncret',zip:'6280'},{label:'6280 Gougnies',name:'Gougnies',zip:'6280'},{label:'6280 Gerpinnes',name:'Gerpinnes',zip:'6280'},{label:'6280 Acoz',name:'Acoz',zip:'6280'},{label:'6250 Roselies',name:'Roselies',zip:'6250'},{label:'6250 Presles',name:'Presles',zip:'6250'},{label:'6250 Pont-de-Loup',name:'Pont-de-Loup',zip:'6250'},{label:'6250 Aiseau-Presles',name:'Aiseau-Presles',zip:'6250'},{label:'6250 Aiseau',name:'Aiseau',zip:'6250'},{label:'6240 Pironchamps',name:'Pironchamps',zip:'6240'},{label:'6240 Farciennes',name:'Farciennes',zip:'6240'},{label:'6238 Luttre',name:'Luttre',zip:'6238'},{label:'6238 Liberchies',name:'Liberchies',zip:'6238'},{label:'6230 Viesville',name:'Viesville',zip:'6230'},{label:'6230 Thiméon',name:'Thiméon',zip:'6230'},{label:'6230 Pont-à-Celles',name:'Pont-à-Celles',zip:'6230'},{label:'6230 Obaix',name:'Obaix',zip:'6230'},{label:'6230 Buzet',name:'Buzet',zip:'6230'},{label:'6224 Wanfercée-Baulet',name:'Wanfercée-Baulet',zip:'6224'},{label:'6223 Wagnelée',name:'Wagnelée',zip:'6223'},{label:'6222 Brye',name:'Brye',zip:'6222'},{label:'6221 Saint-Amand',name:'Saint-Amand',zip:'6221'},{label:'6220 Wangenies',name:'Wangenies',zip:'6220'},{label:'6220 Lambusart',name:'Lambusart',zip:'6220'},{label:'6220 Heppignies',name:'Heppignies',zip:'6220'},{label:'6220 Fleurus',name:'Fleurus',zip:'6220'},{label:'6211 Mellet',name:'Mellet',zip:'6211'},{label:'6210 Wayaux',name:'Wayaux',zip:'6210'},{label:'6210 Villers-Perwin',name:'Villers-Perwin',zip:'6210'},{label:'6210 Rèves',name:'Rèves',zip:'6210'},{label:'6210 Les Bons Villers',name:'Les Bons Villers',zip:'6210'},{label:'6210 Frasnes-lez-Gosselies',name:'Frasnes-lez-Gosselies',zip:'6210'},{label:'6200 Châtelineau',name:'Châtelineau',zip:'6200'},{label:'6200 Châtelet',name:'Châtelet',zip:'6200'},{label:'6200 Bouffioulx',name:'Bouffioulx',zip:'6200'},{label:'6183 Trazegnies',name:'Trazegnies',zip:'6183'},{label:'6182 Souvret',name:'Souvret',zip:'6182'},{label:'6181 Gouy-lez-Piéton',name:'Gouy-lez-Piéton',zip:'6181'},{label:'6180 Courcelles',name:'Courcelles',zip:'6180'},{label:'6150 Anderlues',name:'Anderlues',zip:'6150'},{label:'6142 Leernes',name:'Leernes',zip:'6142'},{label:'6141 Forchies-la-Marche',name:'Forchies-la-Marche',zip:'6141'},{label:'6120 Nalinnes',name:'Nalinnes',zip:'6120'},{label:'6120 Marbaix Ht.',name:'Marbaix Ht.',zip:'6120'},{label:'6120 Jamioulx',name:'Jamioulx',zip:'6120'},{label:'6120 Ham-sur-Heure-Nalinnes',name:'Ham-sur-Heure-Nalinnes',zip:'6120'},{label:'6120 Ham-sur-Heure',name:'Ham-sur-Heure',zip:'6120'},{label:'6120 Cour-sur-Heure',name:'Cour-sur-Heure',zip:'6120'},{label:'6111 Landelies',name:'Landelies',zip:'6111'},{label:'6110 Montigny-le-Tilleul',name:'Montigny-le-Tilleul',zip:'6110'},{label:'6061 Montignies-sur-Sambre',name:'Montignies-sur-Sambre',zip:'6061'},{label:'6060 Gilly',name:'Gilly',zip:'6060'},{label:'6044 Roux',name:'Roux',zip:'6044'},{label:'6043 Ransart',name:'Ransart',zip:'6043'},{label:'6042 Lodelinsart',name:'Lodelinsart',zip:'6042'},{label:'6041 Gosselies',name:'Gosselies',zip:'6041'},{label:'6040 Jumet',name:'Jumet',zip:'6040'},{label:'6032 Mont-sur-Marchienne',name:'Mont-sur-Marchienne',zip:'6032'},{label:'6031 Monceau-sur-Sambre',name:'Monceau-sur-Sambre',zip:'6031'},{label:'6030 Marchienne-au-Pont',name:'Marchienne-au-Pont',zip:'6030'},{label:'6030 Goutroux',name:'Goutroux',zip:'6030'},{label:'6020 Dampremy',name:'Dampremy',zip:'6020'},{label:'6010 Couillet',name:'Couillet',zip:'6010'},{label:'6001 Marcinelle',name:'Marcinelle',zip:'6001'},{label:'6000 Charleroi',name:'Charleroi',zip:'6000'},{label:'8980 Zonnebeke',name:'Zonnebeke',zip:'8980'},{label:'8980 Passendale (Zonnebeke)',name:'Passendale (Zonnebeke)',zip:'8980'},{label:'8980 Geluveld (Zonnebeke)',name:'Geluveld (Zonnebeke)',zip:'8980'},{label:'8980 Beselare (Zonnebeke)',name:'Beselare (Zonnebeke)',zip:'8980'},{label:'8978 Watou (Poperinge)',name:'Watou (Poperinge)',zip:'8978'},{label:'8972 Roesbrugge-Haringe (Poperinge)',name:'Roesbrugge-Haringe (Poperinge)',zip:'8972'},{label:'8972 Proven (Poperinge)',name:'Proven (Poperinge)',zip:'8972'},{label:'8972 Krombeke (Poperinge)',name:'Krombeke (Poperinge)',zip:'8972'},{label:'8970 Reningelst (Poperinge)',name:'Reningelst (Poperinge)',zip:'8970'},{label:'8970 Poperinge',name:'Poperinge',zip:'8970'},{label:'8958 Loker (Heuvelland)',name:'Loker (Heuvelland)',zip:'8958'},{label:'8956 Kemmel (Heuvelland)',name:'Kemmel (Heuvelland)',zip:'8956'},{label:'8954 Westouter (Heuvelland)',name:'Westouter (Heuvelland)',zip:'8954'},{label:'8953 Wijtschate (Heuvelland)',name:'Wijtschate (Heuvelland)',zip:'8953'},{label:'8952 Wulvergem (Heuvelland)',name:'Wulvergem (Heuvelland)',zip:'8952'},{label:'8951 Dranouter (Heuvelland)',name:'Dranouter (Heuvelland)',zip:'8951'},{label:'8950 Nieuwkerke (Heuvelland)',name:'Nieuwkerke (Heuvelland)',zip:'8950'},{label:'8950 Heuvelland',name:'Heuvelland',zip:'8950'},{label:'8940 Wervik',name:'Wervik',zip:'8940'},{label:'8940 Geluwe (Wervik)',name:'Geluwe (Wervik)',zip:'8940'},{label:'8930 Rekkem (Menen)',name:'Rekkem (Menen)',zip:'8930'},{label:'8930 Menen',name:'Menen',zip:'8930'},{label:'8930 Lauwe (Menen)',name:'Lauwe (Menen)',zip:'8930'},{label:'8920 Poelkapelle (Langemark-Poelkapelle)',name:'Poelkapelle (Langemark-Poelkapelle)',zip:'8920'},{label:'8920 Langemark-Poelkapelle',name:'Langemark-Poelkapelle',zip:'8920'},{label:'8920 Langemark (Langemark-Poelkapelle)',name:'Langemark (Langemark-Poelkapelle)',zip:'8920'},{label:'8920 Bikschote (Langemark-Poelkapelle)',name:'Bikschote (Langemark-Poelkapelle)',zip:'8920'},{label:'8908 Vlamertinge (Ieper)',name:'Vlamertinge (Ieper)',zip:'8908'},{label:'8906 Elverdinge (Ieper)',name:'Elverdinge (Ieper)',zip:'8906'},{label:'8904 Zuidschote (Ieper)',name:'Zuidschote (Ieper)',zip:'8904'},{label:'8904 Boezinge (Ieper)',name:'Boezinge (Ieper)',zip:'8904'},{label:'8902 Zillebeke (Ieper)',name:'Zillebeke (Ieper)',zip:'8902'},{label:'8902 Voormezele (Ieper)',name:'Voormezele (Ieper)',zip:'8902'},{label:'8902 Hollebeke (Ieper)',name:'Hollebeke (Ieper)',zip:'8902'},{label:'8900 Sint-Jan (Ieper)',name:'Sint-Jan (Ieper)',zip:'8900'},{label:'8900 Ieper',name:'Ieper',zip:'8900'},{label:'8900 Dikkebus (Ieper)',name:'Dikkebus (Ieper)',zip:'8900'},{label:'8900 Brielen (Ieper)',name:'Brielen (Ieper)',zip:'8900'},{label:'8890 Moorslede',name:'Moorslede',zip:'8890'},{label:'8890 Dadizele (Moorslede)',name:'Dadizele (Moorslede)',zip:'8890'},{label:'8880 Sint-Eloois-Winkel (Ledegem)',name:'Sint-Eloois-Winkel (Ledegem)',zip:'8880'},{label:'8880 Rollegem-Kapelle (Ledegem)',name:'Rollegem-Kapelle (Ledegem)',zip:'8880'},{label:'8880 Ledegem',name:'Ledegem',zip:'8880'},{label:'8870 Kachtem (Izegem)',name:'Kachtem (Izegem)',zip:'8870'},{label:'8870 Izegem',name:'Izegem',zip:'8870'},{label:'8870 Emelgem (Izegem)',name:'Emelgem (Izegem)',zip:'8870'},{label:'8860 Lendelede',name:'Lendelede',zip:'8860'},{label:'8851 Koolskamp (Ardooie)',name:'Koolskamp (Ardooie)',zip:'8851'},{label:'8850 Ardooie',name:'Ardooie',zip:'8850'},{label:'8840 Westrozebeke (Staden)',name:'Westrozebeke (Staden)',zip:'8840'},{label:'8840 Staden',name:'Staden',zip:'8840'},{label:'8840 Oostnieuwkerke (Staden)',name:'Oostnieuwkerke (Staden)',zip:'8840'},{label:'8830 Hooglede',name:'Hooglede',zip:'8830'},{label:'8830 Gits (Hooglede)',name:'Gits (Hooglede)',zip:'8830'},{label:'8820 Torhout',name:'Torhout',zip:'8820'},{label:'8810 Lichtervelde',name:'Lichtervelde',zip:'8810'},{label:'8800 Rumbeke (Roeselare)',name:'Rumbeke (Roeselare)',zip:'8800'},{label:'8800 Roeselare',name:'Roeselare',zip:'8800'},{label:'8800 Oekene (Roeselare)',name:'Oekene (Roeselare)',zip:'8800'},{label:'8793 Sint-Eloois-Vijve (Waregem)',name:'Sint-Eloois-Vijve (Waregem)',zip:'8793'},{label:'8792 Desselgem (Waregem)',name:'Desselgem (Waregem)',zip:'8792'},{label:'8790 Waregem',name:'Waregem',zip:'8790'},{label:'8780 Oostrozebeke',name:'Oostrozebeke',zip:'8780'},{label:'8770 Ingelmunster',name:'Ingelmunster',zip:'8770'},{label:'8760 Meulebeke',name:'Meulebeke',zip:'8760'},{label:'8755 Ruiselede',name:'Ruiselede',zip:'8755'},{label:'8750 Zwevezele (Wingene)',name:'Zwevezele (Wingene)',zip:'8750'},{label:'8750 Wingene',name:'Wingene',zip:'8750'},{label:'8740 Pittem',name:'Pittem',zip:'8740'},{label:'8740 Egem (Pittem)',name:'Egem (Pittem)',zip:'8740'},{label:'8730 Oedelem (Beernem)',name:'Oedelem (Beernem)',zip:'8730'},{label:'8730 Beernem',name:'Beernem',zip:'8730'},{label:'8720 Wakken (Dentergem)',name:'Wakken (Dentergem)',zip:'8720'},{label:'8720 Oeselgem (Dentergem)',name:'Oeselgem (Dentergem)',zip:'8720'},{label:'8720 Markegem (Dentergem)',name:'Markegem (Dentergem)',zip:'8720'},{label:'8720 Dentergem',name:'Dentergem',zip:'8720'},{label:'8710 Wielsbeke',name:'Wielsbeke',zip:'8710'},{label:'8710 Sint-Baafs-Vijve (Wielsbeke)',name:'Sint-Baafs-Vijve (Wielsbeke)',zip:'8710'},{label:'8710 Ooigem (Wielsbeke)',name:'Ooigem (Wielsbeke)',zip:'8710'},{label:'8700 Tielt',name:'Tielt',zip:'8700'},{label:'8700 Schuiferskapelle (Tielt)',name:'Schuiferskapelle (Tielt)',zip:'8700'},{label:'8700 Kanegem (Tielt)',name:'Kanegem (Tielt)',zip:'8700'},{label:'8700 Aarsele (Tielt)',name:'Aarsele (Tielt)',zip:'8700'},{label:'8691 Stavele (Alveringem)',name:'Stavele (Alveringem)',zip:'8691'},{label:'8691 Leisele (Alveringem)',name:'Leisele (Alveringem)',zip:'8691'},{label:'8691 Izenberge (Alveringem)',name:'Izenberge (Alveringem)',zip:'8691'},{label:'8691 Gijverinkhove (Alveringem)',name:'Gijverinkhove (Alveringem)',zip:'8691'},{label:'8691 Beveren-Aan-Den-Ijzer (Alveringem)',name:'Beveren-Aan-Den-Ijzer (Alveringem)',zip:'8691'},{label:'8690 Sint-Rijkers (Alveringem)',name:'Sint-Rijkers (Alveringem)',zip:'8690'},{label:'8690 Oeren (Alveringem)',name:'Oeren (Alveringem)',zip:'8690'},{label:'8690 Hoogstade (Alveringem)',name:'Hoogstade (Alveringem)',zip:'8690'},{label:'8690 Alveringem',name:'Alveringem',zip:'8690'},{label:'8680 Zande (Koekelare)',name:'Zande (Koekelare)',zip:'8680'},{label:'8680 Koekelare',name:'Koekelare',zip:'8680'},{label:'8680 Bovekerke (Koekelare)',name:'Bovekerke (Koekelare)',zip:'8680'},{label:'8670 Wulpen (Koksijde)',name:'Wulpen (Koksijde)',zip:'8670'},{label:'8670 Oostduinkerke (Koksijde)',name:'Oostduinkerke (Koksijde)',zip:'8670'},{label:'8670 Koksijde',name:'Koksijde',zip:'8670'},{label:'8660 Adinkerke (De Panne)',name:'Adinkerke (De Panne)',zip:'8660'},{label:'8650 Merkem (Houthulst)',name:'Merkem (Houthulst)',zip:'8650'},{label:'8650 Klerken (Houthulst)',name:'Klerken (Houthulst)',zip:'8650'},{label:'8650 Houthulst',name:'Houthulst',zip:'8650'},{label:'8647 Reninge (Lo-Reninge)',name:'Reninge (Lo-Reninge)',zip:'8647'},{label:'8647 Pollinkhove (Lo-Reninge)',name:'Pollinkhove (Lo-Reninge)',zip:'8647'},{label:'8647 Noordschote (Lo-Reninge)',name:'Noordschote (Lo-Reninge)',zip:'8647'},{label:'8647 Lo-Reninge',name:'Lo-Reninge',zip:'8647'},{label:'8647 Lo (Lo-Reninge)',name:'Lo (Lo-Reninge)',zip:'8647'},{label:'8640 Woesten (Vleteren)',name:'Woesten (Vleteren)',zip:'8640'},{label:'8640 Westvleteren (Vleteren)',name:'Westvleteren (Vleteren)',zip:'8640'},{label:'8640 Vleteren',name:'Vleteren',zip:'8640'},{label:'8640 Oostvleteren (Vleteren)',name:'Oostvleteren (Vleteren)',zip:'8640'},{label:'8630 Zoutenaaie (Veurne)',name:'Zoutenaaie (Veurne)',zip:'8630'},{label:'8630 Wulveringem (Veurne)',name:'Wulveringem (Veurne)',zip:'8630'},{label:'8630 Vinkem (Veurne)',name:'Vinkem (Veurne)',zip:'8630'},{label:'8630 Veurne',name:'Veurne',zip:'8630'},{label:'8630 Eggewaartskapelle (Veurne)',name:'Eggewaartskapelle (Veurne)',zip:'8630'},{label:'8630 Bulskamp (Veurne)',name:'Bulskamp (Veurne)',zip:'8630'},{label:'8630 Booitshoeke (Veurne)',name:'Booitshoeke (Veurne)',zip:'8630'},{label:'8630 Avekapelle (Veurne)',name:'Avekapelle (Veurne)',zip:'8630'},{label:'8620 Nieuwpoort',name:'Nieuwpoort',zip:'8620'},{label:'8610 Zarren (Kortemark)',name:'Zarren (Kortemark)',zip:'8610'},{label:'8610 Werken (Kortemark)',name:'Werken (Kortemark)',zip:'8610'},{label:'8610 Kortemark',name:'Kortemark',zip:'8610'},{label:'8610 Handzame (Kortemark)',name:'Handzame (Kortemark)',zip:'8610'},{label:'8600 Woumen (Diksmuide)',name:'Woumen (Diksmuide)',zip:'8600'},{label:'8600 Vladslo (Diksmuide)',name:'Vladslo (Diksmuide)',zip:'8600'},{label:'8600 Stuivekenskerke (Diksmuide)',name:'Stuivekenskerke (Diksmuide)',zip:'8600'},{label:'8600 Sint-Jacobs-Kapelle (Diksmuide)',name:'Sint-Jacobs-Kapelle (Diksmuide)',zip:'8600'},{label:'8600 Pervijze (Diksmuide)',name:'Pervijze (Diksmuide)',zip:'8600'},{label:'8600 Oudekapelle (Diksmuide)',name:'Oudekapelle (Diksmuide)',zip:'8600'},{label:'8600 Nieuwkapelle (Diksmuide)',name:'Nieuwkapelle (Diksmuide)',zip:'8600'},{label:'8600 Leke (Diksmuide)',name:'Leke (Diksmuide)',zip:'8600'},{label:'8600 Lampernisse (Diksmuide)',name:'Lampernisse (Diksmuide)',zip:'8600'},{label:'8600 Keiem (Diksmuide)',name:'Keiem (Diksmuide)',zip:'8600'},{label:'8600 Kaaskerke (Diksmuide)',name:'Kaaskerke (Diksmuide)',zip:'8600'},{label:'8600 Esen (Diksmuide)',name:'Esen (Diksmuide)',zip:'8600'},{label:'8600 Driekapellen (Diksmuide)',name:'Driekapellen (Diksmuide)',zip:'8600'},{label:'8600 Diksmuide',name:'Diksmuide',zip:'8600'},{label:'8600 Beerst (Diksmuide)',name:'Beerst (Diksmuide)',zip:'8600'},{label:'8583 Bossuit (Avelgem)',name:'Bossuit (Avelgem)',zip:'8583'},{label:'8582 Outrijve (Avelgem)',name:'Outrijve (Avelgem)',zip:'8582'},{label:'8581 Waarmaarde (Avelgem)',name:'Waarmaarde (Avelgem)',zip:'8581'},{label:'8581 Kerkhove (Avelgem)',name:'Kerkhove (Avelgem)',zip:'8581'},{label:'8580 Avelgem',name:'Avelgem',zip:'8580'},{label:'8573 Tiegem (Anzegem)',name:'Tiegem (Anzegem)',zip:'8573'},{label:'8572 Kaster (Anzegem)',name:'Kaster (Anzegem)',zip:'8572'},{label:'8570 Vichte (Anzegem)',name:'Vichte (Anzegem)',zip:'8570'},{label:'8570 Ingooigem (Anzegem)',name:'Ingooigem (Anzegem)',zip:'8570'},{label:'8570 Gijzelbrechtegem (Anzegem)',name:'Gijzelbrechtegem (Anzegem)',zip:'8570'},{label:'8570 Anzegem',name:'Anzegem',zip:'8570'},{label:'8560 Wevelgem',name:'Wevelgem',zip:'8560'},{label:'8560 Moorsele (Wevelgem)',name:'Moorsele (Wevelgem)',zip:'8560'},{label:'8560 Gullegem (Wevelgem)',name:'Gullegem (Wevelgem)',zip:'8560'},{label:'8554 Sint-Denijs (Zwevegem)',name:'Sint-Denijs (Zwevegem)',zip:'8554'},{label:'8553 Otegem (Zwevegem)',name:'Otegem (Zwevegem)',zip:'8553'},{label:'8552 Moen (Zwevegem)',name:'Moen (Zwevegem)',zip:'8552'},{label:'8551 Heestert (Zwevegem)',name:'Heestert (Zwevegem)',zip:'8551'},{label:'8550 Zwevegem',name:'Zwevegem',zip:'8550'},{label:'8540 Deerlijk',name:'Deerlijk',zip:'8540'},{label:'8531 Hulste (Harelbeke)',name:'Hulste (Harelbeke)',zip:'8531'},{label:'8531 Bavikhove (Harelbeke)',name:'Bavikhove (Harelbeke)',zip:'8531'},{label:'8530 Harelbeke',name:'Harelbeke',zip:'8530'},{label:'8520 Kuurne',name:'Kuurne',zip:'8520'},{label:'8511 Aalbeke (Kortrijk)',name:'Aalbeke (Kortrijk)',zip:'8511'},{label:'8510 Rollegem (Kortrijk)',name:'Rollegem (Kortrijk)',zip:'8510'},{label:'8510 Marke (Kortrijk)',name:'Marke (Kortrijk)',zip:'8510'},{label:'8510 Kooigem (Kortrijk)',name:'Kooigem (Kortrijk)',zip:'8510'},{label:'8510 Bellegem (Kortrijk)',name:'Bellegem (Kortrijk)',zip:'8510'},{label:'8501 Heule (Kortrijk)',name:'Heule (Kortrijk)',zip:'8501'},{label:'8501 Bissegem (Kortrijk)',name:'Bissegem (Kortrijk)',zip:'8501'},{label:'8500 Kortrijk',name:'Kortrijk',zip:'8500'},{label:'8490 Zerkegem (Jabbeke)',name:'Zerkegem (Jabbeke)',zip:'8490'},{label:'8490 Varsenare (Jabbeke)',name:'Varsenare (Jabbeke)',zip:'8490'},{label:'8490 Stalhille (Jabbeke)',name:'Stalhille (Jabbeke)',zip:'8490'},{label:'8490 Snellegem (Jabbeke)',name:'Snellegem (Jabbeke)',zip:'8490'},{label:'8490 Jabbeke',name:'Jabbeke',zip:'8490'},{label:'8480 Ichtegem',name:'Ichtegem',zip:'8480'},{label:'8480 Eernegem (Ichtegem)',name:'Eernegem (Ichtegem)',zip:'8480'},{label:'8480 Bekegem (Ichtegem)',name:'Bekegem (Ichtegem)',zip:'8480'},{label:'8470 Zevekote (Gistel)',name:'Zevekote (Gistel)',zip:'8470'},{label:'8470 Snaaskerke (Gistel)',name:'Snaaskerke (Gistel)',zip:'8470'},{label:'8470 Moere (Gistel)',name:'Moere (Gistel)',zip:'8470'},{label:'8470 Gistel',name:'Gistel',zip:'8470'},{label:'8460 Westkerke (Oudenburg)',name:'Westkerke (Oudenburg)',zip:'8460'},{label:'8460 Roksem (Oudenburg)',name:'Roksem (Oudenburg)',zip:'8460'},{label:'8460 Oudenburg',name:'Oudenburg',zip:'8460'},{label:'8460 Ettelgem (Oudenburg)',name:'Ettelgem (Oudenburg)',zip:'8460'},{label:'8450 Bredene',name:'Bredene',zip:'8450'},{label:'8434 Westende (Middelkerke)',name:'Westende (Middelkerke)',zip:'8434'},{label:'8434 Lombardsijde (Middelkerke)',name:'Lombardsijde (Middelkerke)',zip:'8434'},{label:'8433 Spermalie',name:'Spermalie',zip:'8433'},{label:'8433 Slijpe (Middelkerke)',name:'Slijpe (Middelkerke)',zip:'8433'},{label:'8433 Schore (Middelkerke)',name:'Schore (Middelkerke)',zip:'8433'},{label:'8433 Mannekensvere (Middelkerke)',name:'Mannekensvere (Middelkerke)',zip:'8433'},{label:'8432 Leffinge (Middelkerke)',name:'Leffinge (Middelkerke)',zip:'8432'},{label:'8431 Wilskerke (Middelkerke)',name:'Wilskerke (Middelkerke)',zip:'8431'},{label:'8430 Middelkerke',name:'Middelkerke',zip:'8430'},{label:'8421 Vlissegem (De Haan)',name:'Vlissegem (De Haan)',zip:'8421'},{label:'8420 Wenduine (De Haan)',name:'Wenduine (De Haan)',zip:'8420'},{label:'8420 Klemskerke (De Haan)',name:'Klemskerke (De Haan)',zip:'8420'},{label:'8400 Stene (Oostende)',name:'Stene (Oostende)',zip:'8400'},{label:'8400 Oostende',name:'Oostende',zip:'8400'},{label:'8377 Zuienkerke',name:'Zuienkerke',zip:'8377'},{label:'8377 Nieuwmunster (Zuienkerke)',name:'Nieuwmunster (Zuienkerke)',zip:'8377'},{label:'8377 Meetkerke (Zuienkerke)',name:'Meetkerke (Zuienkerke)',zip:'8377'},{label:'8377 Houtave (Zuienkerke)',name:'Houtave (Zuienkerke)',zip:'8377'},{label:'8370 Uitkerke (Blankenberge)',name:'Uitkerke (Blankenberge)',zip:'8370'},{label:'8370 Blankenberge',name:'Blankenberge',zip:'8370'},{label:'8340 Sijsele (Damme)',name:'Sijsele (Damme)',zip:'8340'},{label:'8340 Moerkerke (Damme)',name:'Moerkerke (Damme)',zip:'8340'},{label:'8340 Lapscheure (Damme)',name:'Lapscheure (Damme)',zip:'8340'},{label:'8340 Hoeke (Damme)',name:'Hoeke (Damme)',zip:'8340'},{label:'8340 Damme',name:'Damme',zip:'8340'},{label:'8301 Heist-Aan-Zee (Knokke-Heist)',name:'Heist-Aan-Zee (Knokke-Heist)',zip:'8301'},{label:'8300 Westkapelle (Knokke-Heist)',name:'Westkapelle (Knokke-Heist)',zip:'8300'},{label:'8300 Knokke-Heist',name:'Knokke-Heist',zip:'8300'},{label:'8300 Knokke (Knokke-Heist)',name:'Knokke (Knokke-Heist)',zip:'8300'},{label:'8211 Aartrijke (Zedelgem)',name:'Aartrijke (Zedelgem)',zip:'8211'},{label:'8210 Zedelgem',name:'Zedelgem',zip:'8210'},{label:'8210 Veldegem (Zedelgem)',name:'Veldegem (Zedelgem)',zip:'8210'},{label:'8210 Loppem (Zedelgem)',name:'Loppem (Zedelgem)',zip:'8210'},{label:'8020 Waardamme (Oostkamp)',name:'Waardamme (Oostkamp)',zip:'8020'},{label:'8020 Ruddervoorde (Oostkamp)',name:'Ruddervoorde (Oostkamp)',zip:'8020'},{label:'8020 Oostkamp',name:'Oostkamp',zip:'8020'},{label:'8020 Hertsberge (Oostkamp)',name:'Hertsberge (Oostkamp)',zip:'8020'},{label:'8380 Zeebrugge (Brugge)',name:'Zeebrugge (Brugge)',zip:'8380'},{label:'8380 Lissewege (Brugge)',name:'Lissewege (Brugge)',zip:'8380'},{label:'8380 Dudzele (Brugge)',name:'Dudzele (Brugge)',zip:'8380'},{label:'8310 Sint-Kruis (Brugge)',name:'Sint-Kruis (Brugge)',zip:'8310'},{label:'8310 Assebroek (Brugge)',name:'Assebroek (Brugge)',zip:'8310'},{label:'8200 Sint-Michiels (Brugge)',name:'Sint-Michiels (Brugge)',zip:'8200'},{label:'8200 Sint-Andries (Brugge)',name:'Sint-Andries (Brugge)',zip:'8200'},{label:'8000 Koolkerke (Brugge)',name:'Koolkerke (Brugge)',zip:'8000'},{label:'8000 Brugge',name:'Brugge',zip:'8000'},{label:'3473 Waanrode (Kortenaken)',name:'Waanrode (Kortenaken)',zip:'3473'},{label:'3472 Kersbeek-Miskom (Kortenaken)',name:'Kersbeek-Miskom (Kortenaken)',zip:'3472'},{label:'3471 Hoeleden (Kortenaken)',name:'Hoeleden (Kortenaken)',zip:'3471'},{label:'3470 Ransberg (Kortenaken)',name:'Ransberg (Kortenaken)',zip:'3470'},{label:'3470 Kortenaken',name:'Kortenaken',zip:'3470'},{label:'3461 Molenbeek-Wersbeek (Bekkevoort)',name:'Molenbeek-Wersbeek (Bekkevoort)',zip:'3461'},{label:'3460 Bekkevoort',name:'Bekkevoort',zip:'3460'},{label:'3460 Assent (Bekkevoort)',name:'Assent (Bekkevoort)',zip:'3460'},{label:'3454 Rummen (Geetbets)',name:'Rummen (Geetbets)',zip:'3454'},{label:'3450 Grazen (Geetbets)',name:'Grazen (Geetbets)',zip:'3450'},{label:'3450 Geetbets',name:'Geetbets',zip:'3450'},{label:'3440 Zoutleeuw',name:'Zoutleeuw',zip:'3440'},{label:'3440 Helen-Bos (Zoutleeuw)',name:'Helen-Bos (Zoutleeuw)',zip:'3440'},{label:'3440 Halle-Booienhoven (Zoutleeuw)',name:'Halle-Booienhoven (Zoutleeuw)',zip:'3440'},{label:'3440 Dormaal (Zoutleeuw)',name:'Dormaal (Zoutleeuw)',zip:'3440'},{label:'3440 Budingen (Zoutleeuw)',name:'Budingen (Zoutleeuw)',zip:'3440'},{label:'3404 Neerlanden (Landen)',name:'Neerlanden (Landen)',zip:'3404'},{label:'3404 Attenhoven (Landen)',name:'Attenhoven (Landen)',zip:'3404'},{label:'3401 Wezeren (Landen)',name:'Wezeren (Landen)',zip:'3401'},{label:'3401 Walshoutem (Landen)',name:'Walshoutem (Landen)',zip:'3401'},{label:'3401 Walsbets (Landen)',name:'Walsbets (Landen)',zip:'3401'},{label:'3401 Waasmont (Landen)',name:'Waasmont (Landen)',zip:'3401'},{label:'3400 Wange (Landen)',name:'Wange (Landen)',zip:'3400'},{label:'3400 Rumsdorp (Landen)',name:'Rumsdorp (Landen)',zip:'3400'},{label:'3400 Overwinden (Landen)',name:'Overwinden (Landen)',zip:'3400'},{label:'3400 Neerwinden (Landen)',name:'Neerwinden (Landen)',zip:'3400'},{label:'3400 Landen',name:'Landen',zip:'3400'},{label:'3400 Laar (Landen)',name:'Laar (Landen)',zip:'3400'},{label:'3400 Ezemaal (Landen)',name:'Ezemaal (Landen)',zip:'3400'},{label:'3400 Eliksem (Landen)',name:'Eliksem (Landen)',zip:'3400'},{label:'3391 Meensel-Kiezegem (Tielt-Winge)',name:'Meensel-Kiezegem (Tielt-Winge)',zip:'3391'},{label:'3390 Tielt-Winge',name:'Tielt-Winge',zip:'3390'},{label:'3390 Sint-Joris-Winge (Tielt-Winge)',name:'Sint-Joris-Winge (Tielt-Winge)',zip:'3390'},{label:'3390 Houwaart (Tielt-Winge)',name:'Houwaart (Tielt-Winge)',zip:'3390'},{label:'3384 Attenrode (Glabbeek)',name:'Attenrode (Glabbeek)',zip:'3384'},{label:'3380 Bunsbeek (Glabbeek)',name:'Bunsbeek (Glabbeek)',zip:'3380'},{label:'3370 Willebringen (Boutersem)',name:'Willebringen (Boutersem)',zip:'3370'},{label:'3370 Vertrijk (Boutersem)',name:'Vertrijk (Boutersem)',zip:'3370'},{label:'3370 Roosbeek (Boutersem)',name:'Roosbeek (Boutersem)',zip:'3370'},{label:'3370 Neervelp (Boutersem)',name:'Neervelp (Boutersem)',zip:'3370'},{label:'3370 Kerkom (Boutersem)',name:'Kerkom (Boutersem)',zip:'3370'},{label:'3370 Boutersem',name:'Boutersem',zip:'3370'},{label:'3360 Opvelp (Bierbeek)',name:'Opvelp (Bierbeek)',zip:'3360'},{label:'3360 Lovenjoel (Bierbeek)',name:'Lovenjoel (Bierbeek)',zip:'3360'},{label:'3360 Korbeek-Lo (Bierbeek)',name:'Korbeek-Lo (Bierbeek)',zip:'3360'},{label:'3360 Bierbeek',name:'Bierbeek',zip:'3360'},{label:'3350 Wommersom (Linter)',name:'Wommersom (Linter)',zip:'3350'},{label:'3350 Overhespen (Linter)',name:'Overhespen (Linter)',zip:'3350'},{label:'3350 Orsmaal-Gussenhoven (Linter)',name:'Orsmaal-Gussenhoven (Linter)',zip:'3350'},{label:'3350 Neerlinter (Linter)',name:'Neerlinter (Linter)',zip:'3350'},{label:'3350 Neerhespen (Linter)',name:'Neerhespen (Linter)',zip:'3350'},{label:'3350 Melkwezer (Linter)',name:'Melkwezer (Linter)',zip:'3350'},{label:'3350 Linter',name:'Linter',zip:'3350'},{label:'3350 Drieslinter (Linter)',name:'Drieslinter (Linter)',zip:'3350'},{label:'3321 Outgaarden (Hoegaarden)',name:'Outgaarden (Hoegaarden)',zip:'3321'},{label:'3320 Hoegaarden',name:'Hoegaarden',zip:'3320'},{label:'3300 Vissenaken (Tienen)',name:'Vissenaken (Tienen)',zip:'3300'},{label:'3300 Tienen',name:'Tienen',zip:'3300'},{label:'3300 Oplinter (Tienen)',name:'Oplinter (Tienen)',zip:'3300'},{label:'3300 Oorbeek (Tienen)',name:'Oorbeek (Tienen)',zip:'3300'},{label:'3300 Kumtich (Tienen)',name:'Kumtich (Tienen)',zip:'3300'},{label:'3300 Hakendover (Tienen)',name:'Hakendover (Tienen)',zip:'3300'},{label:'3300 Goetsenhoven (Tienen)',name:'Goetsenhoven (Tienen)',zip:'3300'},{label:'3300 Bost (Tienen)',name:'Bost (Tienen)',zip:'3300'},{label:'3294 Molenstede (Diest)',name:'Molenstede (Diest)',zip:'3294'},{label:'3293 Kaggevinne (Diest)',name:'Kaggevinne (Diest)',zip:'3293'},{label:'3290 Webbekom (Diest)',name:'Webbekom (Diest)',zip:'3290'},{label:'3290 Schaffen (Diest)',name:'Schaffen (Diest)',zip:'3290'},{label:'3290 Diest',name:'Diest',zip:'3290'},{label:'3272 Testelt (Scherpenheuvel-Zichem)',name:'Testelt (Scherpenheuvel-Zichem)',zip:'3272'},{label:'3272 Messelbroek (Scherpenheuvel-Zichem)',name:'Messelbroek (Scherpenheuvel-Zichem)',zip:'3272'},{label:'3271 Zichem (Scherpenheuvel-Zichem)',name:'Zichem (Scherpenheuvel-Zichem)',zip:'3271'},{label:'3271 Averbode (Scherpenheuvel-Zichem)',name:'Averbode (Scherpenheuvel-Zichem)',zip:'3271'},{label:'3270 Scherpenheuvel (Scherpenheuvel-Zichem)',name:'Scherpenheuvel (Scherpenheuvel-Zichem)',zip:'3270'},{label:'3221 Nieuwrode (Holsbeek)',name:'Nieuwrode (Holsbeek)',zip:'3221'},{label:'3220 Sint-Pieters-Rode (Holsbeek)',name:'Sint-Pieters-Rode (Holsbeek)',zip:'3220'},{label:'3220 Holsbeek',name:'Holsbeek',zip:'3220'},{label:'3212 Pellenberg (Lubbeek)',name:'Pellenberg (Lubbeek)',zip:'3212'},{label:'3211 Binkom (Lubbeek)',name:'Binkom (Lubbeek)',zip:'3211'},{label:'3210 Lubbeek',name:'Lubbeek',zip:'3210'},{label:'3210 Linden (Lubbeek)',name:'Linden (Lubbeek)',zip:'3210'},{label:'3202 Rillaar (Aarschot)',name:'Rillaar (Aarschot)',zip:'3202'},{label:'3201 Langdorp (Aarschot)',name:'Langdorp (Aarschot)',zip:'3201'},{label:'3200 Gelrode (Aarschot)',name:'Gelrode (Aarschot)',zip:'3200'},{label:'3200 Aarschot',name:'Aarschot',zip:'3200'},{label:'3191 Hever (Boortmeerbeek)',name:'Hever (Boortmeerbeek)',zip:'3191'},{label:'3190 Boortmeerbeek',name:'Boortmeerbeek',zip:'3190'},{label:'3150 Wespelaar (Haacht)',name:'Wespelaar (Haacht)',zip:'3150'},{label:'3150 Tildonk (Haacht)',name:'Tildonk (Haacht)',zip:'3150'},{label:'3150 Haacht',name:'Haacht',zip:'3150'},{label:'3140 Keerbergen',name:'Keerbergen',zip:'3140'},{label:'3130 Betekom (Begijnendijk)',name:'Betekom (Begijnendijk)',zip:'3130'},{label:'3130 Begijnendijk',name:'Begijnendijk',zip:'3130'},{label:'3128 Baal (Tremelo)',name:'Baal (Tremelo)',zip:'3128'},{label:'3120 Tremelo',name:'Tremelo',zip:'3120'},{label:'3118 Werchter (Rotselaar)',name:'Werchter (Rotselaar)',zip:'3118'},{label:'3111 Wezemaal (Rotselaar)',name:'Wezemaal (Rotselaar)',zip:'3111'},{label:'3110 Rotselaar',name:'Rotselaar',zip:'3110'},{label:'3090 Overijse',name:'Overijse',zip:'3090'},{label:'3080 Vossem (Tervuren)',name:'Vossem (Tervuren)',zip:'3080'},{label:'3080 Tervuren',name:'Tervuren',zip:'3080'},{label:'3080 Duisburg (Tervuren)',name:'Duisburg (Tervuren)',zip:'3080'},{label:'3078 Meerbeek (Kortenberg)',name:'Meerbeek (Kortenberg)',zip:'3078'},{label:'3078 Everberg (Kortenberg)',name:'Everberg (Kortenberg)',zip:'3078'},{label:'3071 Erps-Kwerps (Kortenberg)',name:'Erps-Kwerps (Kortenberg)',zip:'3071'},{label:'3070 Kortenberg',name:'Kortenberg',zip:'3070'},{label:'3061 Leefdaal (Bertem)',name:'Leefdaal (Bertem)',zip:'3061'},{label:'3060 Korbeek-Dijle (Bertem)',name:'Korbeek-Dijle (Bertem)',zip:'3060'},{label:'3060 Bertem',name:'Bertem',zip:'3060'},{label:'3054 Vaalbeek (Oud-Heverlee)',name:'Vaalbeek (Oud-Heverlee)',zip:'3054'},{label:'3053 Haasrode (Oud-Heverlee)',name:'Haasrode (Oud-Heverlee)',zip:'3053'},{label:'3052 Blanden (Oud-Heverlee)',name:'Blanden (Oud-Heverlee)',zip:'3052'},{label:'3051 Sint-Joris-Weert (Oud-Heverlee)',name:'Sint-Joris-Weert (Oud-Heverlee)',zip:'3051'},{label:'3050 Oud-Heverlee',name:'Oud-Heverlee',zip:'3050'},{label:'3040 Sint-Agatha-Rode (Huldenberg)',name:'Sint-Agatha-Rode (Huldenberg)',zip:'3040'},{label:'3040 Ottenburg (Huldenberg)',name:'Ottenburg (Huldenberg)',zip:'3040'},{label:'3040 Neerijse (Huldenberg)',name:'Neerijse (Huldenberg)',zip:'3040'},{label:'3040 Loonbeek (Huldenberg)',name:'Loonbeek (Huldenberg)',zip:'3040'},{label:'3040 Huldenberg',name:'Huldenberg',zip:'3040'},{label:'3020 Winksele (Herent)',name:'Winksele (Herent)',zip:'3020'},{label:'3020 Veltem-Beisem (Herent)',name:'Veltem-Beisem (Herent)',zip:'3020'},{label:'3020 Herent',name:'Herent',zip:'3020'},{label:'3012 Wilsele (Leuven)',name:'Wilsele (Leuven)',zip:'3012'},{label:'3010 Kessel-Lo (Leuven)',name:'Kessel-Lo (Leuven)',zip:'3010'},{label:'3001 Heverlee (Leuven)',name:'Heverlee (Leuven)',zip:'3001'},{label:'3000 Leuven',name:'Leuven',zip:'3000'},{label:'1982 Weerde (Zemst)',name:'Weerde (Zemst)',zip:'1982'},{label:'1982 Elewijt (Zemst)',name:'Elewijt (Zemst)',zip:'1982'},{label:'1980 Zemst',name:'Zemst',zip:'1980'},{label:'1980 Eppegem (Zemst)',name:'Eppegem (Zemst)',zip:'1980'},{label:'1970 Wezembeek-Oppem',name:'Wezembeek-Oppem',zip:'1970'},{label:'1950 Kraainem',name:'Kraainem',zip:'1950'},{label:'1933 Sterrebeek (Zaventem)',name:'Sterrebeek (Zaventem)',zip:'1933'},{label:'1932 Sint-Stevens-Woluwe (Zaventem)',name:'Sint-Stevens-Woluwe (Zaventem)',zip:'1932'},{label:'1930 Zaventem',name:'Zaventem',zip:'1930'},{label:'1930 Nossegem (Zaventem)',name:'Nossegem (Zaventem)',zip:'1930'},{label:'1910 Nederokkerzeel (Kampenhout)',name:'Nederokkerzeel (Kampenhout)',zip:'1910'},{label:'1910 Kampenhout',name:'Kampenhout',zip:'1910'},{label:'1910 Buken (Kampenhout)',name:'Buken (Kampenhout)',zip:'1910'},{label:'1880 Ramsdonk (Kapelle-Op-Den-Bos)',name:'Ramsdonk (Kapelle-Op-Den-Bos)',zip:'1880'},{label:'1880 Nieuwenrode (Kapelle-Op-Den-Bos)',name:'Nieuwenrode (Kapelle-Op-Den-Bos)',zip:'1880'},{label:'1880 Kapelle-op-den-Bos',name:'Kapelle-op-den-Bos',zip:'1880'},{label:'1861 Wolvertem (Meise)',name:'Wolvertem (Meise)',zip:'1861'},{label:'1860 Meise',name:'Meise',zip:'1860'},{label:'1853 Strombeek-Bever (Grimbergen)',name:'Strombeek-Bever (Grimbergen)',zip:'1853'},{label:'1852 Beigem (Grimbergen)',name:'Beigem (Grimbergen)',zip:'1852'},{label:'1851 Humbeek (Grimbergen)',name:'Humbeek (Grimbergen)',zip:'1851'},{label:'1850 Grimbergen',name:'Grimbergen',zip:'1850'},{label:'1840 Steenhuffel (Londerzeel)',name:'Steenhuffel (Londerzeel)',zip:'1840'},{label:'1840 Malderen (Londerzeel)',name:'Malderen (Londerzeel)',zip:'1840'},{label:'1840 Londerzeel',name:'Londerzeel',zip:'1840'},{label:'1831 Diegem (Machelen)',name:'Diegem (Machelen)',zip:'1831'},{label:'1820 Steenokkerzeel',name:'Steenokkerzeel',zip:'1820'},{label:'1820 Perk (Steenokkerzeel)',name:'Perk (Steenokkerzeel)',zip:'1820'},{label:'1820 Melsbroek (Steenokkerzeel)',name:'Melsbroek (Steenokkerzeel)',zip:'1820'},{label:'1800 Vilvoorde',name:'Vilvoorde',zip:'1800'},{label:'1800 Peutie (Vilvoorde)',name:'Peutie (Vilvoorde)',zip:'1800'},{label:'1790 Teralfene (Affligem)',name:'Teralfene (Affligem)',zip:'1790'},{label:'1790 Hekelgem (Affligem)',name:'Hekelgem (Affligem)',zip:'1790'},{label:'1790 Essene (Affligem)',name:'Essene (Affligem)',zip:'1790'},{label:'1790 Affligem',name:'Affligem',zip:'1790'},{label:'1785 Merchtem',name:'Merchtem',zip:'1785'},{label:'1785 Brussegem (Merchtem)',name:'Brussegem (Merchtem)',zip:'1785'},{label:'1780 Wemmel',name:'Wemmel',zip:'1780'},{label:'1770 Liedekerke',name:'Liedekerke',zip:'1770'},{label:'1761 Borchtlombeek (Roosdaal)',name:'Borchtlombeek (Roosdaal)',zip:'1761'},{label:'1760 Strijtem (Roosdaal)',name:'Strijtem (Roosdaal)',zip:'1760'},{label:'1760 Roosdaal',name:'Roosdaal',zip:'1760'},{label:'1760 Pamel (Roosdaal)',name:'Pamel (Roosdaal)',zip:'1760'},{label:'1760 Onze-Lieve-Vrouw-Lombeek (Roosdaal)',name:'Onze-Lieve-Vrouw-Lombeek (Roosdaal)',zip:'1760'},{label:'1755 Oetingen (Gooik)',name:'Oetingen (Gooik)',zip:'1755'},{label:'1755 Leerbeek (Gooik)',name:'Leerbeek (Gooik)',zip:'1755'},{label:'1755 Kester (Gooik)',name:'Kester (Gooik)',zip:'1755'},{label:'1755 Gooik',name:'Gooik',zip:'1755'},{label:'1750 Sint-Martens-Lennik (Lennik)',name:'Sint-Martens-Lennik (Lennik)',zip:'1750'},{label:'1750 Sint-Kwintens-Lennik (Lennik)',name:'Sint-Kwintens-Lennik (Lennik)',zip:'1750'},{label:'1750 Lennik',name:'Lennik',zip:'1750'},{label:'1750 Gaasbeek (Lennik)',name:'Gaasbeek (Lennik)',zip:'1750'},{label:'1745 Opwijk',name:'Opwijk',zip:'1745'},{label:'1745 Mazenzele (Opwijk)',name:'Mazenzele (Opwijk)',zip:'1745'},{label:'1742 Sint-Katherina-Lombeek (Ternat)',name:'Sint-Katherina-Lombeek (Ternat)',zip:'1742'},{label:'1741 Wambeek (Ternat)',name:'Wambeek (Ternat)',zip:'1741'},{label:'1740 Ternat',name:'Ternat',zip:'1740'},{label:'1731 Zellik (Asse)',name:'Zellik (Asse)',zip:'1731'},{label:'1731 Relegem (Asse)',name:'Relegem (Asse)',zip:'1731'},{label:'1730 Mollem (Asse)',name:'Mollem (Asse)',zip:'1730'},{label:'1730 Kobbegem (Asse)',name:'Kobbegem (Asse)',zip:'1730'},{label:'1730 Bekkerzeel (Asse)',name:'Bekkerzeel (Asse)',zip:'1730'},{label:'1730 Asse',name:'Asse',zip:'1730'},{label:'1703 Schepdaal (Dilbeek)',name:'Schepdaal (Dilbeek)',zip:'1703'},{label:'1702 Groot-Bijgaarden (Dilbeek)',name:'Groot-Bijgaarden (Dilbeek)',zip:'1702'},{label:'1701 Itterbeek (Dilbeek)',name:'Itterbeek (Dilbeek)',zip:'1701'},{label:'1700 Sint-Ulriks-Kapelle (Dilbeek)',name:'Sint-Ulriks-Kapelle (Dilbeek)',zip:'1700'},{label:'1700 Sint-Martens-Bodegem (Dilbeek)',name:'Sint-Martens-Bodegem (Dilbeek)',zip:'1700'},{label:'1700 Dilbeek',name:'Dilbeek',zip:'1700'},{label:'1674 Bellingen (Pepingen)',name:'Bellingen (Pepingen)',zip:'1674'},{label:'1673 Beert (Pepingen)',name:'Beert (Pepingen)',zip:'1673'},{label:'1671 Elingen (Pepingen)',name:'Elingen (Pepingen)',zip:'1671'},{label:'1670 Pepingen',name:'Pepingen',zip:'1670'},{label:'1670 Heikruis (Pepingen)',name:'Heikruis (Pepingen)',zip:'1670'},{label:'1670 Bogaarden (Pepingen)',name:'Bogaarden (Pepingen)',zip:'1670'},{label:'1654 Huizingen (Beersel)',name:'Huizingen (Beersel)',zip:'1654'},{label:'1653 Dworp (Beersel)',name:'Dworp (Beersel)',zip:'1653'},{label:'1652 Alsemberg (Beersel)',name:'Alsemberg (Beersel)',zip:'1652'},{label:'1651 Lot (Beersel)',name:'Lot (Beersel)',zip:'1651'},{label:'1650 Beersel',name:'Beersel',zip:'1650'},{label:'1630 Linkebeek',name:'Linkebeek',zip:'1630'},{label:'1620 Drogenbos',name:'Drogenbos',zip:'1620'},{label:'1602 Vlezenbeek (Sint-Pieters-Leeuw)',name:'Vlezenbeek (Sint-Pieters-Leeuw)',zip:'1602'},{label:'1600 Sint-Pieters-Leeuw',name:'Sint-Pieters-Leeuw',zip:'1600'},{label:'1600 Sint-Laureins-Berchem (Sint-Pieters-Leeuw)',name:'Sint-Laureins-Berchem (Sint-Pieters-Leeuw)',zip:'1600'},{label:'1600 Oudenaken (Sint-Pieters-Leeuw)',name:'Oudenaken (Sint-Pieters-Leeuw)',zip:'1600'},{label:'1570 Vollezele (Galmaarden)',name:'Vollezele (Galmaarden)',zip:'1570'},{label:'1570 Tollembeek (Galmaarden)',name:'Tollembeek (Galmaarden)',zip:'1570'},{label:'1570 Galmaarden',name:'Galmaarden',zip:'1570'},{label:'1560 Hoeilaart',name:'Hoeilaart',zip:'1560'},{label:'1540 Herne',name:'Herne',zip:'1540'},{label:'1540 Herfelingen (Herne)',name:'Herfelingen (Herne)',zip:'1540'},{label:'1502 Lembeek (Halle)',name:'Lembeek (Halle)',zip:'1502'},{label:'1501 Buizingen (Halle)',name:'Buizingen (Halle)',zip:'1501'},{label:'1500 Halle',name:'Halle',zip:'1500'},{label:'9992 Middelburg (Maldegem)',name:'Middelburg (Maldegem)',zip:'9992'},{label:'9991 Adegem (Maldegem)',name:'Adegem (Maldegem)',zip:'9991'},{label:'9990 Maldegem',name:'Maldegem',zip:'9990'},{label:'9988 Watervliet (Sint-Laureins)',name:'Watervliet (Sint-Laureins)',zip:'9988'},{label:'9988 Waterland-Oudeman (Sint-Laureins)',name:'Waterland-Oudeman (Sint-Laureins)',zip:'9988'},{label:'9982 Sint-Jan-In-Eremo (Sint-Laureins)',name:'Sint-Jan-In-Eremo (Sint-Laureins)',zip:'9982'},{label:'9981 Sint-Margriete (Sint-Laureins)',name:'Sint-Margriete (Sint-Laureins)',zip:'9981'},{label:'9980 Sint-Laureins',name:'Sint-Laureins',zip:'9980'},{label:'9971 Lembeke (Kaprijke)',name:'Lembeke (Kaprijke)',zip:'9971'},{label:'9970 Kaprijke',name:'Kaprijke',zip:'9970'},{label:'9968 Oosteeklo (Assenede)',name:'Oosteeklo (Assenede)',zip:'9968'},{label:'9968 Bassevelde (Assenede)',name:'Bassevelde (Assenede)',zip:'9968'},{label:'9961 Boekhoute (Assenede)',name:'Boekhoute (Assenede)',zip:'9961'},{label:'9960 Assenede',name:'Assenede',zip:'9960'},{label:'9950 Waarschoot (Lievegem)',name:'Waarschoot (Lievegem)',zip:'9950'},{label:'9940 Sleidinge (Evergem)',name:'Sleidinge (Evergem)',zip:'9940'},{label:'9940 Kluizen (Evergem)',name:'Kluizen (Evergem)',zip:'9940'},{label:'9940 Evergem',name:'Evergem',zip:'9940'},{label:'9940 Ertvelde (Evergem)',name:'Ertvelde (Evergem)',zip:'9940'},{label:'9932 Ronsele (Lievegem)',name:'Ronsele (Lievegem)',zip:'9932'},{label:'9931 Oostwinkel (Lievegem)',name:'Oostwinkel (Lievegem)',zip:'9931'},{label:'9930 Zomergem (Lievegem)',name:'Zomergem (Lievegem)',zip:'9930'},{label:'9921 Vinderhoute (Lievegem)',name:'Vinderhoute (Lievegem)',zip:'9921'},{label:'9920 Lovendegem (Lievegem)',name:'Lovendegem (Lievegem)',zip:'9920'},{label:'9910 Ursel (Aalter)',name:'Ursel (Aalter)',zip:'9910'},{label:'9910 Knesselare (Aalter)',name:'Knesselare (Aalter)',zip:'9910'},{label:'9900 Eeklo',name:'Eeklo',zip:'9900'},{label:'9890 Vurste (Gavere)',name:'Vurste (Gavere)',zip:'9890'},{label:'9890 Semmerzake (Gavere)',name:'Semmerzake (Gavere)',zip:'9890'},{label:'9890 Gavere',name:'Gavere',zip:'9890'},{label:'9890 Dikkelvenne (Gavere)',name:'Dikkelvenne (Gavere)',zip:'9890'},{label:'9890 Baaigem (Gavere)',name:'Baaigem (Gavere)',zip:'9890'},{label:'9890 Asper (Gavere)',name:'Asper (Gavere)',zip:'9890'},{label:'9881 Bellem (Aalter)',name:'Bellem (Aalter)',zip:'9881'},{label:'9880 Poeke (Aalter)',name:'Poeke (Aalter)',zip:'9880'},{label:'9880 Lotenhulle (Aalter)',name:'Lotenhulle (Aalter)',zip:'9880'},{label:'9880 Aalter',name:'Aalter',zip:'9880'},{label:'9870 Zulte',name:'Zulte',zip:'9870'},{label:'9870 Olsene (Zulte)',name:'Olsene (Zulte)',zip:'9870'},{label:'9860 Scheldewindeke (Oosterzele)',name:'Scheldewindeke (Oosterzele)',zip:'9860'},{label:'9860 Oosterzele',name:'Oosterzele',zip:'9860'},{label:'9860 Moortsele (Oosterzele)',name:'Moortsele (Oosterzele)',zip:'9860'},{label:'9860 Landskouter (Oosterzele)',name:'Landskouter (Oosterzele)',zip:'9860'},{label:'9860 Gijzenzele (Oosterzele)',name:'Gijzenzele (Oosterzele)',zip:'9860'},{label:'9860 Balegem (Oosterzele)',name:'Balegem (Oosterzele)',zip:'9860'},{label:'9850 Vosselare (Deinze)',name:'Vosselare (Deinze)',zip:'9850'},{label:'9850 Poesele (Deinze)',name:'Poesele (Deinze)',zip:'9850'},{label:'9850 Nevele (Deinze)',name:'Nevele (Deinze)',zip:'9850'},{label:'9850 Merendree (Deinze)',name:'Merendree (Deinze)',zip:'9850'},{label:'9850 Landegem (Deinze)',name:'Landegem (Deinze)',zip:'9850'},{label:'9850 Hansbeke (Deinze)',name:'Hansbeke (Deinze)',zip:'9850'},{label:'9840 Zevergem (De Pinte)',name:'Zevergem (De Pinte)',zip:'9840'},{label:'9831 Deurle (Sint-Martens-Latem)',name:'Deurle (Sint-Martens-Latem)',zip:'9831'},{label:'9830 Sint-Martens-Latem',name:'Sint-Martens-Latem',zip:'9830'},{label:'9820 Schelderode (Merelbeke)',name:'Schelderode (Merelbeke)',zip:'9820'},{label:'9820 Munte (Merelbeke)',name:'Munte (Merelbeke)',zip:'9820'},{label:'9820 Merelbeke',name:'Merelbeke',zip:'9820'},{label:'9820 Melsen (Merelbeke)',name:'Melsen (Merelbeke)',zip:'9820'},{label:'9820 Lemberge (Merelbeke)',name:'Lemberge (Merelbeke)',zip:'9820'},{label:'9820 Bottelare (Merelbeke)',name:'Bottelare (Merelbeke)',zip:'9820'},{label:'9810 Nazareth',name:'Nazareth',zip:'9810'},{label:'9810 Eke (Nazareth)',name:'Eke (Nazareth)',zip:'9810'},{label:'9800 Zeveren (Deinze)',name:'Zeveren (Deinze)',zip:'9800'},{label:'9800 Wontergem (Deinze)',name:'Wontergem (Deinze)',zip:'9800'},{label:'9800 Vinkt (Deinze)',name:'Vinkt (Deinze)',zip:'9800'},{label:'9800 Sint-Martens-Leerne (Deinze)',name:'Sint-Martens-Leerne (Deinze)',zip:'9800'},{label:'9800 Petegem-Aan-De-Leie (Deinze)',name:'Petegem-Aan-De-Leie (Deinze)',zip:'9800'},{label:'9800 Meigem (Deinze)',name:'Meigem (Deinze)',zip:'9800'},{label:'9800 Grammene (Deinze)',name:'Grammene (Deinze)',zip:'9800'},{label:'9800 Gottem (Deinze)',name:'Gottem (Deinze)',zip:'9800'},{label:'9800 Deinze',name:'Deinze',zip:'9800'},{label:'9800 Bachte-Maria-Leerne (Deinze)',name:'Bachte-Maria-Leerne (Deinze)',zip:'9800'},{label:'9800 Astene (Deinze)',name:'Astene (Deinze)',zip:'9800'},{label:'9790 Wortegem-Petegem',name:'Wortegem-Petegem',zip:'9790'},{label:'9790 Wortegem (Wortegem-Petegem)',name:'Wortegem (Wortegem-Petegem)',zip:'9790'},{label:'9790 Petegem-Aan-De-Schelde (Wortegem-Petegem)',name:'Petegem-Aan-De-Schelde (Wortegem-Petegem)',zip:'9790'},{label:'9790 Moregem (Wortegem-Petegem)',name:'Moregem (Wortegem-Petegem)',zip:'9790'},{label:'9790 Elsegem (Wortegem-Petegem)',name:'Elsegem (Wortegem-Petegem)',zip:'9790'},{label:'9772 Wannegem-Lede (Kruisem)',name:'Wannegem-Lede (Kruisem)',zip:'9772'},{label:'9771 Nokere (Kruisem)',name:'Nokere (Kruisem)',zip:'9771'},{label:'9770 Kruishoutem (Kruisem)',name:'Kruishoutem (Kruisem)',zip:'9770'},{label:'9750 Zingem (Kruisem)',name:'Zingem (Kruisem)',zip:'9750'},{label:'9750 Ouwegem (Kruisem)',name:'Ouwegem (Kruisem)',zip:'9750'},{label:'9750 Huise (Kruisem)',name:'Huise (Kruisem)',zip:'9750'},{label:'9700 Welden (Oudenaarde)',name:'Welden (Oudenaarde)',zip:'9700'},{label:'9700 Volkegem (Oudenaarde)',name:'Volkegem (Oudenaarde)',zip:'9700'},{label:'9700 Oudenaarde',name:'Oudenaarde',zip:'9700'},{label:'9700 Nederename (Oudenaarde)',name:'Nederename (Oudenaarde)',zip:'9700'},{label:'9700 Mullem (Oudenaarde)',name:'Mullem (Oudenaarde)',zip:'9700'},{label:'9700 Melden (Oudenaarde)',name:'Melden (Oudenaarde)',zip:'9700'},{label:'9700 Mater (Oudenaarde)',name:'Mater (Oudenaarde)',zip:'9700'},{label:'9700 Leupegem (Oudenaarde)',name:'Leupegem (Oudenaarde)',zip:'9700'},{label:'9700 Heurne (Oudenaarde)',name:'Heurne (Oudenaarde)',zip:'9700'},{label:'9700 Ename (Oudenaarde)',name:'Ename (Oudenaarde)',zip:'9700'},{label:'9700 Eine (Oudenaarde)',name:'Eine (Oudenaarde)',zip:'9700'},{label:'9700 Edelare (Oudenaarde)',name:'Edelare (Oudenaarde)',zip:'9700'},{label:'9700 Bevere (Oudenaarde)',name:'Bevere (Oudenaarde)',zip:'9700'},{label:'9690 Zulzeke (Kluisbergen)',name:'Zulzeke (Kluisbergen)',zip:'9690'},{label:'9690 Ruien (Kluisbergen)',name:'Ruien (Kluisbergen)',zip:'9690'},{label:'9690 Kluisbergen',name:'Kluisbergen',zip:'9690'},{label:'9688 Schorisse (Maarkedal)',name:'Schorisse (Maarkedal)',zip:'9688'},{label:'9681 Nukerke (Maarkedal)',name:'Nukerke (Maarkedal)',zip:'9681'},{label:'9680 Maarke-Kerkem (Maarkedal)',name:'Maarke-Kerkem (Maarkedal)',zip:'9680'},{label:'9680 Maarkedal',name:'Maarkedal',zip:'9680'},{label:'9680 Etikhove (Maarkedal)',name:'Etikhove (Maarkedal)',zip:'9680'},{label:'9667 Sint-Maria-Horebeke (Horebeke)',name:'Sint-Maria-Horebeke (Horebeke)',zip:'9667'},{label:'9667 Sint-Kornelis-Horebeke (Horebeke)',name:'Sint-Kornelis-Horebeke (Horebeke)',zip:'9667'},{label:'9667 Horebeke',name:'Horebeke',zip:'9667'},{label:'9661 Parike (Brakel)',name:'Parike (Brakel)',zip:'9661'},{label:'9660 Zegelsem (Brakel)',name:'Zegelsem (Brakel)',zip:'9660'},{label:'9660 Opbrakel (Brakel)',name:'Opbrakel (Brakel)',zip:'9660'},{label:'9660 Nederbrakel (Brakel)',name:'Nederbrakel (Brakel)',zip:'9660'},{label:'9660 Michelbeke (Brakel)',name:'Michelbeke (Brakel)',zip:'9660'},{label:'9660 Everbeek (Brakel)',name:'Everbeek (Brakel)',zip:'9660'},{label:'9660 Elst (Brakel)',name:'Elst (Brakel)',zip:'9660'},{label:'9660 Brakel',name:'Brakel',zip:'9660'},{label:'9636 Nederzwalm-Hermelgem (Zwalm)',name:'Nederzwalm-Hermelgem (Zwalm)',zip:'9636'},{label:'9630 Zwalm',name:'Zwalm',zip:'9630'},{label:'9630 Sint-Maria-Latem (Zwalm)',name:'Sint-Maria-Latem (Zwalm)',zip:'9630'},{label:'9630 Sint-Denijs-Boekel (Zwalm)',name:'Sint-Denijs-Boekel (Zwalm)',zip:'9630'},{label:'9630 Sint-Blasius-Boekel (Zwalm)',name:'Sint-Blasius-Boekel (Zwalm)',zip:'9630'},{label:'9630 Rozebeke (Zwalm)',name:'Rozebeke (Zwalm)',zip:'9630'},{label:'9630 Roborst (Zwalm)',name:'Roborst (Zwalm)',zip:'9630'},{label:'9630 Paulatem (Zwalm)',name:'Paulatem (Zwalm)',zip:'9630'},{label:'9630 Munkzwalm (Zwalm)',name:'Munkzwalm (Zwalm)',zip:'9630'},{label:'9630 Meilegem (Zwalm)',name:'Meilegem (Zwalm)',zip:'9630'},{label:'9630 Hundelgem (Zwalm)',name:'Hundelgem (Zwalm)',zip:'9630'},{label:'9630 Dikkele (Zwalm)',name:'Dikkele (Zwalm)',zip:'9630'},{label:'9630 Beerlegem (Zwalm)',name:'Beerlegem (Zwalm)',zip:'9630'},{label:'9620 Zottegem',name:'Zottegem',zip:'9620'},{label:'9620 Velzeke-Ruddershove (Zottegem)',name:'Velzeke-Ruddershove (Zottegem)',zip:'9620'},{label:'9620 Strijpen (Zottegem)',name:'Strijpen (Zottegem)',zip:'9620'},{label:'9620 Sint-Goriks-Oudenhove (Zottegem)',name:'Sint-Goriks-Oudenhove (Zottegem)',zip:'9620'},{label:'9620 Leeuwergem (Zottegem)',name:'Leeuwergem (Zottegem)',zip:'9620'},{label:'9620 Grotenberge (Zottegem)',name:'Grotenberge (Zottegem)',zip:'9620'},{label:'9620 Godveerdegem (Zottegem)',name:'Godveerdegem (Zottegem)',zip:'9620'},{label:'9620 Erwetegem (Zottegem)',name:'Erwetegem (Zottegem)',zip:'9620'},{label:'9620 Elene (Zottegem)',name:'Elene (Zottegem)',zip:'9620'},{label:'9690 Kwaremont (Kluisbergen)',name:'Kwaremont (Kluisbergen)',zip:'9690'},{label:'9572 Sint-Martens-Lierde (Lierde)',name:'Sint-Martens-Lierde (Lierde)',zip:'9572'},{label:'9571 Hemelveerdegem (Lierde)',name:'Hemelveerdegem (Lierde)',zip:'9571'},{label:'9570 Sint-Maria-Lierde (Lierde)',name:'Sint-Maria-Lierde (Lierde)',zip:'9570'},{label:'9570 Lierde',name:'Lierde',zip:'9570'},{label:'9570 Deftinge (Lierde)',name:'Deftinge (Lierde)',zip:'9570'},{label:'9552 Borsbeke (Herzele)',name:'Borsbeke (Herzele)',zip:'9552'},{label:'9551 Ressegem (Herzele)',name:'Ressegem (Herzele)',zip:'9551'},{label:'9550 Woubrechtegem (Herzele)',name:'Woubrechtegem (Herzele)',zip:'9550'},{label:'9550 Steenhuize-Wijnhuize (Herzele)',name:'Steenhuize-Wijnhuize (Herzele)',zip:'9550'},{label:'9550 Sint-Lievens-Esse (Herzele)',name:'Sint-Lievens-Esse (Herzele)',zip:'9550'},{label:'9550 Sint-Antelinks (Herzele)',name:'Sint-Antelinks (Herzele)',zip:'9550'},{label:'9550 Hillegem (Herzele)',name:'Hillegem (Herzele)',zip:'9550'},{label:'9550 Herzele',name:'Herzele',zip:'9550'},{label:'9521 Letterhoutem (Sint-Lievens-Houtem)',name:'Letterhoutem (Sint-Lievens-Houtem)',zip:'9521'},{label:'9520 Zonnegem (Sint-Lievens-Houtem)',name:'Zonnegem (Sint-Lievens-Houtem)',zip:'9520'},{label:'9520 Vlierzele (Sint-Lievens-Houtem)',name:'Vlierzele (Sint-Lievens-Houtem)',zip:'9520'},{label:'9520 Sint-Lievens-Houtem',name:'Sint-Lievens-Houtem',zip:'9520'},{label:'9520 Bavegem (Sint-Lievens-Houtem)',name:'Bavegem (Sint-Lievens-Houtem)',zip:'9520'},{label:'9506 Zandbergen (Geraardsbergen)',name:'Zandbergen (Geraardsbergen)',zip:'9506'},{label:'9506 Waarbeke (Geraardsbergen)',name:'Waarbeke (Geraardsbergen)',zip:'9506'},{label:'9506 Smeerebbe-Vloerzegem (Geraardsbergen)',name:'Smeerebbe-Vloerzegem (Geraardsbergen)',zip:'9506'},{label:'9506 Schendelbeke (Geraardsbergen)',name:'Schendelbeke (Geraardsbergen)',zip:'9506'},{label:'9506 Nieuwenhove (Geraardsbergen)',name:'Nieuwenhove (Geraardsbergen)',zip:'9506'},{label:'9506 Idegem (Geraardsbergen)',name:'Idegem (Geraardsbergen)',zip:'9506'},{label:'9506 Grimminge (Geraardsbergen)',name:'Grimminge (Geraardsbergen)',zip:'9506'},{label:'9500 Zarlardinge (Geraardsbergen)',name:'Zarlardinge (Geraardsbergen)',zip:'9500'},{label:'9500 Viane (Geraardsbergen)',name:'Viane (Geraardsbergen)',zip:'9500'},{label:'9500 Overboelare (Geraardsbergen)',name:'Overboelare (Geraardsbergen)',zip:'9500'},{label:'9500 Ophasselt (Geraardsbergen)',name:'Ophasselt (Geraardsbergen)',zip:'9500'},{label:'9500 Onkerzele (Geraardsbergen)',name:'Onkerzele (Geraardsbergen)',zip:'9500'},{label:'9500 Nederboelare (Geraardsbergen)',name:'Nederboelare (Geraardsbergen)',zip:'9500'},{label:'9500 Moerbeke (Geraardsbergen)',name:'Moerbeke (Geraardsbergen)',zip:'9500'},{label:'9500 Goeferdinge (Geraardsbergen)',name:'Goeferdinge (Geraardsbergen)',zip:'9500'},{label:'9500 Geraardsbergen',name:'Geraardsbergen',zip:'9500'},{label:'9473 Welle (Denderleeuw)',name:'Welle (Denderleeuw)',zip:'9473'},{label:'9472 Iddergem (Denderleeuw)',name:'Iddergem (Denderleeuw)',zip:'9472'},{label:'9470 Denderleeuw',name:'Denderleeuw',zip:'9470'},{label:'9451 Kerksken (Haaltert)',name:'Kerksken (Haaltert)',zip:'9451'},{label:'9450 Heldergem (Haaltert)',name:'Heldergem (Haaltert)',zip:'9450'},{label:'9450 Haaltert',name:'Haaltert',zip:'9450'},{label:'9450 Denderhoutem (Haaltert)',name:'Denderhoutem (Haaltert)',zip:'9450'},{label:'9420 Vlekkem (Erpe-Mere)',name:'Vlekkem (Erpe-Mere)',zip:'9420'},{label:'9420 Ottergem (Erpe-Mere)',name:'Ottergem (Erpe-Mere)',zip:'9420'},{label:'9420 Mere (Erpe-Mere)',name:'Mere (Erpe-Mere)',zip:'9420'},{label:'9420 Erpe-Mere',name:'Erpe-Mere',zip:'9420'},{label:'9420 Erpe (Erpe-Mere)',name:'Erpe (Erpe-Mere)',zip:'9420'},{label:'9420 Erondegem (Erpe-Mere)',name:'Erondegem (Erpe-Mere)',zip:'9420'},{label:'9420 Burst (Erpe-Mere)',name:'Burst (Erpe-Mere)',zip:'9420'},{label:'9420 Bambrugge (Erpe-Mere)',name:'Bambrugge (Erpe-Mere)',zip:'9420'},{label:'9420 Aaigem (Erpe-Mere)',name:'Aaigem (Erpe-Mere)',zip:'9420'},{label:'9406 Outer (Ninove)',name:'Outer (Ninove)',zip:'9406'},{label:'9404 Aspelare (Ninove)',name:'Aspelare (Ninove)',zip:'9404'},{label:'9403 Neigem (Ninove)',name:'Neigem (Ninove)',zip:'9403'},{label:'9402 Meerbeke (Ninove)',name:'Meerbeke (Ninove)',zip:'9402'},{label:'9401 Pollare (Ninove)',name:'Pollare (Ninove)',zip:'9401'},{label:'9400 Voorde (Ninove)',name:'Voorde (Ninove)',zip:'9400'},{label:'9400 Okegem (Ninove)',name:'Okegem (Ninove)',zip:'9400'},{label:'9400 Ninove',name:'Ninove',zip:'9400'},{label:'9400 Nederhasselt (Ninove)',name:'Nederhasselt (Ninove)',zip:'9400'},{label:'9400 Lieferinge (Ninove)',name:'Lieferinge (Ninove)',zip:'9400'},{label:'9400 Denderwindeke (Ninove)',name:'Denderwindeke (Ninove)',zip:'9400'},{label:'9400 Appelterre-Eichem (Ninove)',name:'Appelterre-Eichem (Ninove)',zip:'9400'},{label:'9340 Wanzele (Lede)',name:'Wanzele (Lede)',zip:'9340'},{label:'9340 Smetlede (Lede)',name:'Smetlede (Lede)',zip:'9340'},{label:'9340 Oordegem (Lede)',name:'Oordegem (Lede)',zip:'9340'},{label:'9340 Lede',name:'Lede',zip:'9340'},{label:'9340 Impe (Lede)',name:'Impe (Lede)',zip:'9340'},{label:'9320 Nieuwerkerken (Aalst)',name:'Nieuwerkerken (Aalst)',zip:'9320'},{label:'9320 Erembodegem (Aalst)',name:'Erembodegem (Aalst)',zip:'9320'},{label:'9310 Moorsel (Aalst)',name:'Moorsel (Aalst)',zip:'9310'},{label:'9310 Herdersem (Aalst)',name:'Herdersem (Aalst)',zip:'9310'},{label:'9310 Baardegem (Aalst)',name:'Baardegem (Aalst)',zip:'9310'},{label:'9308 Gijzegem (Aalst)',name:'Gijzegem (Aalst)',zip:'9308'},{label:'9300 Aalst',name:'Aalst',zip:'9300'},{label:'9290 Uitbergen (Berlare)',name:'Uitbergen (Berlare)',zip:'9290'},{label:'9290 Overmere (Berlare)',name:'Overmere (Berlare)',zip:'9290'},{label:'9290 Berlare',name:'Berlare',zip:'9290'},{label:'9280 Wieze (Lebbeke)',name:'Wieze (Lebbeke)',zip:'9280'},{label:'9280 Lebbeke',name:'Lebbeke',zip:'9280'},{label:'9280 Denderbelle (Lebbeke)',name:'Denderbelle (Lebbeke)',zip:'9280'},{label:'9270 Laarne',name:'Laarne',zip:'9270'},{label:'9270 Kalken (Laarne)',name:'Kalken (Laarne)',zip:'9270'},{label:'9260 Wichelen',name:'Wichelen',zip:'9260'},{label:'9260 Serskamp (Wichelen)',name:'Serskamp (Wichelen)',zip:'9260'},{label:'9260 Schellebelle (Wichelen)',name:'Schellebelle (Wichelen)',zip:'9260'},{label:'9255 Opdorp (Buggenhout)',name:'Opdorp (Buggenhout)',zip:'9255'},{label:'9255 Buggenhout',name:'Buggenhout',zip:'9255'},{label:'9250 Waasmunster',name:'Waasmunster',zip:'9250'},{label:'9240 Zele',name:'Zele',zip:'9240'},{label:'9230 Wetteren',name:'Wetteren',zip:'9230'},{label:'9230 Westrem (Wetteren)',name:'Westrem (Wetteren)',zip:'9230'},{label:'9230 Massemen (Wetteren)',name:'Massemen (Wetteren)',zip:'9230'},{label:'9220 Moerzeke (Hamme)',name:'Moerzeke (Hamme)',zip:'9220'},{label:'9200 Schoonaarde (Dendermonde)',name:'Schoonaarde (Dendermonde)',zip:'9200'},{label:'9200 Oudegem (Dendermonde)',name:'Oudegem (Dendermonde)',zip:'9200'},{label:'9200 Mespelare (Dendermonde)',name:'Mespelare (Dendermonde)',zip:'9200'},{label:'9200 Grembergen (Dendermonde)',name:'Grembergen (Dendermonde)',zip:'9200'},{label:'9200 Dendermonde',name:'Dendermonde',zip:'9200'},{label:'9200 Baasrode (Dendermonde)',name:'Baasrode (Dendermonde)',zip:'9200'},{label:'9200 Appels (Dendermonde)',name:'Appels (Dendermonde)',zip:'9200'},{label:'9190 Stekene',name:'Stekene',zip:'9190'},{label:'9190 Kemzeke (Stekene)',name:'Kemzeke (Stekene)',zip:'9190'},{label:'9185 Wachtebeke',name:'Wachtebeke',zip:'9185'},{label:'9180 Moerbeke-Waas',name:'Moerbeke-Waas',zip:'9180'},{label:'9170 Sint-Pauwels (Sint-Gillis-Waas)',name:'Sint-Pauwels (Sint-Gillis-Waas)',zip:'9170'},{label:'9170 Sint-Gillis-Waas',name:'Sint-Gillis-Waas',zip:'9170'},{label:'9170 Meerdonk (Sint-Gillis-Waas)',name:'Meerdonk (Sint-Gillis-Waas)',zip:'9170'},{label:'9160 Lokeren',name:'Lokeren',zip:'9160'},{label:'9160 Eksaarde (Lokeren)',name:'Eksaarde (Lokeren)',zip:'9160'},{label:'9160 Daknam (Lokeren)',name:'Daknam (Lokeren)',zip:'9160'},{label:'9150 Rupelmonde (Kruibeke)',name:'Rupelmonde (Kruibeke)',zip:'9150'},{label:'9150 Kruibeke',name:'Kruibeke',zip:'9150'},{label:'9150 Bazel (Kruibeke)',name:'Bazel (Kruibeke)',zip:'9150'},{label:'9140 Tielrode (Temse)',name:'Tielrode (Temse)',zip:'9140'},{label:'9140 Temse',name:'Temse',zip:'9140'},{label:'9140 Steendorp (Temse)',name:'Steendorp (Temse)',zip:'9140'},{label:'9140 Elversele (Temse)',name:'Elversele (Temse)',zip:'9140'},{label:'9130 Verrebroek (Beveren)',name:'Verrebroek (Beveren)',zip:'9130'},{label:'9130 Kieldrecht (Beveren)',name:'Kieldrecht (Beveren)',zip:'9130'},{label:'9130 Doel (Beveren)',name:'Doel (Beveren)',zip:'9130'},{label:'9120 Vrasene (Beveren)',name:'Vrasene (Beveren)',zip:'9120'},{label:'9120 Melsele (Beveren)',name:'Melsele (Beveren)',zip:'9120'},{label:'9120 Haasdonk (Beveren)',name:'Haasdonk (Beveren)',zip:'9120'},{label:'9112 Sinaai-Waas (Sint-Niklaas)',name:'Sinaai-Waas (Sint-Niklaas)',zip:'9112'},{label:'9111 Belsele (Sint-Niklaas)',name:'Belsele (Sint-Niklaas)',zip:'9111'},{label:'9100 Sint-Niklaas',name:'Sint-Niklaas',zip:'9100'},{label:'9100 Nieuwkerken-Waas (Sint-Niklaas)',name:'Nieuwkerken-Waas (Sint-Niklaas)',zip:'9100'},{label:'9090 Melle',name:'Melle',zip:'9090'},{label:'9090 Gontrode (Melle)',name:'Gontrode (Melle)',zip:'9090'},{label:'9080 Zeveneken (Lochristi)',name:'Zeveneken (Lochristi)',zip:'9080'},{label:'9080 Zaffelare (Lochristi)',name:'Zaffelare (Lochristi)',zip:'9080'},{label:'9080 Lochristi',name:'Lochristi',zip:'9080'},{label:'9080 Beervelde (Lochristi)',name:'Beervelde (Lochristi)',zip:'9080'},{label:'9070 Destelbergen',name:'Destelbergen',zip:'9070'},{label:'9060 Zelzate',name:'Zelzate',zip:'9060'},{label:'9052 Zwijnaarde (Gent)',name:'Zwijnaarde (Gent)',zip:'9052'},{label:'9051 Sint-Denijs-Westrem (Gent)',name:'Sint-Denijs-Westrem (Gent)',zip:'9051'},{label:'9051 Afsnee (Gent)',name:'Afsnee (Gent)',zip:'9051'},{label:'9050 Ledeberg (Gent)',name:'Ledeberg (Gent)',zip:'9050'},{label:'9050 Gentbrugge (Gent)',name:'Gentbrugge (Gent)',zip:'9050'},{label:'9042 Sint-Kruis-Winkel (Gent)',name:'Sint-Kruis-Winkel (Gent)',zip:'9042'},{label:'9042 Mendonk (Gent)',name:'Mendonk (Gent)',zip:'9042'},{label:'9042 Desteldonk',name:'Desteldonk',zip:'9042'},{label:'9041 Oostakker (Gent)',name:'Oostakker (Gent)',zip:'9041'},{label:'9040 Sint-Amandsberg (Gent)',name:'Sint-Amandsberg (Gent)',zip:'9040'},{label:'9032 Wondelgem (Gent)',name:'Wondelgem (Gent)',zip:'9032'},{label:'9031 Drongen (Gent)',name:'Drongen (Gent)',zip:'9031'},{label:'9030 Mariakerke (Gent)',name:'Mariakerke (Gent)',zip:'9030'},{label:'9000 Gent',name:'Gent',zip:'9000'},{label:'3990 Wijchmaal (Peer)',name:'Wijchmaal (Peer)',zip:'3990'},{label:'3990 Peer',name:'Peer',zip:'3990'},{label:'3990 Kleine-Brogel (Peer)',name:'Kleine-Brogel (Peer)',zip:'3990'},{label:'3990 Grote-Brogel (Peer)',name:'Grote-Brogel (Peer)',zip:'3990'},{label:'3980 Tessenderlo',name:'Tessenderlo',zip:'3980'},{label:'3971 Heppen (Leopoldsburg)',name:'Heppen (Leopoldsburg)',zip:'3971'},{label:'3970 Leopoldsburg',name:'Leopoldsburg',zip:'3970'},{label:'3960 Opitter (Bree)',name:'Opitter (Bree)',zip:'3960'},{label:'3960 Gerdingen (Bree)',name:'Gerdingen (Bree)',zip:'3960'},{label:'3960 Bree',name:'Bree',zip:'3960'},{label:'3960 Beek (Bree)',name:'Beek (Bree)',zip:'3960'},{label:'3950 Reppel (Bocholt)',name:'Reppel (Bocholt)',zip:'3950'},{label:'3950 Kaulille (Bocholt)',name:'Kaulille (Bocholt)',zip:'3950'},{label:'3950 Bocholt',name:'Bocholt',zip:'3950'},{label:'3945 Oostham (Ham)',name:'Oostham (Ham)',zip:'3945'},{label:'3945 Kwaadmechelen (Ham)',name:'Kwaadmechelen (Ham)',zip:'3945'},{label:'3945 Ham',name:'Ham',zip:'3945'},{label:'3941 Eksel (Hechtel-Eksel)',name:'Eksel (Hechtel-Eksel)',zip:'3941'},{label:'3940 Hechtel-Eksel',name:'Hechtel-Eksel',zip:'3940'},{label:'3940 Hechtel',name:'Hechtel',zip:'3940'},{label:'3930 Hamont-Achel',name:'Hamont-Achel',zip:'3930'},{label:'3930 Hamont (Hamont-Achel)',name:'Hamont (Hamont-Achel)',zip:'3930'},{label:'3930 Achel (Hamont-Achel)',name:'Achel (Hamont-Achel)',zip:'3930'},{label:'3920 Lommel',name:'Lommel',zip:'3920'},{label:'3910 Sint-Huibrechts-Lille (Pelt)',name:'Sint-Huibrechts-Lille (Pelt)',zip:'3910'},{label:'3910 Neerpelt (Pelt)',name:'Neerpelt (Pelt)',zip:'3910'},{label:'3900 Overpelt (Pelt)',name:'Overpelt (Pelt)',zip:'3900'},{label:'3891 Mielen-Boven-Aalst (Gingelom)',name:'Mielen-Boven-Aalst (Gingelom)',zip:'3891'},{label:'3891 Buvingen (Gingelom)',name:'Buvingen (Gingelom)',zip:'3891'},{label:'3891 Borlo (Gingelom)',name:'Borlo (Gingelom)',zip:'3891'},{label:'3890 Vorsen (Gingelom)',name:'Vorsen (Gingelom)',zip:'3890'},{label:'3890 Niel-Bij-Sint-Truiden (Gingelom)',name:'Niel-Bij-Sint-Truiden (Gingelom)',zip:'3890'},{label:'3890 Montenaken (Gingelom)',name:'Montenaken (Gingelom)',zip:'3890'},{label:'3890 Kortijs (Gingelom)',name:'Kortijs (Gingelom)',zip:'3890'},{label:'3890 Jeuk (Gingelom)',name:'Jeuk (Gingelom)',zip:'3890'},{label:'3890 Gingelom',name:'Gingelom',zip:'3890'},{label:'3890 Boekhout (Gingelom)',name:'Boekhout (Gingelom)',zip:'3890'},{label:'3870 Veulen (Heers)',name:'Veulen (Heers)',zip:'3870'},{label:'3870 Vechmaal (Heers)',name:'Vechmaal (Heers)',zip:'3870'},{label:'3870 Rukkelingen-Loon (Heers)',name:'Rukkelingen-Loon (Heers)',zip:'3870'},{label:'3870 Opheers (Heers)',name:'Opheers (Heers)',zip:'3870'},{label:'3870 Mettekoven (Heers)',name:'Mettekoven (Heers)',zip:'3870'},{label:'3870 Mechelen-Bovelingen (Heers)',name:'Mechelen-Bovelingen (Heers)',zip:'3870'},{label:'3870 Klein-Gelmen (Heers)',name:'Klein-Gelmen (Heers)',zip:'3870'},{label:'3870 Horpmaal (Heers)',name:'Horpmaal (Heers)',zip:'3870'},{label:'3870 Heks (Heers)',name:'Heks (Heers)',zip:'3870'},{label:'3870 Heers',name:'Heers',zip:'3870'},{label:'3870 Gutschoven (Heers)',name:'Gutschoven (Heers)',zip:'3870'},{label:'3870 Bovelingen (Heers)',name:'Bovelingen (Heers)',zip:'3870'},{label:'3870 Batsheers (Heers)',name:'Batsheers (Heers)',zip:'3870'},{label:'3850 Wijer (Nieuwerkerken)',name:'Wijer (Nieuwerkerken)',zip:'3850'},{label:'3850 Kozen (Nieuwerkerken)',name:'Kozen (Nieuwerkerken)',zip:'3850'},{label:'3850 Binderveld (Nieuwerkerken)',name:'Binderveld (Nieuwerkerken)',zip:'3850'},{label:'3840 Voort (Borgloon)',name:'Voort (Borgloon)',zip:'3840'},{label:'3840 Rijkel (Borgloon)',name:'Rijkel (Borgloon)',zip:'3840'},{label:'3840 Kuttekoven (Borgloon)',name:'Kuttekoven (Borgloon)',zip:'3840'},{label:'3840 Kerniel (Borgloon)',name:'Kerniel (Borgloon)',zip:'3840'},{label:'3840 Hoepertingen (Borgloon)',name:'Hoepertingen (Borgloon)',zip:'3840'},{label:'3840 Hendrieken (Borgloon)',name:'Hendrieken (Borgloon)',zip:'3840'},{label:'3840 Groot-Loon (Borgloon)',name:'Groot-Loon (Borgloon)',zip:'3840'},{label:'3840 Gotem (Borgloon)',name:'Gotem (Borgloon)',zip:'3840'},{label:'3840 Gors-Opleeuw (Borgloon)',name:'Gors-Opleeuw (Borgloon)',zip:'3840'},{label:'3840 Broekom (Borgloon)',name:'Broekom (Borgloon)',zip:'3840'},{label:'3840 Borgloon',name:'Borgloon',zip:'3840'},{label:'3832 Ulbeek (Wellen)',name:'Ulbeek (Wellen)',zip:'3832'},{label:'3831 Herten (Wellen)',name:'Herten (Wellen)',zip:'3831'},{label:'3830 Wellen',name:'Wellen',zip:'3830'},{label:'3830 Berlingen (Wellen)',name:'Berlingen (Wellen)',zip:'3830'},{label:'3806 Velm (Sint-Truiden)',name:'Velm (Sint-Truiden)',zip:'3806'},{label:'3803 Wilderen (Sint-Truiden)',name:'Wilderen (Sint-Truiden)',zip:'3803'},{label:'3803 Runkelen (Sint-Truiden)',name:'Runkelen (Sint-Truiden)',zip:'3803'},{label:'3803 Gorsem (Sint-Truiden)',name:'Gorsem (Sint-Truiden)',zip:'3803'},{label:'3803 Duras (Sint-Truiden)',name:'Duras (Sint-Truiden)',zip:'3803'},{label:'3800 Zepperen (Sint-Truiden)',name:'Zepperen (Sint-Truiden)',zip:'3800'},{label:'3800 Sint-Truiden',name:'Sint-Truiden',zip:'3800'},{label:'3800 Ordingen (Sint-Truiden)',name:'Ordingen (Sint-Truiden)',zip:'3800'},{label:'3800 Kerkom-Bij-Sint-Truiden (Sint-Truiden)',name:'Kerkom-Bij-Sint-Truiden (Sint-Truiden)',zip:'3800'},{label:'3800 Halmaal (Sint-Truiden)',name:'Halmaal (Sint-Truiden)',zip:'3800'},{label:'3800 Groot-Gelmen (Sint-Truiden)',name:'Groot-Gelmen (Sint-Truiden)',zip:'3800'},{label:'3800 Gelinden (Sint-Truiden)',name:'Gelinden (Sint-Truiden)',zip:'3800'},{label:'3800 Engelmanshoven (Sint-Truiden)',name:'Engelmanshoven (Sint-Truiden)',zip:'3800'},{label:'3800 Brustem (Sint-Truiden)',name:'Brustem (Sint-Truiden)',zip:'3800'},{label:'3793 Teuven (Voeren)',name:'Teuven (Voeren)',zip:'3793'},{label:'3791 Remersdaal (Voeren)',name:'Remersdaal (Voeren)',zip:'3791'},{label:'3770 Zichen-Zussen-Bolder (Riemst)',name:'Zichen-Zussen-Bolder (Riemst)',zip:'3770'},{label:'3770 Vroenhoven (Riemst)',name:'Vroenhoven (Riemst)',zip:'3770'},{label:'3770 Vlijtingen (Riemst)',name:'Vlijtingen (Riemst)',zip:'3770'},{label:'3770 Val-Meer (Riemst)',name:'Val-Meer (Riemst)',zip:'3770'},{label:'3770 Riemst',name:'Riemst',zip:'3770'},{label:'3770 Millen (Riemst)',name:'Millen (Riemst)',zip:'3770'},{label:'3770 Membruggen (Riemst)',name:'Membruggen (Riemst)',zip:'3770'},{label:'3770 Kanne (Riemst)',name:'Kanne (Riemst)',zip:'3770'},{label:'3770 Herderen (Riemst)',name:'Herderen (Riemst)',zip:'3770'},{label:'3770 Genoelselderen (Riemst)',name:'Genoelselderen (Riemst)',zip:'3770'},{label:'3746 Hoelbeek (Bilzen)',name:'Hoelbeek (Bilzen)',zip:'3746'},{label:'3742 Martenslinde (Bilzen)',name:'Martenslinde (Bilzen)',zip:'3742'},{label:'3740 Waltwilder (Bilzen)',name:'Waltwilder (Bilzen)',zip:'3740'},{label:'3740 Spouwen',name:'Spouwen',zip:'3740'},{label:'3740 Rosmeer (Bilzen)',name:'Rosmeer (Bilzen)',zip:'3740'},{label:'3740 Rijkhoven (Bilzen)',name:'Rijkhoven (Bilzen)',zip:'3740'},{label:'3740 Munsterbilzen (Bilzen)',name:'Munsterbilzen (Bilzen)',zip:'3740'},{label:'3740 Mopertingen (Bilzen)',name:'Mopertingen (Bilzen)',zip:'3740'},{label:'3740 Kleine-Spouwen (Bilzen)',name:'Kleine-Spouwen (Bilzen)',zip:'3740'},{label:'3740 Hees (Bilzen)',name:'Hees (Bilzen)',zip:'3740'},{label:'3740 Grote-Spouwen (Bilzen)',name:'Grote-Spouwen (Bilzen)',zip:'3740'},{label:'3740 Eigenbilzen (Bilzen)',name:'Eigenbilzen (Bilzen)',zip:'3740'},{label:'3740 Bilzen',name:'Bilzen',zip:'3740'},{label:'3740 Beverst (Bilzen)',name:'Beverst (Bilzen)',zip:'3740'},{label:'3732 Schalkhoven (Hoeselt)',name:'Schalkhoven (Hoeselt)',zip:'3732'},{label:'3730 Werm (Hoeselt)',name:'Werm (Hoeselt)',zip:'3730'},{label:'3730 Sint-Huibrechts-Hern (Hoeselt)',name:'Sint-Huibrechts-Hern (Hoeselt)',zip:'3730'},{label:'3730 Romershoven (Hoeselt)',name:'Romershoven (Hoeselt)',zip:'3730'},{label:'3730 Hoeselt',name:'Hoeselt',zip:'3730'},{label:'3724 Vliermaal (Kortessem)',name:'Vliermaal (Kortessem)',zip:'3724'},{label:'3723 Guigoven (Kortessem)',name:'Guigoven (Kortessem)',zip:'3723'},{label:'3722 Wintershoven (Kortessem)',name:'Wintershoven (Kortessem)',zip:'3722'},{label:'3721 Vliermaalroot (Kortessem)',name:'Vliermaalroot (Kortessem)',zip:'3721'},{label:'3720 Kortessem',name:'Kortessem',zip:'3720'},{label:'3717 Herstappe',name:'Herstappe',zip:'3717'},{label:'3700 Vreren (Tongeren)',name:'Vreren (Tongeren)',zip:'3700'},{label:'3700 Tongeren',name:'Tongeren',zip:'3700'},{label:'3700 Sluizen (Tongeren)',name:'Sluizen (Tongeren)',zip:'3700'},{label:'3700 Rutten (Tongeren)',name:'Rutten (Tongeren)',zip:'3700'},{label:'3700 Riksingen (Tongeren)',name:'Riksingen (Tongeren)',zip:'3700'},{label:'3700 Nerem (Tongeren)',name:'Nerem (Tongeren)',zip:'3700'},{label:'3700 Neerrepen (Tongeren)',name:'Neerrepen (Tongeren)',zip:'3700'},{label:'3700 Mal (Tongeren)',name:'Mal (Tongeren)',zip:'3700'},{label:'3700 Lauw (Tongeren)',name:'Lauw (Tongeren)',zip:'3700'},{label:'3700 Koninksem (Tongeren)',name:'Koninksem (Tongeren)',zip:'3700'},{label:'3700 Henis (Tongeren)',name:'Henis (Tongeren)',zip:'3700'},{label:'3700 Diets-Heur (Tongeren)',name:'Diets-Heur (Tongeren)',zip:'3700'},{label:'3690 Zutendaal',name:'Zutendaal',zip:'3690'},{label:'3680 Opoeteren (Maaseik)',name:'Opoeteren (Maaseik)',zip:'3680'},{label:'3680 Neeroeteren (Maaseik)',name:'Neeroeteren (Maaseik)',zip:'3680'},{label:'3680 Maaseik',name:'Maaseik',zip:'3680'},{label:'3670 Wijshagen (Oudsbergen)',name:'Wijshagen (Oudsbergen)',zip:'3670'},{label:'3670 Neerglabbeek (Oudsbergen)',name:'Neerglabbeek (Oudsbergen)',zip:'3670'},{label:'3670 Meeuwen-Gruitrode (Oudsbergen)',name:'Meeuwen-Gruitrode (Oudsbergen)',zip:'3670'},{label:'3670 Meeuwen (Oudsbergen)',name:'Meeuwen (Oudsbergen)',zip:'3670'},{label:'3670 Gruitrode (Oudsbergen)',name:'Gruitrode (Oudsbergen)',zip:'3670'},{label:'3670 Ellikom (Oudsbergen)',name:'Ellikom (Oudsbergen)',zip:'3670'},{label:'3668 Niel-Bij-As (As)',name:'Niel-Bij-As (As)',zip:'3668'},{label:'3665 As',name:'As',zip:'3665'},{label:'3660 Opglabbeek (Oudsbergen)',name:'Opglabbeek (Oudsbergen)',zip:'3660'},{label:'3650 Rotem (Dilsen-Stokkem)',name:'Rotem (Dilsen-Stokkem)',zip:'3650'},{label:'3650 Lanklaar (Dilsen-Stokkem)',name:'Lanklaar (Dilsen-Stokkem)',zip:'3650'},{label:'3650 Elen (Dilsen-Stokkem)',name:'Elen (Dilsen-Stokkem)',zip:'3650'},{label:'3650 Dilsen-Stokkem',name:'Dilsen-Stokkem',zip:'3650'},{label:'3640 Ophoven (Kinrooi)',name:'Ophoven (Kinrooi)',zip:'3640'},{label:'3640 Molenbeersel (Kinrooi)',name:'Molenbeersel (Kinrooi)',zip:'3640'},{label:'3640 Kinrooi',name:'Kinrooi',zip:'3640'},{label:'3640 Kessenich (Kinrooi)',name:'Kessenich (Kinrooi)',zip:'3640'},{label:'3631 Uikhoven (Maasmechelen)',name:'Uikhoven (Maasmechelen)',zip:'3631'},{label:'3631 Boorsem (Maasmechelen)',name:'Boorsem (Maasmechelen)',zip:'3631'},{label:'3630 Vucht (Maasmechelen)',name:'Vucht (Maasmechelen)',zip:'3630'},{label:'3630 Opgrimbie (Maasmechelen)',name:'Opgrimbie (Maasmechelen)',zip:'3630'},{label:'3630 Meeswijk (Maasmechelen)',name:'Meeswijk (Maasmechelen)',zip:'3630'},{label:'3630 Mechelen-Aan-De-Maas (Maasmechelen)',name:'Mechelen-Aan-De-Maas (Maasmechelen)',zip:'3630'},{label:'3630 Maasmechelen',name:'Maasmechelen',zip:'3630'},{label:'3630 Leut (Maasmechelen)',name:'Leut (Maasmechelen)',zip:'3630'},{label:'3630 Eisden (Maasmechelen)',name:'Eisden (Maasmechelen)',zip:'3630'},{label:'3621 Rekem (Lanaken)',name:'Rekem (Lanaken)',zip:'3621'},{label:'3620 Veldwezelt (Lanaken)',name:'Veldwezelt (Lanaken)',zip:'3620'},{label:'3620 Neerharen (Lanaken)',name:'Neerharen (Lanaken)',zip:'3620'},{label:'3620 Lanaken',name:'Lanaken',zip:'3620'},{label:'3620 Gellik (Lanaken)',name:'Gellik (Lanaken)',zip:'3620'},{label:'3600 Genk',name:'Genk',zip:'3600'},{label:'3590 Diepenbeek',name:'Diepenbeek',zip:'3590'},{label:'3583 Paal (Beringen)',name:'Paal (Beringen)',zip:'3583'},{label:'3582 Koersel (Beringen)',name:'Koersel (Beringen)',zip:'3582'},{label:'3581 Beverlo (Beringen)',name:'Beverlo (Beringen)',zip:'3581'},{label:'3580 Beringen',name:'Beringen',zip:'3580'},{label:'3570 Alken',name:'Alken',zip:'3570'},{label:'3560 Lummen',name:'Lummen',zip:'3560'},{label:'3560 Linkhout (Lummen)',name:'Linkhout (Lummen)',zip:'3560'},{label:'3550 Zolder (Heusden-Zolder)',name:'Zolder (Heusden-Zolder)',zip:'3550'},{label:'3550 Heusden-Zolder',name:'Heusden-Zolder',zip:'3550'},{label:'3545 Zelem (Halen)',name:'Zelem (Halen)',zip:'3545'},{label:'3545 Loksbergen (Halen)',name:'Loksbergen (Halen)',zip:'3545'},{label:'3545 Halen',name:'Halen',zip:'3545'},{label:'3540 Schulen (Herk-De-Stad)',name:'Schulen (Herk-De-Stad)',zip:'3540'},{label:'3540 Herk-de-Stad',name:'Herk-de-Stad',zip:'3540'},{label:'3540 Donk (Herk-De-Stad)',name:'Donk (Herk-De-Stad)',zip:'3540'},{label:'3540 Berbroek (Herk-De-Stad)',name:'Berbroek (Herk-De-Stad)',zip:'3540'},{label:'3530 Houthalen-Helchteren',name:'Houthalen-Helchteren',zip:'3530'},{label:'3530 Houthalen (Houthalen-Helchteren)',name:'Houthalen (Houthalen-Helchteren)',zip:'3530'},{label:'3530 Helchteren (Houthalen-Helchteren)',name:'Helchteren (Houthalen-Helchteren)',zip:'3530'},{label:'3520 Zonhoven',name:'Zonhoven',zip:'3520'},{label:'3512 Stevoort (Hasselt)',name:'Stevoort (Hasselt)',zip:'3512'},{label:'3511 Stokrooie (Hasselt)',name:'Stokrooie (Hasselt)',zip:'3511'},{label:'3511 Kuringen (Hasselt)',name:'Kuringen (Hasselt)',zip:'3511'},{label:'3510 Spalbeek (Hasselt)',name:'Spalbeek (Hasselt)',zip:'3510'},{label:'3510 Kermt (Hasselt)',name:'Kermt (Hasselt)',zip:'3510'},{label:'3501 Wimmertingen (Hasselt)',name:'Wimmertingen (Hasselt)',zip:'3501'},{label:'3500 Sint-Lambrechts-Herk (Hasselt)',name:'Sint-Lambrechts-Herk (Hasselt)',zip:'3500'},{label:'3500 Hasselt',name:'Hasselt',zip:'3500'},{label:'2990 Wuustwezel',name:'Wuustwezel',zip:'2990'},{label:'2990 Loenhout (Wuustwezel)',name:'Loenhout (Wuustwezel)',zip:'2990'},{label:'2980 Zoersel',name:'Zoersel',zip:'2980'},{label:'2970 Schilde',name:'Schilde',zip:'2970'},{label:'2960 Brecht',name:'Brecht',zip:'2960'},{label:'2940 Stabroek',name:'Stabroek',zip:'2940'},{label:'2940 Hoevenen (Stabroek)',name:'Hoevenen (Stabroek)',zip:'2940'},{label:'2930 Brasschaat',name:'Brasschaat',zip:'2930'},{label:'2920 Kalmthout',name:'Kalmthout',zip:'2920'},{label:'2910 Essen',name:'Essen',zip:'2910'},{label:'2900 Schoten',name:'Schoten',zip:'2900'},{label:'2890 Sint-Amands (Puurs-Sint-Amands)',name:'Sint-Amands (Puurs-Sint-Amands)',zip:'2890'},{label:'2890 Oppuurs (Puurs-Sint-Amands)',name:'Oppuurs (Puurs-Sint-Amands)',zip:'2890'},{label:'2890 Lippelo (Puurs-Sint-Amands)',name:'Lippelo (Puurs-Sint-Amands)',zip:'2890'},{label:'2880 Weert (Bornem)',name:'Weert (Bornem)',zip:'2880'},{label:'2880 Hingene (Bornem)',name:'Hingene (Bornem)',zip:'2880'},{label:'2880 Bornem',name:'Bornem',zip:'2880'},{label:'2870 Puurs (Puurs-Sint-Amands)',name:'Puurs (Puurs-Sint-Amands)',zip:'2870'},{label:'2870 Liezele (Puurs-Sint-Amands)',name:'Liezele (Puurs-Sint-Amands)',zip:'2870'},{label:'2870 Breendonk (Puurs-Sint-Amands)',name:'Breendonk (Puurs-Sint-Amands)',zip:'2870'},{label:'2861 Onze-Lieve-Vrouw-Waver (Sint-Katelijne-Waver)',name:'Onze-Lieve-Vrouw-Waver (Sint-Katelijne-Waver)',zip:'2861'},{label:'2860 Sint-Katelijne-Waver',name:'Sint-Katelijne-Waver',zip:'2860'},{label:'2850 Boom',name:'Boom',zip:'2850'},{label:'2845 Niel',name:'Niel',zip:'2845'},{label:'2840 Terhagen (Rumst)',name:'Terhagen (Rumst)',zip:'2840'},{label:'2840 Rumst',name:'Rumst',zip:'2840'},{label:'2840 Reet (Rumst)',name:'Reet (Rumst)',zip:'2840'},{label:'2830 Willebroek',name:'Willebroek',zip:'2830'},{label:'2830 Tisselt (Willebroek)',name:'Tisselt (Willebroek)',zip:'2830'},{label:'2830 Heindonk (Willebroek)',name:'Heindonk (Willebroek)',zip:'2830'},{label:'2830 Blaasveld (Willebroek)',name:'Blaasveld (Willebroek)',zip:'2830'},{label:'2820 Rijmenam (Bonheiden)',name:'Rijmenam (Bonheiden)',zip:'2820'},{label:'2820 Bonheiden',name:'Bonheiden',zip:'2820'},{label:'2811 Leest (Mechelen)',name:'Leest (Mechelen)',zip:'2811'},{label:'2811 Hombeek (Mechelen)',name:'Hombeek (Mechelen)',zip:'2811'},{label:'2801 Heffen (Mechelen)',name:'Heffen (Mechelen)',zip:'2801'},{label:'2800 Walem (Mechelen)',name:'Walem (Mechelen)',zip:'2800'},{label:'2800 Mechelen',name:'Mechelen',zip:'2800'},{label:'2650 Edegem',name:'Edegem',zip:'2650'},{label:'2640 Mortsel',name:'Mortsel',zip:'2640'},{label:'2630 Aartselaar',name:'Aartselaar',zip:'2630'},{label:'2627 Schelle',name:'Schelle',zip:'2627'},{label:'2620 Hemiksem',name:'Hemiksem',zip:'2620'},{label:'2590 Gestel (Berlaar)',name:'Gestel (Berlaar)',zip:'2590'},{label:'2590 Berlaar',name:'Berlaar',zip:'2590'},{label:'2580 Putte',name:'Putte',zip:'2580'},{label:'2580 Beerzel (Putte)',name:'Beerzel (Putte)',zip:'2580'},{label:'2570 Duffel',name:'Duffel',zip:'2570'},{label:'2560 Nijlen',name:'Nijlen',zip:'2560'},{label:'2560 Kessel (Nijlen)',name:'Kessel (Nijlen)',zip:'2560'},{label:'2560 Bevel (Nijlen)',name:'Bevel (Nijlen)',zip:'2560'},{label:'2550 Waarloos (Kontich)',name:'Waarloos (Kontich)',zip:'2550'},{label:'2550 Kontich',name:'Kontich',zip:'2550'},{label:'2547 Lint',name:'Lint',zip:'2547'},{label:'2540 Hove',name:'Hove',zip:'2540'},{label:'2531 Vremde (Boechout)',name:'Vremde (Boechout)',zip:'2531'},{label:'2530 Boechout',name:'Boechout',zip:'2530'},{label:'2520 Ranst',name:'Ranst',zip:'2520'},{label:'2520 Oelegem (Ranst)',name:'Oelegem (Ranst)',zip:'2520'},{label:'2520 Emblem (Ranst)',name:'Emblem (Ranst)',zip:'2520'},{label:'2520 Broechem (Ranst)',name:'Broechem (Ranst)',zip:'2520'},{label:'2500 Lier',name:'Lier',zip:'2500'},{label:'2500 Koningshooikt (Lier)',name:'Koningshooikt (Lier)',zip:'2500'},{label:'2491 Olmen (Balen)',name:'Olmen (Balen)',zip:'2491'},{label:'2490 Balen',name:'Balen',zip:'2490'},{label:'2480 Dessel',name:'Dessel',zip:'2480'},{label:'2470 Retie',name:'Retie',zip:'2470'},{label:'2460 Tielen (Kasterlee)',name:'Tielen (Kasterlee)',zip:'2460'},{label:'2460 Lichtaart (Kasterlee)',name:'Lichtaart (Kasterlee)',zip:'2460'},{label:'2460 Kasterlee',name:'Kasterlee',zip:'2460'},{label:'2450 Meerhout',name:'Meerhout',zip:'2450'},{label:'2440 Geel',name:'Geel',zip:'2440'},{label:'2431 Veerle (Laakdal)',name:'Veerle (Laakdal)',zip:'2431'},{label:'2431 Varendonk (Laakdal)',name:'Varendonk (Laakdal)',zip:'2431'},{label:'2430 Laakdal',name:'Laakdal',zip:'2430'},{label:'2430 Eindhout (Laakdal)',name:'Eindhout (Laakdal)',zip:'2430'},{label:'2400 Mol',name:'Mol',zip:'2400'},{label:'2390 Westmalle (Malle)',name:'Westmalle (Malle)',zip:'2390'},{label:'2390 Oostmalle (Malle)',name:'Oostmalle (Malle)',zip:'2390'},{label:'2390 Malle',name:'Malle',zip:'2390'},{label:'2387 Baarle-Hertog',name:'Baarle-Hertog',zip:'2387'},{label:'2382 Poppel (Ravels)',name:'Poppel (Ravels)',zip:'2382'},{label:'2381 Weelde (Ravels)',name:'Weelde (Ravels)',zip:'2381'},{label:'2380 Ravels',name:'Ravels',zip:'2380'},{label:'2370 Arendonk',name:'Arendonk',zip:'2370'},{label:'2360 Oud-Turnhout',name:'Oud-Turnhout',zip:'2360'},{label:'2350 Vosselaar',name:'Vosselaar',zip:'2350'},{label:'2340 Vlimmeren (Beerse)',name:'Vlimmeren (Beerse)',zip:'2340'},{label:'2340 Beerse',name:'Beerse',zip:'2340'},{label:'2330 Merksplas',name:'Merksplas',zip:'2330'},{label:'2328 Meerle (Hoogstraten)',name:'Meerle (Hoogstraten)',zip:'2328'},{label:'2323 Wortel (Hoogstraten)',name:'Wortel (Hoogstraten)',zip:'2323'},{label:'2322 Minderhout (Hoogstraten)',name:'Minderhout (Hoogstraten)',zip:'2322'},{label:'2321 Meer (Hoogstraten)',name:'Meer (Hoogstraten)',zip:'2321'},{label:'2320 Hoogstraten',name:'Hoogstraten',zip:'2320'},{label:'2310 Rijkevorsel',name:'Rijkevorsel',zip:'2310'},{label:'2300 Turnhout',name:'Turnhout',zip:'2300'},{label:'2290 Vorselaar',name:'Vorselaar',zip:'2290'},{label:'2288 Bouwel (Grobbendonk)',name:'Bouwel (Grobbendonk)',zip:'2288'},{label:'2280 Grobbendonk',name:'Grobbendonk',zip:'2280'},{label:'2275 Wechelderzande (Lille)',name:'Wechelderzande (Lille)',zip:'2275'},{label:'2275 Poederlee (Lille)',name:'Poederlee (Lille)',zip:'2275'},{label:'2275 Lille',name:'Lille',zip:'2275'},{label:'2275 Gierle (Lille)',name:'Gierle (Lille)',zip:'2275'},{label:'2270 Herenthout',name:'Herenthout',zip:'2270'},{label:'2260 Zoerle-Parwijs (Westerlo)',name:'Zoerle-Parwijs (Westerlo)',zip:'2260'},{label:'2260 Westerlo',name:'Westerlo',zip:'2260'},{label:'2260 Oevel (Westerlo)',name:'Oevel (Westerlo)',zip:'2260'},{label:'2250 Olen',name:'Olen',zip:'2250'},{label:'2243 Pulle (Zandhoven)',name:'Pulle (Zandhoven)',zip:'2243'},{label:'2242 Pulderbos (Zandhoven)',name:'Pulderbos (Zandhoven)',zip:'2242'},{label:'2240 Zandhoven',name:'Zandhoven',zip:'2240'},{label:'2240 Viersel (Zandhoven)',name:'Viersel (Zandhoven)',zip:'2240'},{label:'2240 Massenhoven (Zandhoven)',name:'Massenhoven (Zandhoven)',zip:'2240'},{label:'2235 Westmeerbeek (Hulshout)',name:'Westmeerbeek (Hulshout)',zip:'2235'},{label:'2235 Hulshout',name:'Hulshout',zip:'2235'},{label:'2235 Houtvenne (Hulshout)',name:'Houtvenne (Hulshout)',zip:'2235'},{label:'2230 Ramsel (Herselt)',name:'Ramsel (Herselt)',zip:'2230'},{label:'2230 Herselt',name:'Herselt',zip:'2230'},{label:'2223 Schriek (Heist-Op-Den-Berg)',name:'Schriek (Heist-Op-Den-Berg)',zip:'2223'},{label:'2222 Wiekevorst (Heist-Op-Den-Berg)',name:'Wiekevorst (Heist-Op-Den-Berg)',zip:'2222'},{label:'2222 Itegem (Heist-Op-Den-Berg)',name:'Itegem (Heist-Op-Den-Berg)',zip:'2222'},{label:'2221 Booischot (Heist-Op-Den-Berg)',name:'Booischot (Heist-Op-Den-Berg)',zip:'2221'},{label:'2220 Heist-op-den-Berg',name:'Heist-op-den-Berg',zip:'2220'},{label:'2220 Hallaar (Heist-Op-Den-Berg)',name:'Hallaar (Heist-Op-Den-Berg)',zip:'2220'},{label:'2200 Noorderwijk (Herentals)',name:'Noorderwijk (Herentals)',zip:'2200'},{label:'2200 Morkhoven (Herentals)',name:'Morkhoven (Herentals)',zip:'2200'},{label:'2200 Herentals',name:'Herentals',zip:'2200'},{label:'2160 Wommelgem',name:'Wommelgem',zip:'2160'},{label:'2110 Wijnegem',name:'Wijnegem',zip:'2110'},{label:'2070 Zwijndrecht',name:'Zwijndrecht',zip:'2070'},{label:'2070 Burcht (Zwijndrecht)',name:'Burcht (Zwijndrecht)',zip:'2070'},{label:'2660 Hoboken (Antwerpen)',name:'Hoboken (Antwerpen)',zip:'2660'},{label:'2610 Wilrijk (Antwerpen)',name:'Wilrijk (Antwerpen)',zip:'2610'},{label:'2600 Berchem (Antwerpen)',name:'Berchem (Antwerpen)',zip:'2600'},{label:'2180 Ekeren (Antwerpen)',name:'Ekeren (Antwerpen)',zip:'2180'},{label:'2170 Merksem (Antwerpen)',name:'Merksem (Antwerpen)',zip:'2170'},{label:'2140 Borgerhout (Antwerpen)',name:'Borgerhout (Antwerpen)',zip:'2140'},{label:'2100 Deurne (Antwerpen)',name:'Deurne (Antwerpen)',zip:'2100'},{label:'2040 Zandvliet (Antwerpen)',name:'Zandvliet (Antwerpen)',zip:'2040'},{label:'2040 Lillo (Antwerpen)',name:'Lillo (Antwerpen)',zip:'2040'},{label:'2040 Berendrecht (Antwerpen)',name:'Berendrecht (Antwerpen)',zip:'2040'},{label:'2000 Antwerpen',name:'Antwerpen',zip:'2000'},{label:'1000 Brussel',name:'Brussel',zip:'1000'},{label:'1030 Schaarbeek (Brussel)',name:'Schaarbeek (Brussel)',zip:'1030'},{label:'1040 Etterbeek (Brussel)',name:'Etterbeek (Brussel)',zip:'1040'},{label:'1050 Elsene (Brussel)',name:'Elsene (Brussel)',zip:'1050'},{label:'1060 Sint-Gillis (Brussel)',name:'Sint-Gillis (Brussel)',zip:'1060'},{label:'1070 Anderlecht (Brussel)',name:'Anderlecht (Brussel)',zip:'1070'},{label:'1080 Sint-Jans-Molenbeek (Brussel)',name:'Sint-Jans-Molenbeek (Brussel)',zip:'1080'},{label:'1081 Koekelberg (Brussel)',name:'Koekelberg (Brussel)',zip:'1081'},{label:'1082 Sint-Agatha-Berchem (Brussel)',name:'Sint-Agatha-Berchem (Brussel)',zip:'1082'},{label:'1083 Ganshoren (Brussel)',name:'Ganshoren (Brussel)',zip:'1083'},{label:'1090 Jette (Brussel)',name:'Jette (Brussel)',zip:'1090'},{label:'1140 Evere (Brussel)',name:'Evere (Brussel)',zip:'1140'},{label:'1150 Sint-Pieters-Woluwe (Brussel)',name:'Sint-Pieters-Woluwe (Brussel)',zip:'1150'},{label:'1160 Oudergem (Brussel)',name:'Oudergem (Brussel)',zip:'1160'},{label:'1170 Watermaal-Bosvoorde (Brussel)',name:'Watermaal-Bosvoorde (Brussel)',zip:'1170'},{label:'1180 Ukkel (Brussel)',name:'Ukkel (Brussel)',zip:'1180'},{label:'1190 Vorst (Brussel)',name:'Vorst (Brussel)',zip:'1190'},{label:'1200 Sint-Lambrechts-Woluwe (Brussel)',name:'Sint-Lambrechts-Woluwe (Brussel)',zip:'1200'},{label:'1210 Sint-Joost-Ten-Node (Brussel)',name:'Sint-Joost-Ten-Node (Brussel)',zip:'1210'},{label:'2970 \'s Gravenwezel (Schilde)',name:'\'s Gravenwezel (Schilde)',zip:'2970'},{label:'3700 \'s Herenelderen (Tongeren)',name:'\'s Herenelderen (Tongeren)',zip:'3700'},{label:'8200 Brugge 2 (Brugge)',name:'Brugge 2 (Brugge)',zip:'8200'},{label:'1130 Haren (Brussel)',name:'Haren (Brussel)',zip:'1130'},{label:'1020 Laken (Brussel)',name:'Laken (Brussel)',zip:'1020'},{label:'1120 Neder-Over-Heembeek (Brussel)',name:'Neder-Over-Heembeek (Brussel)',zip:'1120'},{label:'9700 Ooike (Oudenaarde)',name:'Ooike (Oudenaarde)',zip:'9700'},{label:'2960 Sint-Job-In-\'t-Goor (Brecht)',name:'Sint-Job-In-\'t-Goor (Brecht)',zip:'2960'},{label:'3300 Sint-Margriete-Houtem (Tienen)',name:'Sint-Margriete-Houtem (Tienen)',zip:'3300'},{label:'9660 Sint-Maria-Oudenhove (Brakel)',name:'Sint-Maria-Oudenhove (Brakel)',zip:'9660'},{label:'3470 Sint-Margriete (Kortenaken)',name:'Sint-Margriete (Kortenaken)',zip:'3470'},{label:'9620 Sint-Maria-Oudenhove (Zottegem)',name:'Sint-Maria-Oudenhove (Zottegem)',zip:'9620'},{label:'8433 Sint-Pieters-Kapelle (Middelkerke)',name:'Sint-Pieters-Kapelle (Middelkerke)',zip:'8433'},{label:'2260 Voortkapel (Westerlo)',name:'Voortkapel (Westerlo)',zip:'2260'},{label:'1541 Sint-Pieters-Kapelle (Herne)',name:'Sint-Pieters-Kapelle (Herne)',zip:'1541'},{label:'1547 Bever',name:'Bever',zip:'1547'},{label:'1601 Ruisbroek (Sint-Pieters-Leeuw)',name:'Ruisbroek (Sint-Pieters-Leeuw)',zip:'1601'},{label:'1640 Sint-Genesius-Rode',name:'Sint-Genesius-Rode',zip:'1640'},{label:'1785 Hamme (Merchtem)',name:'Hamme (Merchtem)',zip:'1785'},{label:'1830 Machelen',name:'Machelen',zip:'1830'},{label:'1910 Berg (Kampenhout)',name:'Berg (Kampenhout)',zip:'1910'},{label:'1981 Hofstade (Zemst)',name:'Hofstade (Zemst)',zip:'1981'},{label:'2018 Antwerpen 18 (Antwerpen)',name:'Antwerpen 18 (Antwerpen)',zip:'2018'},{label:'2020 Antwerpen 2 (Antwerpen)',name:'Antwerpen 2 (Antwerpen)',zip:'2020'},{label:'2030 Antwerpen 3 (Antwerpen)',name:'Antwerpen 3 (Antwerpen)',zip:'2030'},{label:'2050 Antwerpen 5 (Antwerpen)',name:'Antwerpen 5 (Antwerpen)',zip:'2050'},{label:'2060 Antwerpen 6 (Antwerpen)',name:'Antwerpen 6 (Antwerpen)',zip:'2060'},{label:'2150 Borsbeek',name:'Borsbeek',zip:'2150'},{label:'2260 Tongerlo (Westerlo)',name:'Tongerlo (Westerlo)',zip:'2260'},{label:'2430 Vorst (Laakdal)',name:'Vorst (Laakdal)',zip:'2430'},{label:'2812 Muizen (Mechelen)',name:'Muizen (Mechelen)',zip:'2812'},{label:'2870 Ruisbroek (Puurs-Sint-Amands)',name:'Ruisbroek (Puurs-Sint-Amands)',zip:'2870'},{label:'2880 Mariekerke (Bornem)',name:'Mariekerke (Bornem)',zip:'2880'},{label:'2950 Kapellen',name:'Kapellen',zip:'2950'},{label:'2960 Sint-Lenaarts (Brecht)',name:'Sint-Lenaarts (Brecht)',zip:'2960'},{label:'2980 Halle (Zoersel)',name:'Halle (Zoersel)',zip:'2980'},{label:'3018 Wijgmaal (Leuven)',name:'Wijgmaal (Leuven)',zip:'3018'},{label:'3220 Kortrijk-Dutsel (Holsbeek)',name:'Kortrijk-Dutsel (Holsbeek)',zip:'3220'},{label:'3290 Deurne (Diest)',name:'Deurne (Diest)',zip:'3290'},{label:'3320 Meldert (Hoegaarden)',name:'Meldert (Hoegaarden)',zip:'3320'},{label:'3380 Glabbeek',name:'Glabbeek',zip:'3380'},{label:'3381 Kapellen (Glabbeek)',name:'Kapellen (Glabbeek)',zip:'3381'},{label:'3390 Tielt (Tielt-Winge)',name:'Tielt (Tielt-Winge)',zip:'3390'},{label:'3550 Heusden (Heusden-Zolder)',name:'Heusden (Heusden-Zolder)',zip:'3550'},{label:'3560 Meldert (Lummen)',name:'Meldert (Lummen)',zip:'3560'},{label:'3700 Berg (Tongeren)',name:'Berg (Tongeren)',zip:'3700'},{label:'3700 Haren (Tongeren)',name:'Haren (Tongeren)',zip:'3700'},{label:'3700 Kolmont (Tongeren)',name:'Kolmont (Tongeren)',zip:'3700'},{label:'3700 Overrepen (Tongeren)',name:'Overrepen (Tongeren)',zip:'3700'},{label:'3700 Piringen (Tongeren)',name:'Piringen (Tongeren)',zip:'3700'},{label:'3700 Widooie (Tongeren)',name:'Widooie (Tongeren)',zip:'3700'},{label:'3790 Moelingen (Voeren)',name:'Moelingen (Voeren)',zip:'3790'},{label:'3790 Sint-Martens-Voeren (Voeren)',name:'Sint-Martens-Voeren (Voeren)',zip:'3790'},{label:'3790 Voeren',name:'Voeren',zip:'3790'},{label:'3792 Sint-Pieters-Voeren (Voeren)',name:'Sint-Pieters-Voeren (Voeren)',zip:'3792'},{label:'3798 \'s Gravenvoeren (Voeren)',name:'\'s Gravenvoeren (Voeren)',zip:'3798'},{label:'3800 Aalst (Sint-Truiden)',name:'Aalst (Sint-Truiden)',zip:'3800'},{label:'3840 Bommershoven (Borgloon)',name:'Bommershoven (Borgloon)',zip:'3840'},{label:'3840 Haren (Borgloon)',name:'Haren (Borgloon)',zip:'3840'},{label:'3840 Jesseren (Borgloon)',name:'Jesseren (Borgloon)',zip:'3840'},{label:'3840 Kolmont (Borgloon)',name:'Kolmont (Borgloon)',zip:'3840'},{label:'3850 Nieuwerkerken',name:'Nieuwerkerken',zip:'3850'},{label:'3891 Muizen (Gingelom)',name:'Muizen (Gingelom)',zip:'3891'},{label:'3960 Tongerlo (Bree)',name:'Tongerlo (Bree)',zip:'3960'},{label:'8301 Ramskapelle (Knokke-Heist)',name:'Ramskapelle (Knokke-Heist)',zip:'8301'},{label:'8340 Oostkerke (Damme)',name:'Oostkerke (Damme)',zip:'8340'},{label:'8400 Zandvoorde (Oostende)',name:'Zandvoorde (Oostende)',zip:'8400'},{label:'8420 De Haan',name:'De Haan',zip:'8420'},{label:'8587 Helkijn (Spiere-Helkijn)',name:'Helkijn (Spiere-Helkijn)',zip:'8587'},{label:'8587 Spiere (Spiere-Helkijn)',name:'Spiere (Spiere-Helkijn)',zip:'8587'},{label:'8587 Spiere-Helkijn',name:'Spiere-Helkijn',zip:'8587'},{label:'8600 Oostkerke (Diksmuide)',name:'Oostkerke (Diksmuide)',zip:'8600'},{label:'8620 Ramskapelle (Nieuwpoort)',name:'Ramskapelle (Nieuwpoort)',zip:'8620'},{label:'8620 Sint-Joris (Nieuwpoort)',name:'Sint-Joris (Nieuwpoort)',zip:'8620'},{label:'8630 De Moeren (Veurne)',name:'De Moeren (Veurne)',zip:'8630'},{label:'8630 Houtem (Veurne)',name:'Houtem (Veurne)',zip:'8630'},{label:'8630 Steenkerke (Veurne)',name:'Steenkerke (Veurne)',zip:'8630'},{label:'8660 De Panne',name:'De Panne',zip:'8660'},{label:'8730 Sint-Joris (Beernem)',name:'Sint-Joris (Beernem)',zip:'8730'},{label:'8791 Beveren-Leie (Waregem)',name:'Beveren-Leie (Waregem)',zip:'8791'},{label:'8800 Beveren (Roeselare)',name:'Beveren (Roeselare)',zip:'8800'},{label:'8957 Mesen',name:'Mesen',zip:'8957'},{label:'8980 Zandvoorde (Zonnebeke)',name:'Zandvoorde (Zonnebeke)',zip:'8980'},{label:'9070 Heusden (Destelbergen)',name:'Heusden (Destelbergen)',zip:'9070'},{label:'9120 Beveren-Waas',name:'Beveren-Waas',zip:'9120'},{label:'9120 Kallo (Beveren-Waas)',name:'Kallo (Beveren-Waas)',zip:'9120'},{label:'9130 Kallo (Kieldrecht - Beveren-Waas)',name:'Kallo (Kieldrecht - Beveren-Waas)',zip:'9130'},{label:'9170 De Klinge (Sint-Gillis-Waas)',name:'De Klinge (Sint-Gillis-Waas)',zip:'9170'},{label:'9200 Sint-Gillis-Bij-Dendermonde (Dendermonde)',name:'Sint-Gillis-Bij-Dendermonde (Dendermonde)',zip:'9200'},{label:'9220 Hamme',name:'Hamme',zip:'9220'},{label:'9308 Hofstade (Aalst)',name:'Hofstade (Aalst)',zip:'9308'},{label:'9310 Meldert (Aalst)',name:'Meldert (Aalst)',zip:'9310'},{label:'9600 Ronse',name:'Ronse',zip:'9600'},{label:'9620 Oombergen (Zottegem)',name:'Oombergen (Zottegem)',zip:'9620'},{label:'9690 Berchem (Kluisbergen)',name:'Berchem (Kluisbergen)',zip:'9690'},{label:'9790 Ooike (Wortegem-Petegem)',name:'Ooike (Wortegem-Petegem)',zip:'9790'},{label:'9840 De Pinte',name:'De Pinte',zip:'9840'},{label:'9870 Machelen (Zulte)',name:'Machelen (Zulte)',zip:'9870'},{label:'1320 l\'Ecluse',name:'l\'Ecluse',zip:'1320'},{label:'1420 Braine l\'Alleud',name:'Braine l\'Alleud',zip:'1420'},{label:'4217 Waret-l\'Evêque',name:'Waret-l\'Evêque',zip:'4217'},{label:'4340 Villers-l\'Evêque',name:'Villers-l\'Evêque',zip:'4340'},{label:'6140 Fontaine-l\'Evêque',name:'Fontaine-l\'Evêque',zip:'6140'},{label:'6464 l\'Escaillère',name:'l\'Escaillère',zip:'6464'},{label:'6560 Bersillies-l\'Abbaye',name:'Bersillies-l\'Abbaye',zip:'6560'},{label:'7170 Bois-d\'Haine',name:'Bois-d\'Haine',zip:'7170'},{label:'7190 Ecaussinnes-d\'Enghien',name:'Ecaussinnes-d\'Enghien',zip:'7190'},{label:'7750 Mont-de-l\'Enclus',name:'Mont-de-l\'Enclus',zip:'7750'},{label:'7822 Meslin-l\'Evêque',name:'Meslin-l\'Evêque',zip:'7822'},{label:'2260 Heultje (Westerlo)',name:'Heultje (Westerlo)',zip:'2260'},{label:'2260 Oosterwijk (Westerlo)',name:'Oosterwijk (Westerlo)',zip:'2260'},{label:'3650 Dilsen',name:'Dilsen',zip:'3650'},{label:'3650 Stokkem',name:'Stokkem',zip:'3650'},{label:'9520 Oombergen (Sint-Lievens-Houtem)',name:'Oombergen (Sint-Lievens-Houtem)',zip:'9520'},{label:'3270 Scherpenheuvel-Zichem',name:'Scherpenheuvel-Zichem',zip:'3270'},{label:'3900 Pelt',name:'Pelt',zip:'3900'},{label:'3660 Oudsbergen',name:'Oudsbergen',zip:'3660'},{label:'9920 Lievegem',name:'Lievegem',zip:'9920'},{label:'9750 Kruisem',name:'Kruisem',zip:'9750'},{label:'2870 Puurs-Sint-Amands',name:'Puurs-Sint-Amands',zip:'2870'}]) - -.constant('sapi3CitiesBE', [{name:'Brussels Hoofdstedelijk Gewest',key:'nis-01000'},{name:'Regio Brussel',key:'reg-brussel'},{name:'Anderlecht + deelgemeenten',key:'nis-21001'},{name:'Anderlecht (Anderlecht)',key:'nis-21001-Z'},{name:'Brussel + deelgemeenten',key:'nis-21004'},{name:'Brussel (Brussel)',key:'nis-21004-Z'},{name:'Elsene + deelgemeenten',key:'nis-21009'},{name:'Elsene (Elsene)',key:'nis-21009A'},{name:'Etterbeek + deelgemeenten',key:'nis-21005'},{name:'Etterbeek (Etterbeek)',key:'nis-21005A'},{name:'Evere + deelgemeenten',key:'nis-21006'},{name:'Evere (Evere)',key:'nis-21006A'},{name:'Ganshoren + deelgemeenten',key:'nis-21008'},{name:'Ganshoren (Ganshoren)',key:'nis-21008A'},{name:'Jette + deelgemeenten',key:'nis-21010'},{name:'Jette (Jette)',key:'nis-21010A'},{name:'Koekelberg + deelgemeenten',key:'nis-21011'},{name:'Koekelberg (Koekelberg)',key:'nis-21011A'},{name:'Oudergem + deelgemeenten',key:'nis-21002'},{name:'Oudergem (Oudergem)',key:'nis-21002A'},{name:'Schaarbeek + deelgemeenten',key:'nis-21015'},{name:'Schaarbeek (Schaarbeek)',key:'nis-21015A'},{name:'Sint-Agatha-Berchem + deelgemeenten',key:'nis-21003'},{name:'Sint-Agatha-Berchem (Sint-Agatha-Berchem)',key:'nis-21003A'},{name:'Sint-Gillis + deelgemeenten',key:'nis-21013'},{name:'Sint-Gillis (Sint-Gillis)',key:'nis-21013A'},{name:'Sint-Jans-Molenbeek + deelgemeenten',key:'nis-21012'},{name:'Sint-Jans-Molenbeek (Sint-Jans-Molenbeek)',key:'nis-21012A'},{name:'Sint-Joost-ten-Node + deelgemeenten',key:'nis-21014'},{name:'Sint-Joost-ten-Node (Sint-Joost-ten-Node)',key:'nis-21014A'},{name:'Sint-Lambrechts-Woluwe + deelgemeenten',key:'nis-21018'},{name:'Sint-Lambrechts-Woluwe (Sint-Lambrechts-Woluwe)',key:'nis-21018A'},{name:'Sint-Pieters-Woluwe + deelgemeenten',key:'nis-21019'},{name:'Sint-Pieters-Woluwe (Sint-Pieters-Woluwe)',key:'nis-21019A'},{name:'Ukkel + deelgemeenten',key:'nis-21016'},{name:'Ukkel (Ukkel)',key:'nis-21016A'},{name:'Vorst + deelgemeenten',key:'nis-21007'},{name:'Vorst (Vorst)',key:'nis-21007A'},{name:'Watermaal-Bosvoorde + deelgemeenten',key:'nis-21017'},{name:'Watermaal-Bosvoorde (Watermaal-Bosvoorde)',key:'nis-21017A'},{name:'Provincie Antwerpen',key:'nis-10000'},{name:'Regio Antwerpen',key:'reg-antwerpen'},{name:'Antwerpen + deelgemeenten',key:'nis-11002'},{name:'Antwerpen (Antwerpen)',key:'nis-11002-Z'},{name:'Berendrecht-Zandvliet-Lillo (Antwerpen)',key:'nis-11002-Y'},{name:'Ekeren (Antwerpen)',key:'nis-11002P'},{name:'Merksem (Antwerpen)',key:'nis-11002Q'},{name:'Deurne (Antwerpen)',key:'nis-11002R'},{name:'Berchem (Antwerpen)',key:'nis-11002T'},{name:'Borgerhout (Antwerpen)',key:'nis-11002S'},{name:'Wilrijk (Antwerpen)',key:'nis-11002U'},{name:'Hoboken (Antwerpen)',key:'nis-11002V'},{name:'Zwijndrecht + deelgemeenten',key:'nis-11056'},{name:'Burcht (Zwijndrecht)',key:'nis-11056B'},{name:'Zwijndrecht (Zwijndrecht)',key:'nis-11056A'},{name:'Borsbeek + deelgemeenten',key:'nis-11007'},{name:'Borsbeek (Borsbeek)',key:'nis-11007A'},{name:'Wommelgem + deelgemeenten',key:'nis-11052'},{name:'Wommelgem (Wommelgem)',key:'nis-11052A'},{name:'Boechout + deelgemeenten',key:'nis-11004'},{name:'Vremde (Boechout)',key:'nis-11004B'},{name:'Boechout (Boechout)',key:'nis-11004A'},{name:'Hove + deelgemeenten',key:'nis-11021'},{name:'Hove (Hove)',key:'nis-11021A'},{name:'Lint + deelgemeenten',key:'nis-11025'},{name:'Lint (Lint)',key:'nis-11025A'},{name:'Kontich + deelgemeenten',key:'nis-11024'},{name:'Kontich (Kontich)',key:'nis-11024A'},{name:'Waarloos (Kontich)',key:'nis-11024B'},{name:'Aartselaar + deelgemeenten',key:'nis-11001'},{name:'Aartselaar (Aartselaar)',key:'nis-11001A'},{name:'Mortsel + deelgemeenten',key:'nis-11029'},{name:'Mortsel (Mortsel)',key:'nis-11029A'},{name:'Edegem + deelgemeenten',key:'nis-11013'},{name:'Edegem (Edegem)',key:'nis-11013A'},{name:'Regio Mechelen',key:'reg-mechelen'},{name:'Mechelen + deelgemeenten',key:'nis-12025'},{name:'Hombeek (Mechelen)',key:'nis-12025B'},{name:'Mechelen (Mechelen)',key:'nis-12025A'},{name:'Walem (Mechelen)',key:'nis-12025E'},{name:'Leest (Mechelen)',key:'nis-12025C'},{name:'Heffen (Mechelen)',key:'nis-12025D'},{name:'Muizen (Mechelen)',key:'nis-12025F'},{name:'Regio Scheldeland Antwerpen',key:'reg-scheldeland-antwerpen'},{name:'Hemiksem + deelgemeenten',key:'nis-11018'},{name:'Hemiksem (Hemiksem)',key:'nis-11018A'},{name:'Schelle + deelgemeenten',key:'nis-11038'},{name:'Schelle (Schelle)',key:'nis-11038A'},{name:'Rumst + deelgemeenten',key:'nis-11037'},{name:'Rumst (Rumst)',key:'nis-11037A'},{name:'Terhagen (Rumst)',key:'nis-11037B'},{name:'Reet (Rumst)',key:'nis-11037C'},{name:'Niel + deelgemeenten',key:'nis-11030'},{name:'Niel (Niel)',key:'nis-11030A'},{name:'Boom + deelgemeenten',key:'nis-11005'},{name:'Boom (Boom)',key:'nis-11005A'},{name:'Willebroek + deelgemeenten',key:'nis-12040'},{name:'Willebroek (Willebroek)',key:'nis-12040A'},{name:'Heindonk (Willebroek)',key:'nis-12040B'},{name:'Blaasveld (Willebroek)',key:'nis-12040C'},{name:'Tisselt (Willebroek)',key:'nis-12040D'},{name:'Bornem + deelgemeenten',key:'nis-12007'},{name:'Bornem (Bornem)',key:'nis-12007A'},{name:'Hingene (Bornem)',key:'nis-12007B'},{name:'Weert (Bornem)',key:'nis-12007D'},{name:'Mariekerke (Bornem)',key:'nis-12007C'},{name:'Puurs-Sint-Amands + deelgemeenten',key:'nis-12041'},{name:'Breendonk (Puurs-Sint-Amands)',key:'nis-12030C'},{name:'Liezele (Puurs-Sint-Amands)',key:'nis-12030D'},{name:'Sint-Amands (Puurs-Sint-Amands)',key:'nis-12034A'},{name:'Lippelo (Puurs-Sint-Amands)',key:'nis-12034C'},{name:'Puurs (Puurs-Sint-Amands)',key:'nis-12030A'},{name:'Oppuurs (Puurs-Sint-Amands)',key:'nis-12034B'},{name:'Ruisbroek (Puurs-Sint-Amands)',key:'nis-12030B'},{name:'Provincie Vlaams-Brabant',key:'nis-20001'},{name:'Regio Groene Gordel',key:'reg-groene-gordel'},{name:'Vilvoorde + deelgemeenten',key:'nis-23088'},{name:'Peutie (Vilvoorde)',key:'nis-23088B'},{name:'Vilvoorde (Vilvoorde)',key:'nis-23088A'},{name:'Steenokkerzeel + deelgemeenten',key:'nis-23081'},{name:'Melsbroek (Steenokkerzeel)',key:'nis-23081B'},{name:'Perk (Steenokkerzeel)',key:'nis-23081C'},{name:'Steenokkerzeel (Steenokkerzeel)',key:'nis-23081A'},{name:'Machelen + deelgemeenten',key:'nis-23047'},{name:'Machelen (Machelen)',key:'nis-23047A'},{name:'Diegem (Machelen)',key:'nis-23047B'},{name:'Grimbergen + deelgemeenten',key:'nis-23025'},{name:'Grimbergen (Grimbergen)',key:'nis-23025A'},{name:'Strombeek-Bever (Grimbergen)',key:'nis-23025B'},{name:'Beigem (Grimbergen)',key:'nis-23025C'},{name:'Humbeek (Grimbergen)',key:'nis-23025D'},{name:'Meise + deelgemeenten',key:'nis-23050'},{name:'Meise (Meise)',key:'nis-23050A'},{name:'Wolvertem (Meise)',key:'nis-23050B'},{name:'Kapelle-op-den-Bos + deelgemeenten',key:'nis-23039'},{name:'Kapelle-op-den-Bos (Kapelle-op-den-Bos)',key:'nis-23039A'},{name:'Nieuwenrode (Kapelle-op-den-Bos)',key:'nis-23039B'},{name:'Ramsdonk (Kapelle-op-den-Bos)',key:'nis-23039C'},{name:'Kampenhout + deelgemeenten',key:'nis-23038'},{name:'Buken (Kampenhout)',key:'nis-23038B'},{name:'Kampenhout (Kampenhout)',key:'nis-23038A'},{name:'Nederokkerzeel (Kampenhout)',key:'nis-23038C'},{name:'Berg (Kampenhout)',key:'nis-23038D'},{name:'Zaventem + deelgemeenten',key:'nis-23094'},{name:'Zaventem (Zaventem)',key:'nis-23094A'},{name:'Nossegem (Zaventem)',key:'nis-23094B'},{name:'Sint-Stevens-Woluwe (Zaventem)',key:'nis-23094D'},{name:'Sterrebeek (Zaventem)',key:'nis-23094C'},{name:'Kraainem + deelgemeenten',key:'nis-23099'},{name:'Kraainem (Kraainem)',key:'nis-23099A'},{name:'Wezembeek-Oppem + deelgemeenten',key:'nis-23103'},{name:'Wezembeek-Oppem (Wezembeek-Oppem)',key:'nis-23103A'},{name:'Zemst + deelgemeenten',key:'nis-23096'},{name:'Zemst (Zemst)',key:'nis-23096A'},{name:'Hofstade (Zemst)',key:'nis-23096B'},{name:'Weerde (Zemst)',key:'nis-23096C'},{name:'Eppegem (Zemst)',key:'nis-23096E'},{name:'Elewijt (Zemst)',key:'nis-23096D'},{name:'Halle + deelgemeenten',key:'nis-23027'},{name:'Halle (Halle)',key:'nis-23027A'},{name:'Buizingen (Halle)',key:'nis-23027B'},{name:'Lembeek (Halle)',key:'nis-23027C'},{name:'Herne + deelgemeenten',key:'nis-23032'},{name:'Herne (Herne)',key:'nis-23032A'},{name:'Herfelingen (Herne)',key:'nis-23032B'},{name:'Sint-Pieters-Kapelle (Herne)',key:'nis-23032C'},{name:'Bever + deelgemeenten',key:'nis-23009'},{name:'Bever (Bever)',key:'nis-23009A'},{name:'Hoeilaart + deelgemeenten',key:'nis-23033'},{name:'Hoeilaart (Hoeilaart)',key:'nis-23033A'},{name:'Galmaarden + deelgemeenten',key:'nis-23023'},{name:'Galmaarden (Galmaarden)',key:'nis-23023A'},{name:'Vollezele (Galmaarden)',key:'nis-23023B'},{name:'Tollembeek (Galmaarden)',key:'nis-23023C'},{name:'Sint-Pieters-Leeuw + deelgemeenten',key:'nis-23077'},{name:'Oudenaken (Sint-Pieters-Leeuw)',key:'nis-23077B'},{name:'Sint-Laureins-Berchem (Sint-Pieters-Leeuw)',key:'nis-23077C'},{name:'Sint-Pieters-Leeuw (Sint-Pieters-Leeuw)',key:'nis-23077A'},{name:'Vlezenbeek (Sint-Pieters-Leeuw)',key:'nis-23077D'},{name:'Ruisbroek (Sint-Pieters-Leeuw)',key:'nis-23077E'},{name:'Drogenbos + deelgemeenten',key:'nis-23098'},{name:'Drogenbos (Drogenbos)',key:'nis-23098A'},{name:'Linkebeek + deelgemeenten',key:'nis-23100'},{name:'Linkebeek (Linkebeek)',key:'nis-23100A'},{name:'Sint-Genesius-Rode + deelgemeenten',key:'nis-23101'},{name:'Sint-Genesius-Rode (Sint-Genesius-Rode)',key:'nis-23101A'},{name:'Beersel + deelgemeenten',key:'nis-23003'},{name:'Alsemberg (Beersel)',key:'nis-23003B'},{name:'Lot (Beersel)',key:'nis-23003E'},{name:'Beersel (Beersel)',key:'nis-23003A'},{name:'Huizingen (Beersel)',key:'nis-23003D'},{name:'Dworp (Beersel)',key:'nis-23003C'},{name:'Pepingen + deelgemeenten',key:'nis-23064'},{name:'Pepingen (Pepingen)',key:'nis-23064A'},{name:'Elingen (Pepingen)',key:'nis-23064B'},{name:'Beert (Pepingen)',key:'nis-23064C'},{name:'Bellingen (Pepingen)',key:'nis-23064D'},{name:'Bogaarden (Pepingen)',key:'nis-23064E'},{name:'Heikruis (Pepingen)',key:'nis-23064F'},{name:'Dilbeek + deelgemeenten',key:'nis-23016'},{name:'Dilbeek (Dilbeek)',key:'nis-23016A'},{name:'Sint-Ulriks-Kapelle (Dilbeek)',key:'nis-23016B'},{name:'Groot-Bijgaarden (Dilbeek)',key:'nis-23016C'},{name:'Sint-Martens-Bodegem (Dilbeek)',key:'nis-23016F'},{name:'Schepdaal (Dilbeek)',key:'nis-23016E'},{name:'Itterbeek (Dilbeek)',key:'nis-23016D'},{name:'Asse + deelgemeenten',key:'nis-23002'},{name:'Mollem (Asse)',key:'nis-23002B'},{name:'Asse (Asse)',key:'nis-23002A'},{name:'Kobbegem (Asse)',key:'nis-23002C'},{name:'Bekkerzeel (Asse)',key:'nis-23002F'},{name:'Zellik (Asse)',key:'nis-23002E'},{name:'Relegem (Asse)',key:'nis-23002D'},{name:'Ternat + deelgemeenten',key:'nis-23086'},{name:'Ternat (Ternat)',key:'nis-23086A'},{name:'Wambeek (Ternat)',key:'nis-23086B'},{name:'Sint-Katherina-Lombeek (Ternat)',key:'nis-23086C'},{name:'Opwijk + deelgemeenten',key:'nis-23060'},{name:'Opwijk (Opwijk)',key:'nis-23060A'},{name:'Mazenzele (Opwijk)',key:'nis-23060B'},{name:'Lennik + deelgemeenten',key:'nis-23104'},{name:'Sint-Martens-Lennik (Lennik)',key:'nis-23104B'},{name:'Sint-Kwintens-Lennik (Lennik)',key:'nis-23104A'},{name:'Gaasbeek (Lennik)',key:'nis-23104C'},{name:'Gooik + deelgemeenten',key:'nis-23024'},{name:'Leerbeek (Gooik)',key:'nis-23024B'},{name:'Oetingen (Gooik)',key:'nis-23024C'},{name:'Gooik (Gooik)',key:'nis-23024A'},{name:'Kester (Gooik)',key:'nis-23024D'},{name:'Roosdaal + deelgemeenten',key:'nis-23097'},{name:'Strijtem (Roosdaal)',key:'nis-23097A-II'},{name:'Onze-Lieve-Vrouw-Lombeek (Roosdaal)',key:'nis-23097A-III'},{name:'Borchtlombeek (Roosdaal)',key:'nis-23097B'},{name:'Pamel (Roosdaal)',key:'nis-23097A-I'},{name:'Liedekerke + deelgemeenten',key:'nis-23044'},{name:'Liedekerke (Liedekerke)',key:'nis-23044A'},{name:'Wemmel + deelgemeenten',key:'nis-23102'},{name:'Wemmel (Wemmel)',key:'nis-23102A'},{name:'Merchtem + deelgemeenten',key:'nis-23052'},{name:'Brussegem (Merchtem)',key:'nis-23052B'},{name:'Merchtem (Merchtem)',key:'nis-23052A'},{name:'Hamme (Merchtem)',key:'nis-23052C'},{name:'Affligem + deelgemeenten',key:'nis-23105'},{name:'Hekelgem (Affligem)',key:'nis-23105A'},{name:'Essene (Affligem)',key:'nis-23105B'},{name:'Teralfene (Affligem)',key:'nis-23105C'},{name:'Londerzeel + deelgemeenten',key:'nis-23045'},{name:'Londerzeel (Londerzeel)',key:'nis-23045A'},{name:'Malderen (Londerzeel)',key:'nis-23045B'},{name:'Steenhuffel (Londerzeel)',key:'nis-23045C'},{name:'Herent + deelgemeenten',key:'nis-24038'},{name:'Herent (Herent)',key:'nis-24038A'},{name:'Winksele (Herent)',key:'nis-24038B'},{name:'Veltem-Beisem (Herent)',key:'nis-24038C'},{name:'Huldenberg + deelgemeenten',key:'nis-24045'},{name:'Loonbeek (Huldenberg)',key:'nis-24045B'},{name:'Huldenberg (Huldenberg)',key:'nis-24045A'},{name:'Neerijse (Huldenberg)',key:'nis-24045C'},{name:'Sint-Agatha-Rode (Huldenberg)',key:'nis-24045D'},{name:'Ottenburg (Huldenberg)',key:'nis-24045E'},{name:'Oud-Heverlee + deelgemeenten',key:'nis-24086'},{name:'Oud-Heverlee (Oud-Heverlee)',key:'nis-24086A'},{name:'Vaalbeek (Oud-Heverlee)',key:'nis-24086B'},{name:'Blanden (Oud-Heverlee)',key:'nis-24086C'},{name:'Haasrode (Oud-Heverlee)',key:'nis-24086D'},{name:'Sint-Joris-Weert (Oud-Heverlee)',key:'nis-24086E'},{name:'Bertem + deelgemeenten',key:'nis-24009'},{name:'Bertem (Bertem)',key:'nis-24009A'},{name:'Korbeek-Dijle (Bertem)',key:'nis-24009B'},{name:'Leefdaal (Bertem)',key:'nis-24009C'},{name:'Kortenberg + deelgemeenten',key:'nis-24055'},{name:'Kortenberg (Kortenberg)',key:'nis-24055A'},{name:'Meerbeek (Kortenberg)',key:'nis-24055C'},{name:'Erps-Kwerps (Kortenberg)',key:'nis-24055B'},{name:'Everberg (Kortenberg)',key:'nis-24055D'},{name:'Tervuren + deelgemeenten',key:'nis-24104'},{name:'Tervuren (Tervuren)',key:'nis-24104A'},{name:'Vossem (Tervuren)',key:'nis-24104B'},{name:'Duisburg (Tervuren)',key:'nis-24104C'},{name:'Overijse + deelgemeenten',key:'nis-23062'},{name:'Overijse (Overijse)',key:'nis-23062A'},{name:'Keerbergen + deelgemeenten',key:'nis-24048'},{name:'Keerbergen (Keerbergen)',key:'nis-24048A'},{name:'Haacht + deelgemeenten',key:'nis-24033'},{name:'Haacht (Haacht)',key:'nis-24033A'},{name:'Tildonk (Haacht)',key:'nis-24033B'},{name:'Wespelaar (Haacht)',key:'nis-24033C'},{name:'Boortmeerbeek + deelgemeenten',key:'nis-24014'},{name:'Boortmeerbeek (Boortmeerbeek)',key:'nis-24014A'},{name:'Hever (Boortmeerbeek)',key:'nis-24014B'},{name:'Regio Hageland',key:'reg-hageland'},{name:'Aarschot + deelgemeenten',key:'nis-24001'},{name:'Aarschot (Aarschot)',key:'nis-24001A'},{name:'Langdorp (Aarschot)',key:'nis-24001B'},{name:'Rillaar (Aarschot)',key:'nis-24001C'},{name:'Gelrode (Aarschot)',key:'nis-24001D'},{name:'Scherpenheuvel-Zichem + deelgemeenten',key:'nis-24134'},{name:'Scherpenheuvel (Scherpenheuvel-Zichem)',key:'nis-24134-Z'},{name:'Zichem (Scherpenheuvel-Zichem)',key:'nis-24134B'},{name:'Messelbroek (Scherpenheuvel-Zichem)',key:'nis-24134C'},{name:'Testelt (Scherpenheuvel-Zichem)',key:'nis-24134D'},{name:'Averbode (Scherpenheuvel-Zichem)',key:'nis-24134E'},{name:'Diest + deelgemeenten',key:'nis-24020'},{name:'Diest (Diest)',key:'nis-24020A'},{name:'Webbekom (Diest)',key:'nis-24020B'},{name:'Kaggevinne (Diest)',key:'nis-24020C'},{name:'Molenstede (Diest)',key:'nis-24020D'},{name:'Schaffen (Diest)',key:'nis-24020E'},{name:'Deurne (Diest)',key:'nis-24020F'},{name:'Tienen + deelgemeenten',key:'nis-24107'},{name:'Tienen (Tienen)',key:'nis-24107A'},{name:'Oorbeek (Tienen)',key:'nis-24107B'},{name:'Bost (Tienen)',key:'nis-24107C'},{name:'Kumtich (Tienen)',key:'nis-24107D'},{name:'Vissenaken (Tienen)',key:'nis-24107E'},{name:'Sint-Margriete-Houtem (Tienen)',key:'nis-24107F'},{name:'Oplinter (Tienen)',key:'nis-24107G'},{name:'Goetsenhoven (Tienen)',key:'nis-24107J'},{name:'Hakendover (Tienen)',key:'nis-24107H'},{name:'Hoegaarden + deelgemeenten',key:'nis-24041'},{name:'Hoegaarden (Hoegaarden)',key:'nis-24041A'},{name:'Meldert (Hoegaarden)',key:'nis-24041B'},{name:'Outgaarden (Hoegaarden)',key:'nis-24041C'},{name:'Linter + deelgemeenten',key:'nis-24133'},{name:'Drieslinter (Linter)',key:'nis-24133A'},{name:'Neerlinter (Linter)',key:'nis-24133B'},{name:'Orsmaal-Gussenhoven (Linter)',key:'nis-24133C'},{name:'Melkwezer (Linter)',key:'nis-24133D'},{name:'Neerhespen (Linter)',key:'nis-24133E'},{name:'Overhespen (Linter)',key:'nis-24133F'},{name:'Wommersom (Linter)',key:'nis-24133G'},{name:'Glabbeek + deelgemeenten',key:'nis-24137'},{name:'Glabbeek-Zuurbemde (Glabbeek)',key:'nis-24137A'},{name:'Attenrode (Glabbeek)',key:'nis-24137B'},{name:'Bunsbeek (Glabbeek)',key:'nis-24137C'},{name:'Kapellen (Glabbeek)',key:'nis-24137D'},{name:'Tielt-Winge + deelgemeenten',key:'nis-24135'},{name:'Tielt (Tielt-Winge)',key:'nis-24135A'},{name:'Meensel-Kiezegem (Tielt-Winge)',key:'nis-24135B'},{name:'Sint-Joris-Winge (Tielt-Winge)',key:'nis-24135C'},{name:'Houwaart (Tielt-Winge)',key:'nis-24135D'},{name:'Zoutleeuw + deelgemeenten',key:'nis-24130'},{name:'Zoutleeuw (Zoutleeuw)',key:'nis-24130A'},{name:'Helen-Bos (Zoutleeuw)',key:'nis-24130B'},{name:'Halle-Booienhoven (Zoutleeuw)',key:'nis-24130C'},{name:'Dormaal (Zoutleeuw)',key:'nis-24130D'},{name:'Budingen (Zoutleeuw)',key:'nis-24130E'},{name:'Geetbets + deelgemeenten',key:'nis-24028'},{name:'Geetbets (Geetbets)',key:'nis-24028A'},{name:'Grazen (Geetbets)',key:'nis-24028C'},{name:'Rummen (Geetbets)',key:'nis-24028B'},{name:'Bekkevoort + deelgemeenten',key:'nis-24008'},{name:'Bekkevoort (Bekkevoort)',key:'nis-24008A'},{name:'Assent (Bekkevoort)',key:'nis-24008B'},{name:'Molenbeek-Wersbeek (Bekkevoort)',key:'nis-24008C'},{name:'Kortenaken + deelgemeenten',key:'nis-24054'},{name:'Ransberg (Kortenaken)',key:'nis-24054B'},{name:'Kortenaken (Kortenaken)',key:'nis-24054A'},{name:'Kersbeek-Miskom (Kortenaken)',key:'nis-24054D'},{name:'Waanrode (Kortenaken)',key:'nis-24054E'},{name:'Hoeleden (Kortenaken)',key:'nis-24054C'},{name:'Rotselaar + deelgemeenten',key:'nis-24094'},{name:'Rotselaar (Rotselaar)',key:'nis-24094A'},{name:'Werchter (Rotselaar)',key:'nis-24094B'},{name:'Wezemaal (Rotselaar)',key:'nis-24094C'},{name:'Tremelo + deelgemeenten',key:'nis-24109'},{name:'Tremelo (Tremelo)',key:'nis-24109A'},{name:'Baal (Tremelo)',key:'nis-24109B'},{name:'Begijnendijk + deelgemeenten',key:'nis-24007'},{name:'Begijnendijk (Begijnendijk)',key:'nis-24007A'},{name:'Betekom (Begijnendijk)',key:'nis-24007B'},{name:'Lubbeek + deelgemeenten',key:'nis-24066'},{name:'Lubbeek (Lubbeek)',key:'nis-24066A'},{name:'Binkom (Lubbeek)',key:'nis-24066B'},{name:'Pellenberg (Lubbeek)',key:'nis-24066C'},{name:'Linden (Lubbeek)',key:'nis-24066D'},{name:'Holsbeek + deelgemeenten',key:'nis-24043'},{name:'Holsbeek (Holsbeek)',key:'nis-24043A'},{name:'Kortrijk-Dutsel (Holsbeek)',key:'nis-24043B'},{name:'Sint-Pieters-Rode (Holsbeek)',key:'nis-24043D'},{name:'Nieuwrode (Holsbeek)',key:'nis-24043C'},{name:'Bierbeek + deelgemeenten',key:'nis-24011'},{name:'Bierbeek (Bierbeek)',key:'nis-24011A'},{name:'Korbeek-Lo (Bierbeek)',key:'nis-24011B'},{name:'Lovenjoel (Bierbeek)',key:'nis-24011C'},{name:'Opvelp (Bierbeek)',key:'nis-24011D'},{name:'Boutersem + deelgemeenten',key:'nis-24016'},{name:'Boutersem (Boutersem)',key:'nis-24016A-I'},{name:'Vertrijk (Boutersem)',key:'nis-24016A-II'},{name:'Kerkom (Boutersem)',key:'nis-24016B'},{name:'Willebringen (Boutersem)',key:'nis-24016D-II'},{name:'Roosbeek (Boutersem)',key:'nis-24016C'},{name:'Neervelp (Boutersem)',key:'nis-24016D-I'},{name:'Regio Leuven',key:'reg-leuven'},{name:'Leuven + deelgemeenten',key:'nis-24062'},{name:'Wilsele (Leuven)',key:'nis-24062-Y'},{name:'Heverlee (Leuven)',key:'nis-24062-Z'},{name:'Leuven (Leuven)',key:'nis-24062A'},{name:'Kessel-Lo (Leuven)',key:'nis-24062C'},{name:'Provincie Waals-Brabant',key:'nis-20002'},{name:'Regio Waals-Brabant',key:'reg-waals-brabant'},{name:'Bevekom + deelgemeenten',key:'nis-25005'},{name:'Beauvechain (Bevekom)',key:'nis-25005A'},{name:'L"Écluse (Bevekom)',key:'nis-25005B'},{name:'Tourinnes-la-Grosse (Bevekom)',key:'nis-25005C'},{name:'Hamme-Mille (Bevekom)',key:'nis-25005E'},{name:'Nodebais (Bevekom)',key:'nis-25005D'},{name:'Chastre + deelgemeenten',key:'nis-25117'},{name:'Chastre-Villeroux-Blanmont (Chastre)',key:'nis-25117A'},{name:'Saint-Géry (Chastre)',key:'nis-25117C'},{name:'Cortil-Noirmont (Chastre)',key:'nis-25117B'},{name:'Gentinnes (Chastre)',key:'nis-25117D'},{name:'Chaumont-Gistoux + deelgemeenten',key:'nis-25018'},{name:'Chaumont-Gistoux (Chaumont-Gistoux)',key:'nis-25018A'},{name:'Corroy-le-Grand (Chaumont-Gistoux)',key:'nis-25018B'},{name:'Dion-le-Mont (Chaumont-Gistoux)',key:'nis-25018C'},{name:'Dion-le-Val (Chaumont-Gistoux)',key:'nis-25018D'},{name:'Bonlez (Chaumont-Gistoux)',key:'nis-25018E'},{name:'Longueville (Chaumont-Gistoux)',key:'nis-25018F'},{name:'Court-Saint-Etienne + deelgemeenten',key:'nis-25023'},{name:'Court-Saint-Étienne (Court-Saint-Etienne)',key:'nis-25023A'},{name:'Eigenbrakel + deelgemeenten',key:'nis-25014'},{name:'Lillois-Witterzée (Eigenbrakel)',key:'nis-25014B'},{name:'Braine-l"Alleud (Eigenbrakel)',key:'nis-25014A'},{name:'Ophain-Bois-Seigneur-Isaac (Eigenbrakel)',key:'nis-25014C'},{name:'Geldenaken + deelgemeenten',key:'nis-25048'},{name:'Jodoigne (Geldenaken)',key:'nis-25048A'},{name:'Jodoigne-Souveraine (Geldenaken)',key:'nis-25048B'},{name:'Jauchelette (Geldenaken)',key:'nis-25048C'},{name:'Dongelberg (Geldenaken)',key:'nis-25048D'},{name:'Lathuy (Geldenaken)',key:'nis-25048E'},{name:'Mélin (Geldenaken)',key:'nis-25048F'},{name:'Saint-Remy-Geest (Geldenaken)',key:'nis-25048G'},{name:'Zétrud-Lumay (Geldenaken)',key:'nis-25048H'},{name:'Saint-Jean-Geest (Geldenaken)',key:'nis-25048J'},{name:'Piétrain (Geldenaken)',key:'nis-25048K'},{name:'Genepien + deelgemeenten',key:'nis-25031'},{name:'Genappe (Genepien)',key:'nis-25031A'},{name:'Loupoigne (Genepien)',key:'nis-25031C'},{name:'Houtain-le-Val (Genepien)',key:'nis-25031D'},{name:'Baisy-Thy (Genepien)',key:'nis-25031B'},{name:'Glabais (Genepien)',key:'nis-25031F'},{name:'Vieux-Genappe (Genepien)',key:'nis-25031E'},{name:'Ways (Genepien)',key:'nis-25031G'},{name:'Bousval (Genepien)',key:'nis-25031H'},{name:'Graven + deelgemeenten',key:'nis-25037'},{name:'Archennes (Graven)',key:'nis-25037B'},{name:'Grez-Doiceau (Graven)',key:'nis-25037A'},{name:'Biez (Graven)',key:'nis-25037C'},{name:'Bossut-Gottechain (Graven)',key:'nis-25037D'},{name:'Nethen (Graven)',key:'nis-25037E'},{name:'Hélécine + deelgemeenten',key:'nis-25118'},{name:'Neerheylissem (Hélécine)',key:'nis-25118A'},{name:'Opheylissem (Hélécine)',key:'nis-25118B'},{name:'Linsmeau (Hélécine)',key:'nis-25118C'},{name:'Incourt + deelgemeenten',key:'nis-25043'},{name:'Incourt (Incourt)',key:'nis-25043A'},{name:'Opprebais (Incourt)',key:'nis-25043C'},{name:'Glimes (Incourt)',key:'nis-25043B'},{name:'Roux-Miroir (Incourt)',key:'nis-25043D'},{name:'Piètrebais (Incourt)',key:'nis-25043E'},{name:'Itter + deelgemeenten',key:'nis-25044'},{name:'Ittre (Itter)',key:'nis-25044A'},{name:'Haut-Ittre (Itter)',key:'nis-25044B'},{name:'Virginal-Samme (Itter)',key:'nis-25044C'},{name:'Kasteelbrakel + deelgemeenten',key:'nis-25015'},{name:'Braine-le-Château (Kasteelbrakel)',key:'nis-25015A'},{name:'Wauthier-Braine (Kasteelbrakel)',key:'nis-25015B'},{name:'Lasne + deelgemeenten',key:'nis-25119'},{name:'Lasne-Chapelle-Saint-Lambert (Lasne)',key:'nis-25119A'},{name:'Maransart (Lasne)',key:'nis-25119C'},{name:'Couture-Saint-Germain (Lasne)',key:'nis-25119B'},{name:'Ohain (Lasne)',key:'nis-25119D'},{name:'Plancenoit (Lasne)',key:'nis-25119E'},{name:'Mont-Saint-Guibert + deelgemeenten',key:'nis-25068'},{name:'Mont-Saint-Guibert (Mont-Saint-Guibert)',key:'nis-25068A'},{name:'Corbais (Mont-Saint-Guibert)',key:'nis-25068B'},{name:'Hévillers (Mont-Saint-Guibert)',key:'nis-25068C'},{name:'Nijvel + deelgemeenten',key:'nis-25072'},{name:'Nivelles (Nijvel)',key:'nis-25072A'},{name:'Baulers (Nijvel)',key:'nis-25072B'},{name:'Thines (Nijvel)',key:'nis-25072C'},{name:'Monstreux (Nijvel)',key:'nis-25072D'},{name:'Bornival (Nijvel)',key:'nis-25072E'},{name:'Orp-Jauche + deelgemeenten',key:'nis-25120'},{name:'Orp-le-Grand (Orp-Jauche)',key:'nis-25120A'},{name:'Jandrain-Jandrenouille (Orp-Jauche)',key:'nis-25120B'},{name:'Folx-les-Caves (Orp-Jauche)',key:'nis-25120D'},{name:'Marilles (Orp-Jauche)',key:'nis-25120F'},{name:'Énines (Orp-Jauche)',key:'nis-25120E'},{name:'Jauche (Orp-Jauche)',key:'nis-25120C'},{name:'Noduwez (Orp-Jauche)',key:'nis-25120G'},{name:'Ottignies-Louvain-la-Neuve + deelgemeenten',key:'nis-25121'},{name:'Limelette (Ottignies-Louvain-la-Neuve)',key:'nis-25121C'},{name:'Ottignies (Ottignies-Louvain-la-Neuve)',key:'nis-25121-Z'},{name:'Céroux-Mousty (Ottignies-Louvain-la-Neuve)',key:'nis-25121B'},{name:'Perwijs + deelgemeenten',key:'nis-25084'},{name:'Perwez (Perwijs)',key:'nis-25084A'},{name:'Thorembais-Saint-Trond (Perwijs)',key:'nis-25084B'},{name:'Orbais (Perwijs)',key:'nis-25084C'},{name:'Malèves-Sainte-Marie-Wastines (Perwijs)',key:'nis-25084D'},{name:'Thorembais-les-Béguines (Perwijs)',key:'nis-25084E'},{name:'Ramillies + deelgemeenten',key:'nis-25122'},{name:'Grand-Rosière-Hottomont (Ramillies)',key:'nis-25122B'},{name:'Ramillies-Offus (Ramillies)',key:'nis-25122A'},{name:'Geest-Gérompont-Petit-Rosière (Ramillies)',key:'nis-25122C'},{name:'Autre-Église (Ramillies)',key:'nis-25122F'},{name:'Huppaye (Ramillies)',key:'nis-25122G'},{name:'Mont-Saint-André (Ramillies)',key:'nis-25122D'},{name:'Bomal (Ramillies)',key:'nis-25122E'},{name:'Rebecq + deelgemeenten',key:'nis-25123'},{name:'Bierghes (Rebecq)',key:'nis-25123-Z'},{name:'Rebecq-Rognon (Rebecq)',key:'nis-25123A'},{name:'Quenast (Rebecq)',key:'nis-25123C'},{name:'Rixensart + deelgemeenten',key:'nis-25091'},{name:'Rixensart (Rixensart)',key:'nis-25091A'},{name:'Genval (Rixensart)',key:'nis-25091B'},{name:'Rosières (Rixensart)',key:'nis-25091C'},{name:'Terhulpen + deelgemeenten',key:'nis-25050'},{name:'La Hulpe (Terhulpen)',key:'nis-25050A'},{name:'Tubeke + deelgemeenten',key:'nis-25105'},{name:'Tubize (Tubeke)',key:'nis-25105A'},{name:'Oisquercq (Tubeke)',key:'nis-25105B'},{name:'Clabecq (Tubeke)',key:'nis-25105C'},{name:'Saintes (Tubeke)',key:'nis-25105D'},{name:'Villers-la-Ville + deelgemeenten',key:'nis-25107'},{name:'Villers-la-Ville (Villers-la-Ville)',key:'nis-25107A'},{name:'Tilly (Villers-la-Ville)',key:'nis-25107B'},{name:'Mellery (Villers-la-Ville)',key:'nis-25107C'},{name:'Marbais (Villers-la-Ville)',key:'nis-25107D'},{name:'Sart-Dames-Avelines (Villers-la-Ville)',key:'nis-25107E'},{name:'Walhain + deelgemeenten',key:'nis-25124'},{name:'Walhain-Saint-Paul (Walhain)',key:'nis-25124A'},{name:'Tourinnes-Saint-Lambert (Walhain)',key:'nis-25124C'},{name:'Nil-Saint-Vincent-Saint-Martin (Walhain)',key:'nis-25124B'},{name:'Waterloo + deelgemeenten',key:'nis-25110'},{name:'Waterloo (Waterloo)',key:'nis-25110A'},{name:'Waver + deelgemeenten',key:'nis-25112'},{name:'Wavre (Waver)',key:'nis-25112A'},{name:'Bierges (Waver)',key:'nis-25112B'},{name:'Limal (Waver)',key:'nis-25112C'},{name:'Provincie West-Vlaanderen',key:'nis-30000'},{name:'Regio Brugge',key:'reg-brugge'},{name:'Brugge + deelgemeenten',key:'nis-31005'},{name:'Brugge (Brugge)',key:'nis-31005A'},{name:'Lissewege (Brugge)',key:'nis-31005B'},{name:'Dudzele (Brugge)',key:'nis-31005C'},{name:'Koolkerke (Brugge)',key:'nis-31005D'},{name:'Sint-Kruis (Brugge)',key:'nis-31005E'},{name:'Assebroek (Brugge)',key:'nis-31005F'},{name:'Sint-Michiels (Brugge)',key:'nis-31005G'},{name:'Sint-Andries (Brugge)',key:'nis-31005H'},{name:'Regio Brugse Ommeland',key:'reg-brugse-ommeland'},{name:'Oostkamp + deelgemeenten',key:'nis-31022'},{name:'Oostkamp (Oostkamp)',key:'nis-31022A'},{name:'Hertsberge (Oostkamp)',key:'nis-31022B'},{name:'Waardamme (Oostkamp)',key:'nis-31022D'},{name:'Ruddervoorde (Oostkamp)',key:'nis-31022C'},{name:'Zedelgem + deelgemeenten',key:'nis-31040'},{name:'Zedelgem (Zedelgem)',key:'nis-31040A'},{name:'Loppem (Zedelgem)',key:'nis-31040B'},{name:'Veldegem (Zedelgem)',key:'nis-31040C'},{name:'Aartrijke (Zedelgem)',key:'nis-31040D'},{name:'Damme + deelgemeenten',key:'nis-31006'},{name:'Damme (Damme)',key:'nis-31006-Z'},{name:'Hoeke (Damme)',key:'nis-31006C-I'},{name:'Oostkerke (Damme)',key:'nis-31006C-II'},{name:'Sijsele (Damme)',key:'nis-31006F'},{name:'Lapscheure (Damme)',key:'nis-31006D'},{name:'Moerkerke (Damme)',key:'nis-31006E'},{name:'Zuienkerke + deelgemeenten',key:'nis-31042'},{name:'Meetkerke (Zuienkerke)',key:'nis-31042B'},{name:'Zuienkerke (Zuienkerke)',key:'nis-31042A'},{name:'Houtave (Zuienkerke)',key:'nis-31042C'},{name:'Nieuwmunster (Zuienkerke)',key:'nis-31042D'},{name:'Ichtegem + deelgemeenten',key:'nis-35006'},{name:'Ichtegem (Ichtegem)',key:'nis-35006A'},{name:'Eernegem (Ichtegem)',key:'nis-35006B'},{name:'Bekegem (Ichtegem)',key:'nis-35006C'},{name:'Jabbeke + deelgemeenten',key:'nis-31012'},{name:'Jabbeke (Jabbeke)',key:'nis-31012A'},{name:'Zerkegem (Jabbeke)',key:'nis-31012B'},{name:'Stalhille (Jabbeke)',key:'nis-31012C'},{name:'Varsenare (Jabbeke)',key:'nis-31012D'},{name:'Snellegem (Jabbeke)',key:'nis-31012E'},{name:'Beernem + deelgemeenten',key:'nis-31003'},{name:'Oedelem (Beernem)',key:'nis-31003B'},{name:'Beernem (Beernem)',key:'nis-31003A'},{name:'Sint-Joris (Beernem)',key:'nis-31003C'},{name:'Torhout + deelgemeenten',key:'nis-31033'},{name:'Torhout (Torhout)',key:'nis-31033-Z'},{name:'Oudenburg + deelgemeenten',key:'nis-35014'},{name:'Oudenburg (Oudenburg)',key:'nis-35014A'},{name:'Ettelgem (Oudenburg)',key:'nis-35014B'},{name:'Roksem (Oudenburg)',key:'nis-35014C'},{name:'Westkerke (Oudenburg)',key:'nis-35014D'},{name:'Gistel + deelgemeenten',key:'nis-35005'},{name:'Gistel (Gistel)',key:'nis-35005A'},{name:'Moere (Gistel)',key:'nis-35005B'},{name:'Zevekote (Gistel)',key:'nis-35005C'},{name:'Snaaskerke (Gistel)',key:'nis-35005D'},{name:'Lichtervelde + deelgemeenten',key:'nis-36011'},{name:'Lichtervelde (Lichtervelde)',key:'nis-36011A'},{name:'Tielt + deelgemeenten',key:'nis-37015'},{name:'Schuiferskapelle (Tielt)',key:'nis-37015B'},{name:'Tielt (Tielt)',key:'nis-37015A'},{name:'Kanegem (Tielt)',key:'nis-37015C'},{name:'Aarsele (Tielt)',key:'nis-37015D'},{name:'Pittem + deelgemeenten',key:'nis-37011'},{name:'Egem (Pittem)',key:'nis-37011B'},{name:'Pittem (Pittem)',key:'nis-37011A'},{name:'Wingene + deelgemeenten',key:'nis-37018'},{name:'Wingene (Wingene)',key:'nis-37018A'},{name:'Zwevezele (Wingene)',key:'nis-37018B'},{name:'Ruiselede + deelgemeenten',key:'nis-37012'},{name:'Ruiselede (Ruiselede)',key:'nis-37012A'},{name:'Ardooie + deelgemeenten',key:'nis-37020'},{name:'Ardooie (Ardooie)',key:'nis-37020A'},{name:'Koolskamp (Ardooie)',key:'nis-37020B'},{name:'Regio Leiestreek West-Vlaanderen',key:'reg-leiestreek-west-vlaanderen'},{name:'Ingelmunster + deelgemeenten',key:'nis-36007'},{name:'Ingelmunster (Ingelmunster)',key:'nis-36007A'},{name:'Roeselare + deelgemeenten',key:'nis-36015'},{name:'Beveren (Roeselare)',key:'nis-36015A-II'},{name:'Roeselare (Roeselare)',key:'nis-36015A-I'},{name:'Oekene (Roeselare)',key:'nis-36015B'},{name:'Rumbeke (Roeselare)',key:'nis-36015C'},{name:'Izegem + deelgemeenten',key:'nis-36008'},{name:'Emelgem (Izegem)',key:'nis-36008A-II'},{name:'Izegem (Izegem)',key:'nis-36008A-I'},{name:'Kachtem (Izegem)',key:'nis-36008B'},{name:'Ledegem + deelgemeenten',key:'nis-36010'},{name:'Ledegem (Ledegem)',key:'nis-36010A'},{name:'Rollegem-Kapelle (Ledegem)',key:'nis-36010B'},{name:'Sint-Eloois-Winkel (Ledegem)',key:'nis-36010C'},{name:'Moorslede + deelgemeenten',key:'nis-36012'},{name:'Moorslede (Moorslede)',key:'nis-36012A'},{name:'Dadizele (Moorslede)',key:'nis-36012B'},{name:'Wielsbeke + deelgemeenten',key:'nis-37017'},{name:'Wielsbeke (Wielsbeke)',key:'nis-37017A'},{name:'Ooigem (Wielsbeke)',key:'nis-37017B'},{name:'Sint-Baafs-Vijve (Wielsbeke)',key:'nis-37017C'},{name:'Dentergem + deelgemeenten',key:'nis-37002'},{name:'Dentergem (Dentergem)',key:'nis-37002A'},{name:'Markegem (Dentergem)',key:'nis-37002B'},{name:'Oeselgem (Dentergem)',key:'nis-37002C'},{name:'Wakken (Dentergem)',key:'nis-37002D'},{name:'Meulebeke + deelgemeenten',key:'nis-37007'},{name:'Meulebeke (Meulebeke)',key:'nis-37007A'},{name:'Oostrozebeke + deelgemeenten',key:'nis-37010'},{name:'Oostrozebeke (Oostrozebeke)',key:'nis-37010A'},{name:'Kortrijk + deelgemeenten',key:'nis-34022'},{name:'Kortrijk (Kortrijk)',key:'nis-34022A'},{name:'Heule (Kortrijk)',key:'nis-34022B'},{name:'Bissegem (Kortrijk)',key:'nis-34022C'},{name:'Marke (Kortrijk)',key:'nis-34022D'},{name:'Aalbeke (Kortrijk)',key:'nis-34022E'},{name:'Rollegem (Kortrijk)',key:'nis-34022F'},{name:'Bellegem (Kortrijk)',key:'nis-34022G'},{name:'Kooigem (Kortrijk)',key:'nis-34022H'},{name:'Kuurne + deelgemeenten',key:'nis-34023'},{name:'Kuurne (Kuurne)',key:'nis-34023A'},{name:'Harelbeke + deelgemeenten',key:'nis-34013'},{name:'Bavikhove (Harelbeke)',key:'nis-34013B'},{name:'Harelbeke (Harelbeke)',key:'nis-34013A'},{name:'Hulste (Harelbeke)',key:'nis-34013C'},{name:'Deerlijk + deelgemeenten',key:'nis-34009'},{name:'Deerlijk (Deerlijk)',key:'nis-34009A'},{name:'Zwevegem + deelgemeenten',key:'nis-34042'},{name:'Zwevegem (Zwevegem)',key:'nis-34042A'},{name:'Otegem (Zwevegem)',key:'nis-34042B'},{name:'Heestert (Zwevegem)',key:'nis-34042C'},{name:'Moen (Zwevegem)',key:'nis-34042D'},{name:'Sint-Denijs (Zwevegem)',key:'nis-34042E'},{name:'Wevelgem + deelgemeenten',key:'nis-34041'},{name:'Wevelgem (Wevelgem)',key:'nis-34041A'},{name:'Gullegem (Wevelgem)',key:'nis-34041B'},{name:'Moorsele (Wevelgem)',key:'nis-34041C'},{name:'Anzegem + deelgemeenten',key:'nis-34002'},{name:'Gijzelbrechtegem (Anzegem)',key:'nis-34002B'},{name:'Anzegem (Anzegem)',key:'nis-34002A'},{name:'Kaster (Anzegem)',key:'nis-34002C'},{name:'Tiegem (Anzegem)',key:'nis-34002D'},{name:'Ingooigem (Anzegem)',key:'nis-34002E'},{name:'Vichte (Anzegem)',key:'nis-34002F'},{name:'Avelgem + deelgemeenten',key:'nis-34003'},{name:'Avelgem (Avelgem)',key:'nis-34003A'},{name:'Waarmaarde (Avelgem)',key:'nis-34003B'},{name:'Kerkhove (Avelgem)',key:'nis-34003C'},{name:'Outrijve (Avelgem)',key:'nis-34003D'},{name:'Bossuit (Avelgem)',key:'nis-34003E'},{name:'Spiere-Helkijn + deelgemeenten',key:'nis-34043'},{name:'Spiere (Spiere-Helkijn)',key:'nis-34043A'},{name:'Helkijn (Spiere-Helkijn)',key:'nis-34043B'},{name:'Waregem + deelgemeenten',key:'nis-34040'},{name:'Waregem (Waregem)',key:'nis-34040A'},{name:'Sint-Eloois-Vijve (Waregem)',key:'nis-34040D'},{name:'Beveren (Waregem)',key:'nis-34040B'},{name:'Desselgem (Waregem)',key:'nis-34040C'},{name:'Lendelede + deelgemeenten',key:'nis-34025'},{name:'Lendelede (Lendelede)',key:'nis-34025A'},{name:'Menen + deelgemeenten',key:'nis-34027'},{name:'Menen (Menen)',key:'nis-34027A'},{name:'Lauwe (Menen)',key:'nis-34027B'},{name:'Rekkem (Menen)',key:'nis-34027C'},{name:'Regio Vlaamse Kust',key:'reg-vlaamse-kust'},{name:'Knokke-Heist + deelgemeenten',key:'nis-31043'},{name:'Knokke (Knokke-Heist)',key:'nis-31043A'},{name:'Heist (Knokke-Heist)',key:'nis-31043B'},{name:'Ramskapelle (Knokke-Heist)',key:'nis-31043C'},{name:'Westkapelle (Knokke-Heist)',key:'nis-31043D'},{name:'Blankenberge + deelgemeenten',key:'nis-31004'},{name:'Blankenberge (Blankenberge)',key:'nis-31004A'},{name:'Uitkerke (Blankenberge)',key:'nis-31004B'},{name:'De Haan + deelgemeenten',key:'nis-35029'},{name:'Klemskerke (De Haan)',key:'nis-35029A'},{name:'Vlissegem (De Haan)',key:'nis-35029B'},{name:'Wenduine (De Haan)',key:'nis-35029C'},{name:'Bredene + deelgemeenten',key:'nis-35002'},{name:'Bredene (Bredene)',key:'nis-35002A'},{name:'De Panne + deelgemeenten',key:'nis-38008'},{name:'De Panne (De Panne)',key:'nis-38008A'},{name:'Adinkerke (De Panne)',key:'nis-38008B'},{name:'Oostende + deelgemeenten',key:'nis-35013'},{name:'Stene (Oostende)',key:'nis-35013-Y'},{name:'Oostende (Oostende)',key:'nis-35013-Z'},{name:'Zandvoorde (Oostende)',key:'nis-35013C'},{name:'Middelkerke + deelgemeenten',key:'nis-35011'},{name:'Middelkerke (Middelkerke)',key:'nis-35011A'},{name:'Wilskerke (Middelkerke)',key:'nis-35011B'},{name:'Leffinge (Middelkerke)',key:'nis-35011C'},{name:'Sint-Pieters-Kapelle (Middelkerke)',key:'nis-35011D'},{name:'Mannekensvere (Middelkerke)',key:'nis-35011F'},{name:'Schore (Middelkerke)',key:'nis-35011E'},{name:'Slijpe (Middelkerke)',key:'nis-35011G'},{name:'Westende (Middelkerke)',key:'nis-35011H'},{name:'Lombardsijde (Middelkerke)',key:'nis-35011J'},{name:'Nieuwpoort + deelgemeenten',key:'nis-38016'},{name:'Nieuwpoort (Nieuwpoort)',key:'nis-38016A'},{name:'Sint-Joris (Nieuwpoort)',key:'nis-38016B'},{name:'Ramskapelle (Nieuwpoort)',key:'nis-38016C'},{name:'Koksijde + deelgemeenten',key:'nis-38014'},{name:'Koksijde (Koksijde)',key:'nis-38014A'},{name:'Oostduinkerke (Koksijde)',key:'nis-38014B'},{name:'Wulpen (Koksijde)',key:'nis-38014C'},{name:'Regio Westhoek',key:'reg-westhoek'},{name:'Hooglede + deelgemeenten',key:'nis-36006'},{name:'Hooglede (Hooglede)',key:'nis-36006A'},{name:'Gits (Hooglede)',key:'nis-36006B'},{name:'Staden + deelgemeenten',key:'nis-36019'},{name:'Staden (Staden)',key:'nis-36019A'},{name:'Oostnieuwkerke (Staden)',key:'nis-36019B'},{name:'Westrozebeke (Staden)',key:'nis-36019C'},{name:'Veurne + deelgemeenten',key:'nis-38025'},{name:'Veurne (Veurne)',key:'nis-38025A'},{name:'Booitshoeke (Veurne)',key:'nis-38025B'},{name:'Avekapelle (Veurne)',key:'nis-38025C'},{name:'Eggewaartskapelle (Veurne)',key:'nis-38025D'},{name:'Zoutenaaie (Veurne)',key:'nis-38025E'},{name:'Bulskamp (Veurne)',key:'nis-38025G'},{name:'Steenkerke (Veurne)',key:'nis-38025F'},{name:'Wulveringem (Veurne)',key:'nis-38025H-I'},{name:'Vinkem (Veurne)',key:'nis-38025H-II'},{name:'Houtem (Veurne)',key:'nis-38025J'},{name:'De Moeren (Veurne)',key:'nis-38025K'},{name:'Alveringem + deelgemeenten',key:'nis-38002'},{name:'Sint-Rijkers (Alveringem)',key:'nis-38002A-III'},{name:'Alveringem (Alveringem)',key:'nis-38002A-II'},{name:'Oeren (Alveringem)',key:'nis-38002A-I'},{name:'Leisele (Alveringem)',key:'nis-38002C'},{name:'Hoogstade (Alveringem)',key:'nis-38002B'},{name:'Izenberge (Alveringem)',key:'nis-38002D'},{name:'Gijverinkhove (Alveringem)',key:'nis-38002E'},{name:'Beveren (Alveringem)',key:'nis-38002G'},{name:'Stavele (Alveringem)',key:'nis-38002F'},{name:'Diksmuide + deelgemeenten',key:'nis-32003'},{name:'Kaaskerke (Diksmuide)',key:'nis-32003A-II'},{name:'Esen (Diksmuide)',key:'nis-32003A-III'},{name:'Diksmuide (Diksmuide)',key:'nis-32003A-I'},{name:'Beerst (Diksmuide)',key:'nis-32003B'},{name:'Keiem (Diksmuide)',key:'nis-32003C'},{name:'Leke (Diksmuide)',key:'nis-32003D'},{name:'Vladslo (Diksmuide)',key:'nis-32003E'},{name:'Woumen (Diksmuide)',key:'nis-32003F'},{name:'Nieuwkapelle (Diksmuide)',key:'nis-32003G'},{name:'Oudekapelle (Diksmuide)',key:'nis-32003H'},{name:'Oostkerke (Diksmuide)',key:'nis-32003K'},{name:'Sint-Jacobs-Kapelle (Diksmuide)',key:'nis-32003J'},{name:'Lampernisse (Diksmuide)',key:'nis-32003L'},{name:'Pervijze (Diksmuide)',key:'nis-32003M'},{name:'Stuivekenskerke (Diksmuide)',key:'nis-32003N'},{name:'Kortemark + deelgemeenten',key:'nis-32011'},{name:'Kortemark (Kortemark)',key:'nis-32011A'},{name:'Werken (Kortemark)',key:'nis-32011C'},{name:'Handzame (Kortemark)',key:'nis-32011B'},{name:'Zarren (Kortemark)',key:'nis-32011D'},{name:'Lo-Reninge + deelgemeenten',key:'nis-32030'},{name:'Lo (Lo-Reninge)',key:'nis-32030A'},{name:'Pollinkhove (Lo-Reninge)',key:'nis-32030B'},{name:'Reninge (Lo-Reninge)',key:'nis-32030C'},{name:'Noordschote (Lo-Reninge)',key:'nis-32030D'},{name:'Houthulst + deelgemeenten',key:'nis-32006'},{name:'Klerken (Houthulst)',key:'nis-32006-Z'},{name:'Houthulst (Houthulst)',key:'nis-32006A'},{name:'Merkem (Houthulst)',key:'nis-32006B'},{name:'Koekelare + deelgemeenten',key:'nis-32010'},{name:'Koekelare (Koekelare)',key:'nis-32010A'},{name:'Bovekerke (Koekelare)',key:'nis-32010B'},{name:'Zande (Koekelare)',key:'nis-32010C'},{name:'Vleteren + deelgemeenten',key:'nis-33041'},{name:'Oostvleteren (Vleteren)',key:'nis-33041A'},{name:'Westvleteren (Vleteren)',key:'nis-33041B'},{name:'Woesten (Vleteren)',key:'nis-33041C'},{name:'Ieper + deelgemeenten',key:'nis-33011'},{name:'Brielen (Ieper)',key:'nis-33011B'},{name:'Ieper (Ieper)',key:'nis-33011A'},{name:'Sint-Jan (Ieper)',key:'nis-33011C'},{name:'Boezinge (Ieper)',key:'nis-33011D'},{name:'Zuidschote (Ieper)',key:'nis-33011E'},{name:'Elverdinge (Ieper)',key:'nis-33011F'},{name:'Vlamertinge (Ieper)',key:'nis-33011G'},{name:'Dikkebus (Ieper)',key:'nis-33011H'},{name:'Voormezele (Ieper)',key:'nis-33011J'},{name:'Hollebeke (Ieper)',key:'nis-33011K'},{name:'Zillebeke (Ieper)',key:'nis-33011L'},{name:'Langemark-Poelkapelle + deelgemeenten',key:'nis-33040'},{name:'Bikschote (Langemark-Poelkapelle)',key:'nis-33040B'},{name:'Langemark (Langemark-Poelkapelle)',key:'nis-33040A'},{name:'Poelkapelle (Langemark-Poelkapelle)',key:'nis-33040C'},{name:'Heuvelland + deelgemeenten',key:'nis-33039'},{name:'Loker (Heuvelland)',key:'nis-33039-Z'},{name:'Wulvergem (Heuvelland)',key:'nis-33039C'},{name:'Kemmel (Heuvelland)',key:'nis-33039A'},{name:'Wijtschate (Heuvelland)',key:'nis-33039B'},{name:'Nieuwkerke (Heuvelland)',key:'nis-33039D'},{name:'Dranouter (Heuvelland)',key:'nis-33039E'},{name:'Westouter (Heuvelland)',key:'nis-33039G'},{name:'Mesen + deelgemeenten',key:'nis-33016'},{name:'Mesen (Mesen)',key:'nis-33016A'},{name:'Poperinge + deelgemeenten',key:'nis-33021'},{name:'Reningelst (Poperinge)',key:'nis-33021B'},{name:'Poperinge (Poperinge)',key:'nis-33021A'},{name:'Krombeke (Poperinge)',key:'nis-33021C'},{name:'Proven (Poperinge)',key:'nis-33021D'},{name:'Roesbrugge-Haringe (Poperinge)',key:'nis-33021E'},{name:'Watou (Poperinge)',key:'nis-33021F'},{name:'Zonnebeke + deelgemeenten',key:'nis-33037'},{name:'Zonnebeke (Zonnebeke)',key:'nis-33037A'},{name:'Passendale (Zonnebeke)',key:'nis-33037B'},{name:'Beselare (Zonnebeke)',key:'nis-33037C'},{name:'Geluveld (Zonnebeke)',key:'nis-33037D'},{name:'Zandvoorde (Zonnebeke)',key:'nis-33037E'},{name:'Wervik + deelgemeenten',key:'nis-33029'},{name:'Wervik (Wervik)',key:'nis-33029A'},{name:'Geluwe (Wervik)',key:'nis-33029B'},{name:'Provincie Oost-Vlaanderen',key:'nis-40000'},{name:'Regio Gent',key:'reg-gent'},{name:'Gent + deelgemeenten',key:'nis-44021'},{name:'Gent (Gent)',key:'nis-44021-Z'},{name:'Mendonk (Gent)',key:'nis-44021D-II'},{name:'Desteldonk (Gent)',key:'nis-44021D-III'},{name:'Oostakker (Gent)',key:'nis-44021D-IV'},{name:'Sint-Kruis-Winkel (Gent)',key:'nis-44021D-I'},{name:'Sint-Amandsberg (Gent)',key:'nis-44021E'},{name:'Gentbrugge (Gent)',key:'nis-44021F'},{name:'Zwijnaarde (Gent)',key:'nis-44021H'},{name:'Ledeberg (Gent)',key:'nis-44021G'},{name:'Afsnee (Gent)',key:'nis-44021J-II'},{name:'Sint-Denijs-Westrem (Gent)',key:'nis-44021J-I'},{name:'Drongen (Gent)',key:'nis-44021K'},{name:'Mariakerke (Gent)',key:'nis-44021L'},{name:'Wondelgem (Gent)',key:'nis-44021M'},{name:'Regio Leiestreek Oost-Vlaanderen',key:'reg-leiestreek-oost-vlaanderen'},{name:'Nazareth + deelgemeenten',key:'nis-44048'},{name:'Nazareth (Nazareth)',key:'nis-44048A'},{name:'Eke (Nazareth)',key:'nis-44048B'},{name:'Sint-Martens-Latem + deelgemeenten',key:'nis-44064'},{name:'Sint-Martens-Latem (Sint-Martens-Latem)',key:'nis-44064A'},{name:'Deurle (Sint-Martens-Latem)',key:'nis-44064B'},{name:'De Pinte + deelgemeenten',key:'nis-44012'},{name:'Zevergem (De Pinte)',key:'nis-44012B'},{name:'De Pinte (De Pinte)',key:'nis-44012A'},{name:'Zulte + deelgemeenten',key:'nis-44081'},{name:'Zulte (Zulte)',key:'nis-44081A'},{name:'Olsene (Zulte)',key:'nis-44081B'},{name:'Machelen (Zulte)',key:'nis-44081C'},{name:'Deinze + deelgemeenten',key:'nis-44083'},{name:'Deinze (Deinze)',key:'nis-44011A'},{name:'Astene (Deinze)',key:'nis-44011B'},{name:'Grammene (Deinze)',key:'nis-44011E'},{name:'Petegem-aan-de-Leie (Deinze)',key:'nis-44011C'},{name:'Zeveren (Deinze)',key:'nis-44011D'},{name:'Gottem (Deinze)',key:'nis-44011F'},{name:'Meigem (Deinze)',key:'nis-44011J'},{name:'Vinkt (Deinze)',key:'nis-44011H'},{name:'Wontergem (Deinze)',key:'nis-44011G'},{name:'Bachte-Maria-Leerne (Deinze)',key:'nis-44011K'},{name:'Sint-Martens-Leerne (Deinze)',key:'nis-44011L'},{name:'Nevele (Deinze)',key:'nis-44049A'},{name:'Poesele (Deinze)',key:'nis-44049B'},{name:'Hansbeke (Deinze)',key:'nis-44049C'},{name:'Merendree (Deinze)',key:'nis-44049D'},{name:'Landegem (Deinze)',key:'nis-44049E'},{name:'Vosselare (Deinze)',key:'nis-44049F'},{name:'Regio Meetjesland',key:'reg-meetjesland'},{name:'Zelzate + deelgemeenten',key:'nis-43018'},{name:'Zelzate (Zelzate)',key:'nis-43018A'},{name:'Eeklo + deelgemeenten',key:'nis-43005'},{name:'Eeklo (Eeklo)',key:'nis-43005A'},{name:'Assenede + deelgemeenten',key:'nis-43002'},{name:'Assenede (Assenede)',key:'nis-43002A'},{name:'Bassevelde (Assenede)',key:'nis-43002C'},{name:'Oosteeklo (Assenede)',key:'nis-43002B'},{name:'Boekhoute (Assenede)',key:'nis-43002D'},{name:'Kaprijke + deelgemeenten',key:'nis-43007'},{name:'Kaprijke (Kaprijke)',key:'nis-43007A'},{name:'Lembeke (Kaprijke)',key:'nis-43007B'},{name:'Sint-Laureins + deelgemeenten',key:'nis-43014'},{name:'Sint-Laureins (Sint-Laureins)',key:'nis-43014A'},{name:'Sint-Margriete (Sint-Laureins)',key:'nis-43014B'},{name:'Sint-Jan-in-Eremo (Sint-Laureins)',key:'nis-43014C'},{name:'Waterland-Oudeman (Sint-Laureins)',key:'nis-43014D'},{name:'Watervliet (Sint-Laureins)',key:'nis-43014E'},{name:'Maldegem + deelgemeenten',key:'nis-43010'},{name:'Middelburg (Maldegem)',key:'nis-43010B'},{name:'Maldegem (Maldegem)',key:'nis-43010A'},{name:'Adegem (Maldegem)',key:'nis-43010C'},{name:'Wachtebeke + deelgemeenten',key:'nis-44073'},{name:'Wachtebeke (Wachtebeke)',key:'nis-44073A'},{name:'Evergem + deelgemeenten',key:'nis-44019'},{name:'Evergem (Evergem)',key:'nis-44019A'},{name:'Kluizen (Evergem)',key:'nis-44019C-II'},{name:'Sleidinge (Evergem)',key:'nis-44019B'},{name:'Ertvelde (Evergem)',key:'nis-44019C-I'},{name:'Aalter + deelgemeenten',key:'nis-44084'},{name:'Aalter (Aalter)',key:'nis-44001A'},{name:'Bellem (Aalter)',key:'nis-44001B'},{name:'Lotenhulle (Aalter)',key:'nis-44001C'},{name:'Poeke (Aalter)',key:'nis-44001D'},{name:'Knesselare (Aalter)',key:'nis-44029A'},{name:'Ursel (Aalter)',key:'nis-44029B'},{name:'Lievegem + deelgemeenten',key:'nis-44085'},{name:'Lovendegem (Lievegem)',key:'nis-44036A'},{name:'Vinderhoute (Lievegem)',key:'nis-44036B'},{name:'Waarschoot (Lievegem)',key:'nis-44072A'},{name:'Zomergem (Lievegem)',key:'nis-44080A'},{name:'Ronsele (Lievegem)',key:'nis-44080B'},{name:'Oostwinkel (Lievegem)',key:'nis-44080C'},{name:'Regio Vlaamse Ardennen',key:'reg-vlaamse-ardennen'},{name:'Geraardsbergen + deelgemeenten',key:'nis-41018'},{name:'Geraardsbergen (Geraardsbergen)',key:'nis-41018A'},{name:'Nederboelare (Geraardsbergen)',key:'nis-41018B'},{name:'Onkerzele (Geraardsbergen)',key:'nis-41018C'},{name:'Overboelare (Geraardsbergen)',key:'nis-41018D'},{name:'Goeferdinge (Geraardsbergen)',key:'nis-41018E'},{name:'Zarlardinge (Geraardsbergen)',key:'nis-41018F'},{name:'Schendelbeke (Geraardsbergen)',key:'nis-41018G'},{name:'Idegem (Geraardsbergen)',key:'nis-41018K'},{name:'Ophasselt (Geraardsbergen)',key:'nis-41018H'},{name:'Smeerebbe-Vloerzegem (Geraardsbergen)',key:'nis-41018J'},{name:'Grimminge (Geraardsbergen)',key:'nis-41018L'},{name:'Nieuwenhove (Geraardsbergen)',key:'nis-41018N'},{name:'Zandbergen (Geraardsbergen)',key:'nis-41018M'},{name:'Waarbeke (Geraardsbergen)',key:'nis-41018P'},{name:'Viane (Geraardsbergen)',key:'nis-41018S'},{name:'Moerbeke (Geraardsbergen)',key:'nis-41018R'},{name:'Sint-Lievens-Houtem + deelgemeenten',key:'nis-41063'},{name:'Sint-Lievens-Houtem (Sint-Lievens-Houtem)',key:'nis-41063A'},{name:'Bavegem (Sint-Lievens-Houtem)',key:'nis-41063B'},{name:'Letterhoutem (Sint-Lievens-Houtem)',key:'nis-41063C'},{name:'Vlierzele (Sint-Lievens-Houtem)',key:'nis-41063D'},{name:'Zonnegem (Sint-Lievens-Houtem)',key:'nis-41063E'},{name:'Herzele + deelgemeenten',key:'nis-41027'},{name:'Herzele (Herzele)',key:'nis-41027A'},{name:'Borsbeke (Herzele)',key:'nis-41027C'},{name:'Hillegem (Herzele)',key:'nis-41027B'},{name:'Ressegem (Herzele)',key:'nis-41027D'},{name:'Sint-Antelinks (Herzele)',key:'nis-41027F'},{name:'Steenhuize-Wijnhuize (Herzele)',key:'nis-41027G'},{name:'Sint-Lievens-Esse (Herzele)',key:'nis-41027H'},{name:'Woubrechtegem (Herzele)',key:'nis-41027E'},{name:'Zottegem + deelgemeenten',key:'nis-41081'},{name:'Zottegem (Zottegem)',key:'nis-41081A'},{name:'Oombergen (Zottegem)',key:'nis-41081B-II'},{name:'Elene (Zottegem)',key:'nis-41081B-I'},{name:'Leeuwergem (Zottegem)',key:'nis-41081C'},{name:'Grotenberge (Zottegem)',key:'nis-41081D'},{name:'Godveerdegem (Zottegem)',key:'nis-41081E'},{name:'Erwetegem (Zottegem)',key:'nis-41081F'},{name:'Sint-Goriks-Oudenhove (Zottegem)',key:'nis-41081G'},{name:'Strijpen (Zottegem)',key:'nis-41081H'},{name:'Velzeke-Ruddershove (Zottegem)',key:'nis-41081J'},{name:'Sint-Maria-Oudenhove (Zottegem)',key:'nis-41081K'},{name:'Lierde + deelgemeenten',key:'nis-45063'},{name:'Hemelveerdegem (Lierde)',key:'nis-45063B'},{name:'Sint-Maria-Lierde (Lierde)',key:'nis-45063A'},{name:'Sint-Martens-Lierde (Lierde)',key:'nis-45063D'},{name:'Deftinge (Lierde)',key:'nis-45063C'},{name:'Ronse + deelgemeenten',key:'nis-45041'},{name:'Ronse (Ronse)',key:'nis-45041A'},{name:'Zwalm + deelgemeenten',key:'nis-45065'},{name:'Paulatem (Zwalm)',key:'nis-45065B'},{name:'Sint-Maria-Latem (Zwalm)',key:'nis-45065C'},{name:'Munkzwalm (Zwalm)',key:'nis-45065A'},{name:'Dikkele (Zwalm)',key:'nis-45065F'},{name:'Hundelgem (Zwalm)',key:'nis-45065G'},{name:'Meilegem (Zwalm)',key:'nis-45065D'},{name:'Roborst (Zwalm)',key:'nis-45065H'},{name:'Rozebeke (Zwalm)',key:'nis-45065J'},{name:'Sint-Blasius-Boekel (Zwalm)',key:'nis-45065K'},{name:'Beerlegem (Zwalm)',key:'nis-45065E'},{name:'Sint-Denijs-Boekel (Zwalm)',key:'nis-45065L'},{name:'Nederzwalm-Hermelgem (Zwalm)',key:'nis-45065M'},{name:'Brakel + deelgemeenten',key:'nis-45059'},{name:'Nederbrakel (Brakel)',key:'nis-45059A'},{name:'Elst (Brakel)',key:'nis-45059D'},{name:'Zegelsem (Brakel)',key:'nis-45059C'},{name:'Opbrakel (Brakel)',key:'nis-45059B'},{name:'Everbeek (Brakel)',key:'nis-45059G'},{name:'Parike (Brakel)',key:'nis-45059F'},{name:'Michelbeke (Brakel)',key:'nis-45059E'},{name:'Horebeke + deelgemeenten',key:'nis-45062'},{name:'Sint-Maria-Horebeke (Horebeke)',key:'nis-45062A'},{name:'Sint-Kornelis-Horebeke (Horebeke)',key:'nis-45062B'},{name:'Maarkedal + deelgemeenten',key:'nis-45064'},{name:'Etikhove (Maarkedal)',key:'nis-45064A'},{name:'Nukerke (Maarkedal)',key:'nis-45064B'},{name:'Maarke-Kerkem (Maarkedal)',key:'nis-45064C'},{name:'Schorisse (Maarkedal)',key:'nis-45064D'},{name:'Kluisbergen + deelgemeenten',key:'nis-45060'},{name:'Ruien (Kluisbergen)',key:'nis-45060A'},{name:'Berchem (Kluisbergen)',key:'nis-45060B'},{name:'Kwaremont (Kluisbergen)',key:'nis-45060C'},{name:'Zulzeke (Kluisbergen)',key:'nis-45060D'},{name:'Oudenaarde + deelgemeenten',key:'nis-45035'},{name:'Edelare (Oudenaarde)',key:'nis-45035A-IV'},{name:'Leupegem (Oudenaarde)',key:'nis-45035A-III'},{name:'Bevere (Oudenaarde)',key:'nis-45035A-II'},{name:'Oudenaarde (Oudenaarde)',key:'nis-45035A-I'},{name:'Nederename (Oudenaarde)',key:'nis-45035A-VII'},{name:'Eine (Oudenaarde)',key:'nis-45035A-VIII'},{name:'Ename (Oudenaarde)',key:'nis-45035A-VI'},{name:'Volkegem (Oudenaarde)',key:'nis-45035A-V'},{name:'Heurne (Oudenaarde)',key:'nis-45035B'},{name:'Welden (Oudenaarde)',key:'nis-45035C'},{name:'Mater (Oudenaarde)',key:'nis-45035D'},{name:'Melden (Oudenaarde)',key:'nis-45035E'},{name:'Mullem (Oudenaarde)',key:'nis-45035F'},{name:'Wortegem-Petegem + deelgemeenten',key:'nis-45061'},{name:'Petegem-aan-de-Schelde (Wortegem-Petegem)',key:'nis-45061A'},{name:'Elsegem (Wortegem-Petegem)',key:'nis-45061D'},{name:'Ooike (Wortegem-Petegem)',key:'nis-45061C-I'},{name:'Moregem (Wortegem-Petegem)',key:'nis-45061C-II'},{name:'Wortegem (Wortegem-Petegem)',key:'nis-45061B'},{name:'Oosterzele + deelgemeenten',key:'nis-44052'},{name:'Balegem (Oosterzele)',key:'nis-44052B'},{name:'Oosterzele (Oosterzele)',key:'nis-44052A'},{name:'Scheldewindeke (Oosterzele)',key:'nis-44052C'},{name:'Moortsele (Oosterzele)',key:'nis-44052D'},{name:'Landskouter (Oosterzele)',key:'nis-44052E'},{name:'Gijzenzele (Oosterzele)',key:'nis-44052F'},{name:'Gavere + deelgemeenten',key:'nis-44020'},{name:'Gavere (Gavere)',key:'nis-44020A'},{name:'Semmerzake (Gavere)',key:'nis-44020B'},{name:'Vurste (Gavere)',key:'nis-44020C'},{name:'Asper (Gavere)',key:'nis-44020F'},{name:'Baaigem (Gavere)',key:'nis-44020D'},{name:'Dikkelvenne (Gavere)',key:'nis-44020E'},{name:'Kruisem + deelgemeenten',key:'nis-45068'},{name:'Kruishoutem (Kruisem)',key:'nis-45017-Z'},{name:'Wannegem-Lede (Kruisem)',key:'nis-45017C'},{name:'Nokere (Kruisem)',key:'nis-45017D'},{name:'Huise (Kruisem)',key:'nis-45057C'},{name:'Ouwegem (Kruisem)',key:'nis-45057B'},{name:'Zingem (Kruisem)',key:'nis-45057A'},{name:'Regio Waasland',key:'reg-waasland'},{name:'Sint-Niklaas + deelgemeenten',key:'nis-46021'},{name:'Sint-Niklaas (Sint-Niklaas)',key:'nis-46021A'},{name:'Nieuwkerken-Waas (Sint-Niklaas)',key:'nis-46021B'},{name:'Belsele (Sint-Niklaas)',key:'nis-46021C'},{name:'Sinaai (Sint-Niklaas)',key:'nis-46021D'},{name:'Beveren + deelgemeenten',key:'nis-46003'},{name:'Beveren (Beveren)',key:'nis-46003A'},{name:'Vrasene (Beveren)',key:'nis-46003B'},{name:'Verrebroek (Beveren)',key:'nis-46003C'},{name:'Kieldrecht (Beveren)',key:'nis-46003D'},{name:'Doel (Beveren)',key:'nis-46003E'},{name:'Kallo (Beveren)',key:'nis-46003F'},{name:'Melsele (Beveren)',key:'nis-46003G'},{name:'Haasdonk (Beveren)',key:'nis-46003H'},{name:'Temse + deelgemeenten',key:'nis-46025'},{name:'Temse (Temse)',key:'nis-46025A'},{name:'Tielrode (Temse)',key:'nis-46025C'},{name:'Elversele (Temse)',key:'nis-46025D'},{name:'Steendorp (Temse)',key:'nis-46025B'},{name:'Kruibeke + deelgemeenten',key:'nis-46013'},{name:'Rupelmonde (Kruibeke)',key:'nis-46013C'},{name:'Kruibeke (Kruibeke)',key:'nis-46013A'},{name:'Bazel (Kruibeke)',key:'nis-46013B'},{name:'Lokeren + deelgemeenten',key:'nis-46014'},{name:'Eksaarde (Lokeren)',key:'nis-46014B'},{name:'Lokeren (Lokeren)',key:'nis-46014A'},{name:'Daknam (Lokeren)',key:'nis-46014C'},{name:'Sint-Gillis-Waas + deelgemeenten',key:'nis-46020'},{name:'De Klinge (Sint-Gillis-Waas)',key:'nis-46020B'},{name:'Sint-Gillis-Waas (Sint-Gillis-Waas)',key:'nis-46020-Z'},{name:'Meerdonk (Sint-Gillis-Waas)',key:'nis-46020C'},{name:'Sint-Pauwels (Sint-Gillis-Waas)',key:'nis-46020D'},{name:'Stekene + deelgemeenten',key:'nis-46024'},{name:'Stekene (Stekene)',key:'nis-46024-Z'},{name:'Kemzeke (Stekene)',key:'nis-46024B'},{name:'Waasmunster + deelgemeenten',key:'nis-42023'},{name:'Waasmunster (Waasmunster)',key:'nis-42023A'},{name:'Lochristi + deelgemeenten',key:'nis-44034'},{name:'Lochristi (Lochristi)',key:'nis-44034A'},{name:'Zaffelare (Lochristi)',key:'nis-44034B'},{name:'Zeveneken (Lochristi)',key:'nis-44034C'},{name:'Beervelde (Lochristi)',key:'nis-44034D'},{name:'Moerbeke + deelgemeenten',key:'nis-44045'},{name:'Moerbeke (Moerbeke)',key:'nis-44045A'},{name:'Regio Scheldeland Oost-Vlaanderen',key:'reg-scheldeland-oost-vlaanderen'},{name:'Aalst + deelgemeenten',key:'nis-41002'},{name:'Aalst (Aalst)',key:'nis-41002A'},{name:'Hofstade (Aalst)',key:'nis-41002B'},{name:'Herdersem (Aalst)',key:'nis-41002D'},{name:'Gijzegem (Aalst)',key:'nis-41002C'},{name:'Moorsel (Aalst)',key:'nis-41002E'},{name:'Baardegem (Aalst)',key:'nis-41002F'},{name:'Meldert (Aalst)',key:'nis-41002G'},{name:'Erembodegem (Aalst)',key:'nis-41002H'},{name:'Nieuwerkerken (Aalst)',key:'nis-41002J'},{name:'Lede + deelgemeenten',key:'nis-41034'},{name:'Wanzele (Lede)',key:'nis-41034B'},{name:'Impe (Lede)',key:'nis-41034C'},{name:'Lede (Lede)',key:'nis-41034A'},{name:'Smetlede (Lede)',key:'nis-41034D'},{name:'Oordegem (Lede)',key:'nis-41034E'},{name:'Ninove + deelgemeenten',key:'nis-41048'},{name:'Ninove (Ninove)',key:'nis-41048A'},{name:'Okegem (Ninove)',key:'nis-41048B'},{name:'Meerbeke (Ninove)',key:'nis-41048C'},{name:'Neigem (Ninove)',key:'nis-41048D'},{name:'Lieferinge (Ninove)',key:'nis-41048E'},{name:'Denderwindeke (Ninove)',key:'nis-41048F'},{name:'Pollare (Ninove)',key:'nis-41048G'},{name:'Appelterre-Eichem (Ninove)',key:'nis-41048H'},{name:'Voorde (Ninove)',key:'nis-41048J'},{name:'Aspelare (Ninove)',key:'nis-41048K'},{name:'Nederhasselt (Ninove)',key:'nis-41048L'},{name:'Outer (Ninove)',key:'nis-41048M'},{name:'Erpe-Mere + deelgemeenten',key:'nis-41082'},{name:'Mere (Erpe-Mere)',key:'nis-41082A'},{name:'Erpe (Erpe-Mere)',key:'nis-41082B'},{name:'Aaigem (Erpe-Mere)',key:'nis-41082C'},{name:'Burst (Erpe-Mere)',key:'nis-41082D'},{name:'Bambrugge (Erpe-Mere)',key:'nis-41082E'},{name:'Ottergem (Erpe-Mere)',key:'nis-41082F'},{name:'Vlekkem (Erpe-Mere)',key:'nis-41082G'},{name:'Erondegem (Erpe-Mere)',key:'nis-41082H'},{name:'Haaltert + deelgemeenten',key:'nis-41024'},{name:'Kerksken (Haaltert)',key:'nis-41024C'},{name:'Haaltert (Haaltert)',key:'nis-41024A'},{name:'Denderhoutem (Haaltert)',key:'nis-41024B'},{name:'Heldergem (Haaltert)',key:'nis-41024D'},{name:'Denderleeuw + deelgemeenten',key:'nis-41011'},{name:'Denderleeuw (Denderleeuw)',key:'nis-41011A'},{name:'Welle (Denderleeuw)',key:'nis-41011C'},{name:'Iddergem (Denderleeuw)',key:'nis-41011B'},{name:'Dendermonde + deelgemeenten',key:'nis-42006'},{name:'Dendermonde (Dendermonde)',key:'nis-42006A'},{name:'Appels (Dendermonde)',key:'nis-42006B'},{name:'Sint-Gillis-bij-Dendermonde (Dendermonde)',key:'nis-42006C'},{name:'Baasrode (Dendermonde)',key:'nis-42006E'},{name:'Grembergen (Dendermonde)',key:'nis-42006D'},{name:'Oudegem (Dendermonde)',key:'nis-42006F'},{name:'Mespelare (Dendermonde)',key:'nis-42006G'},{name:'Schoonaarde (Dendermonde)',key:'nis-42006H'},{name:'Hamme + deelgemeenten',key:'nis-42008'},{name:'Hamme (Hamme)',key:'nis-42008A'},{name:'Moerzeke (Hamme)',key:'nis-42008B'},{name:'Wetteren + deelgemeenten',key:'nis-42025'},{name:'Massemen (Wetteren)',key:'nis-42025B'},{name:'Wetteren (Wetteren)',key:'nis-42025A'},{name:'Westrem (Wetteren)',key:'nis-42025C'},{name:'Zele + deelgemeenten',key:'nis-42028'},{name:'Zele (Zele)',key:'nis-42028A'},{name:'Buggenhout + deelgemeenten',key:'nis-42004'},{name:'Opdorp (Buggenhout)',key:'nis-42004A-II'},{name:'Buggenhout (Buggenhout)',key:'nis-42004A-I'},{name:'Wichelen + deelgemeenten',key:'nis-42026'},{name:'Wichelen (Wichelen)',key:'nis-42026A'},{name:'Serskamp (Wichelen)',key:'nis-42026B'},{name:'Schellebelle (Wichelen)',key:'nis-42026C'},{name:'Laarne + deelgemeenten',key:'nis-42010'},{name:'Laarne (Laarne)',key:'nis-42010A'},{name:'Kalken (Laarne)',key:'nis-42010B'},{name:'Lebbeke + deelgemeenten',key:'nis-42011'},{name:'Denderbelle (Lebbeke)',key:'nis-42011C'},{name:'Lebbeke (Lebbeke)',key:'nis-42011A'},{name:'Wieze (Lebbeke)',key:'nis-42011B'},{name:'Berlare + deelgemeenten',key:'nis-42003'},{name:'Uitbergen (Berlare)',key:'nis-42003B'},{name:'Berlare (Berlare)',key:'nis-42003A'},{name:'Overmere (Berlare)',key:'nis-42003C'},{name:'Destelbergen + deelgemeenten',key:'nis-44013'},{name:'Destelbergen (Destelbergen)',key:'nis-44013A'},{name:'Heusden (Destelbergen)',key:'nis-44013B'},{name:'Melle + deelgemeenten',key:'nis-44040'},{name:'Melle (Melle)',key:'nis-44040A'},{name:'Gontrode (Melle)',key:'nis-44040B'},{name:'Merelbeke + deelgemeenten',key:'nis-44043'},{name:'Lemberge (Merelbeke)',key:'nis-44043A-II'},{name:'Bottelare (Merelbeke)',key:'nis-44043B'},{name:'Merelbeke (Merelbeke)',key:'nis-44043A-I'},{name:'Munte (Merelbeke)',key:'nis-44043C'},{name:'Schelderode (Merelbeke)',key:'nis-44043D'},{name:'Melsen (Merelbeke)',key:'nis-44043E'},{name:'Provincie Henegouwen',key:'nis-50000'},{name:'Regio Henegouwen',key:'reg-henegouwen'},{name:'Aat + deelgemeenten',key:'nis-51004'},{name:'Lanquesaint (Aat)',key:'nis-51004B'},{name:'Ath (Aat)',key:'nis-51004A'},{name:'Meslin-l"Évêque (Aat)',key:'nis-51004E'},{name:'Rebaix (Aat)',key:'nis-51004C'},{name:'Ghislenghien (Aat)',key:'nis-51004F'},{name:'Isières (Aat)',key:'nis-51004D'},{name:'Gibecq (Aat)',key:'nis-51004G'},{name:'Arbre (Aat)',key:'nis-51004H'},{name:'Maffle (Aat)',key:'nis-51004J'},{name:'Irchonwelz (Aat)',key:'nis-51004K'},{name:'Villers-Notre-Dame (Aat)',key:'nis-51004N'},{name:'Ormeignies (Aat)',key:'nis-51004L'},{name:'Moulbaix (Aat)',key:'nis-51004M'},{name:'Villers-Saint-Amand (Aat)',key:'nis-51004P'},{name:'Ligne (Aat)',key:'nis-51004R'},{name:'Houtaing (Aat)',key:'nis-51004S'},{name:'Bouvignies (Aat)',key:'nis-51004U'},{name:'Mainvault (Aat)',key:'nis-51004T'},{name:'Ostiches (Aat)',key:'nis-51004V'},{name:'Beloeil + deelgemeenten',key:'nis-51008'},{name:'Grandglise (Beloeil)',key:'nis-51008B-II'},{name:'Stambruges (Beloeil)',key:'nis-51008B-I'},{name:'Belœil (Beloeil)',key:'nis-51008A'},{name:'Ramegnies (Beloeil)',key:'nis-51008F'},{name:'Quevaucamps (Beloeil)',key:'nis-51008C'},{name:'Thumaide (Beloeil)',key:'nis-51008E'},{name:'Basècles (Beloeil)',key:'nis-51008D'},{name:'Wadelincourt (Beloeil)',key:'nis-51008G'},{name:'Ellignies-Sainte-Anne (Beloeil)',key:'nis-51008H'},{name:'Aubechies (Beloeil)',key:'nis-51008J'},{name:'Bernissart + deelgemeenten',key:'nis-51009'},{name:'Harchies (Bernissart)',key:'nis-51009A-II'},{name:'Ville-Pommeroeul (Bernissart)',key:'nis-51009B-I'},{name:'Bernissart (Bernissart)',key:'nis-51009A-I'},{name:'Blaton (Bernissart)',key:'nis-51009C'},{name:'Pommerœul (Bernissart)',key:'nis-51009B-II'},{name:'Brugelette + deelgemeenten',key:'nis-51012'},{name:'Brugelette (Brugelette)',key:'nis-51012A'},{name:'Mévergnies-lez-Lens (Brugelette)',key:'nis-51012D'},{name:'Gages (Brugelette)',key:'nis-51012B'},{name:'Cambron-Casteau (Brugelette)',key:'nis-51012C'},{name:'Attre (Brugelette)',key:'nis-51012E'},{name:'Chièvres + deelgemeenten',key:'nis-51014'},{name:'Tongre-Saint-Martin (Chièvres)',key:'nis-51014B'},{name:'Chièvres (Chièvres)',key:'nis-51014A'},{name:'Ladeuze (Chièvres)',key:'nis-51014C'},{name:'Grosage (Chièvres)',key:'nis-51014D'},{name:'Huissignies (Chièvres)',key:'nis-51014E'},{name:'Tongre-Notre-Dame (Chièvres)',key:'nis-51014F'},{name:'Elzele + deelgemeenten',key:'nis-51017'},{name:'Wodecq (Elzele)',key:'nis-51017B'},{name:'Ellezelles (Elzele)',key:'nis-51017A'},{name:'Lahamaide (Elzele)',key:'nis-51017C'},{name:'Frasnes-lez-Anvaing + deelgemeenten',key:'nis-51065'},{name:'Frasnes-lez-Buissenal (Frasnes-lez-Anvaing)',key:'nis-51065A'},{name:'Œudeghien (Frasnes-lez-Anvaing)',key:'nis-51065B'},{name:'Buissenal (Frasnes-lez-Anvaing)',key:'nis-51065C'},{name:'Moustier (Frasnes-lez-Anvaing)',key:'nis-51065D'},{name:'Herquegies (Frasnes-lez-Anvaing)',key:'nis-51065F'},{name:'Hacquegnies (Frasnes-lez-Anvaing)',key:'nis-51065E'},{name:'Montrœul-au-Bois (Frasnes-lez-Anvaing)',key:'nis-51065G'},{name:'Forest (Frasnes-lez-Anvaing)',key:'nis-51065H'},{name:'Anvaing (Frasnes-lez-Anvaing)',key:'nis-51065J'},{name:'Cordes (Frasnes-lez-Anvaing)',key:'nis-51065K'},{name:'Arc-Ainières (Frasnes-lez-Anvaing)',key:'nis-51065L'},{name:'Dergneau (Frasnes-lez-Anvaing)',key:'nis-51065N'},{name:'Wattripont (Frasnes-lez-Anvaing)',key:'nis-51065M'},{name:'Saint-Sauveur (Frasnes-lez-Anvaing)',key:'nis-51065P'},{name:'Vloesberg + deelgemeenten',key:'nis-51019'},{name:'Flobecq (Vloesberg)',key:'nis-51019A'},{name:'Bergen + deelgemeenten',key:'nis-53053'},{name:'Mons (Bergen)',key:'nis-53053A'},{name:'Nimy (Bergen)',key:'nis-53053E'},{name:'Cuesmes (Bergen)',key:'nis-53053C'},{name:'Hyon (Bergen)',key:'nis-53053B'},{name:'Ghlin (Bergen)',key:'nis-53053D'},{name:'Saint-Denis (Bergen)',key:'nis-53053F-II'},{name:'Maisières (Bergen)',key:'nis-53053G'},{name:'Obourg (Bergen)',key:'nis-53053F-I'},{name:'Havré (Bergen)',key:'nis-53053H'},{name:'Saint-Symphorien (Bergen)',key:'nis-53053J'},{name:'Villers-Saint-Ghislain (Bergen)',key:'nis-53053K'},{name:'Harmignies (Bergen)',key:'nis-53053L'},{name:'Harveng (Bergen)',key:'nis-53053M'},{name:'Spiennes (Bergen)',key:'nis-53053P'},{name:'Nouvelles (Bergen)',key:'nis-53053N'},{name:'Mesvin (Bergen)',key:'nis-53053R'},{name:'Ciply (Bergen)',key:'nis-53053S'},{name:'Jemappes (Bergen)',key:'nis-53053T'},{name:'Flénu (Bergen)',key:'nis-53053U'},{name:'Boussu + deelgemeenten',key:'nis-53014'},{name:'Boussu (Boussu)',key:'nis-53014A'},{name:'Hornu (Boussu)',key:'nis-53014B'},{name:'Colfontaine + deelgemeenten',key:'nis-53082'},{name:'Wasmes (Colfontaine)',key:'nis-53082A'},{name:'Pâturages (Colfontaine)',key:'nis-53082B'},{name:'Warquignies (Colfontaine)',key:'nis-53082C'},{name:'Dour + deelgemeenten',key:'nis-53020'},{name:'Blaugies (Dour)',key:'nis-53020B'},{name:'Wihéries (Dour)',key:'nis-53020C'},{name:'Dour (Dour)',key:'nis-53020A'},{name:'Élouges (Dour)',key:'nis-53020D'},{name:'Frameries + deelgemeenten',key:'nis-53028'},{name:'Noirchain (Frameries)',key:'nis-53028B'},{name:'Frameries (Frameries)',key:'nis-53028A'},{name:'La Bouverie (Frameries)',key:'nis-53028C'},{name:'Eugies (Frameries)',key:'nis-53028D'},{name:'Sars-la-Bruyère (Frameries)',key:'nis-53028E'},{name:'Hensies + deelgemeenten',key:'nis-53039'},{name:'Hensies (Hensies)',key:'nis-53039A'},{name:'Montrœul-sur-Haine (Hensies)',key:'nis-53039B'},{name:'Thulin (Hensies)',key:'nis-53039C'},{name:'Hainin (Hensies)',key:'nis-53039D'},{name:'Honnelles + deelgemeenten',key:'nis-53083'},{name:'Roisin (Honnelles)',key:'nis-53083A'},{name:'Angreau (Honnelles)',key:'nis-53083B'},{name:'Angre (Honnelles)',key:'nis-53083C'},{name:'Onnezies (Honnelles)',key:'nis-53083E'},{name:'Marchipont (Honnelles)',key:'nis-53083D'},{name:'Montignies-sur-Roc (Honnelles)',key:'nis-53083F'},{name:'Autreppe (Honnelles)',key:'nis-53083G'},{name:'Fayt-le-Franc (Honnelles)',key:'nis-53083H'},{name:'Athis (Honnelles)',key:'nis-53083J'},{name:'Erquennes (Honnelles)',key:'nis-53083K'},{name:'Jurbeke + deelgemeenten',key:'nis-53044'},{name:'Jurbise (Jurbeke)',key:'nis-53044A'},{name:'Masnuy-Saint-Jean (Jurbeke)',key:'nis-53044B'},{name:'Masnuy-Saint-Pierre (Jurbeke)',key:'nis-53044C'},{name:'Erbisœul (Jurbeke)',key:'nis-53044D'},{name:'Erbaut (Jurbeke)',key:'nis-53044F'},{name:'Herchies (Jurbeke)',key:'nis-53044E'},{name:'Lens + deelgemeenten',key:'nis-53046'},{name:'Lens (Lens)',key:'nis-53046A'},{name:'Bauffe (Lens)',key:'nis-53046B'},{name:'Montignies-lez-Lens (Lens)',key:'nis-53046C'},{name:'Cambron-Saint-Vincent (Lens)',key:'nis-53046D'},{name:'Lombise (Lens)',key:'nis-53046E'},{name:'Quaregnon + deelgemeenten',key:'nis-53065'},{name:'Wasmuel (Quaregnon)',key:'nis-53065B'},{name:'Quaregnon (Quaregnon)',key:'nis-53065A'},{name:'Quévy + deelgemeenten',key:'nis-53084'},{name:'Quévy-le-Petit (Quévy)',key:'nis-53084A'},{name:'Quévy-le-Grand (Quévy)',key:'nis-53084B'},{name:'Havay (Quévy)',key:'nis-53084C'},{name:'Goegnies-Chaussée (Quévy)',key:'nis-53084E'},{name:'Givry (Quévy)',key:'nis-53084D'},{name:'Aulnois (Quévy)',key:'nis-53084F'},{name:'Blaregnies (Quévy)',key:'nis-53084G'},{name:'Genly (Quévy)',key:'nis-53084H'},{name:'Bougnies (Quévy)',key:'nis-53084J'},{name:'Asquillies (Quévy)',key:'nis-53084K'},{name:'Quiévrain + deelgemeenten',key:'nis-53068'},{name:'Quiévrain (Quiévrain)',key:'nis-53068A'},{name:'Baisieux (Quiévrain)',key:'nis-53068B'},{name:'Audregnies (Quiévrain)',key:'nis-53068C'},{name:'Saint-Ghislain + deelgemeenten',key:'nis-53070'},{name:'Saint-Ghislain (Saint-Ghislain)',key:'nis-53070A'},{name:'Baudour (Saint-Ghislain)',key:'nis-53070B'},{name:'Tertre (Saint-Ghislain)',key:'nis-53070C'},{name:'Villerot (Saint-Ghislain)',key:'nis-53070D'},{name:'Hautrage (Saint-Ghislain)',key:'nis-53070E'},{name:'Sirault (Saint-Ghislain)',key:'nis-53070F'},{name:'Neufmaison (Saint-Ghislain)',key:'nis-53070G'},{name:'Aiseau-Presles + deelgemeenten',key:'nis-52074'},{name:'Aiseau (Aiseau-Presles)',key:'nis-52074A'},{name:'Pont-de-Loup (Aiseau-Presles)',key:'nis-52074C'},{name:'Roselies (Aiseau-Presles)',key:'nis-52074D'},{name:'Presles (Aiseau-Presles)',key:'nis-52074B'},{name:'Chapelle-lez-Herlaimont + deelgemeenten',key:'nis-52010'},{name:'Chapelle-lez-Herlaimont (Chapelle-lez-Herlaimont)',key:'nis-52010A'},{name:'Godarville (Chapelle-lez-Herlaimont)',key:'nis-52010B'},{name:'Piéton (Chapelle-lez-Herlaimont)',key:'nis-52010C'},{name:'Charleroi + deelgemeenten',key:'nis-52011'},{name:'Charleroi (Charleroi)',key:'nis-52011A'},{name:'Dampremy (Charleroi)',key:'nis-52011B'},{name:'Montignies-sur-Sambre (Charleroi)',key:'nis-52011E'},{name:'Lodelinsart (Charleroi)',key:'nis-52011C'},{name:'Gilly (Charleroi)',key:'nis-52011D'},{name:'Marcinelle (Charleroi)',key:'nis-52011G'},{name:'Couillet (Charleroi)',key:'nis-52011F'},{name:'Mont-sur-Marchienne (Charleroi)',key:'nis-52011H'},{name:'Marchienne-au-Pont (Charleroi)',key:'nis-52011J'},{name:'Monceau-sur-Sambre (Charleroi)',key:'nis-52011K'},{name:'Goutroux (Charleroi)',key:'nis-52011L'},{name:'Roux (Charleroi)',key:'nis-52011M'},{name:'Jumet (Charleroi)',key:'nis-52011N'},{name:'Gosselies (Charleroi)',key:'nis-52011P'},{name:'Ransart (Charleroi)',key:'nis-52011R'},{name:'Châtelet + deelgemeenten',key:'nis-52012'},{name:'Châtelet (Châtelet)',key:'nis-52012A'},{name:'Châtelineau (Châtelet)',key:'nis-52012B'},{name:'Bouffioulx (Châtelet)',key:'nis-52012C'},{name:'Courcelles + deelgemeenten',key:'nis-52015'},{name:'Souvret (Courcelles)',key:'nis-52015B'},{name:'Courcelles (Courcelles)',key:'nis-52015A'},{name:'Trazegnies (Courcelles)',key:'nis-52015C'},{name:'Gouy-lez-Piéton (Courcelles)',key:'nis-52015D'},{name:'Farciennes + deelgemeenten',key:'nis-52018'},{name:'Pironchamps (Farciennes)',key:'nis-52018B'},{name:'Farciennes (Farciennes)',key:'nis-52018A'},{name:'Fleurus + deelgemeenten',key:'nis-52021'},{name:'Fleurus (Fleurus)',key:'nis-52021A'},{name:'Wanfercée-Baulet (Fleurus)',key:'nis-52021B'},{name:'Wangenies (Fleurus)',key:'nis-52021D'},{name:'Lambusart (Fleurus)',key:'nis-52021C'},{name:'Heppignies (Fleurus)',key:'nis-52021E'},{name:'Saint-Amand (Fleurus)',key:'nis-52021F'},{name:'Wagnelée (Fleurus)',key:'nis-52021G'},{name:'Brye (Fleurus)',key:'nis-52021H'},{name:'Fontaine-l\'Evêque + deelgemeenten',key:'nis-52022'},{name:'Fontaine-l"Évêque (Fontaine-l\'Evêque)',key:'nis-52022A'},{name:'Forchies-la-Marche (Fontaine-l\'Evêque)',key:'nis-52022B'},{name:'Leernes (Fontaine-l\'Evêque)',key:'nis-52022C'},{name:'Gerpinnes + deelgemeenten',key:'nis-52025'},{name:'Gerpinnes (Gerpinnes)',key:'nis-52025A'},{name:'Loverval (Gerpinnes)',key:'nis-52025B'},{name:'Joncret (Gerpinnes)',key:'nis-52025C'},{name:'Acoz (Gerpinnes)',key:'nis-52025D'},{name:'Villers-Poterie (Gerpinnes)',key:'nis-52025E'},{name:'Gougnies (Gerpinnes)',key:'nis-52025F'},{name:'Les Bons Villers + deelgemeenten',key:'nis-52075'},{name:'Mellet (Les Bons Villers)',key:'nis-52075A'},{name:'Wayaux (Les Bons Villers)',key:'nis-52075B'},{name:'Villers-Perwin (Les Bons Villers)',key:'nis-52075C'},{name:'Frasnes-lez-Gosselies (Les Bons Villers)',key:'nis-52075D'},{name:'Rèves (Les Bons Villers)',key:'nis-52075E'},{name:'Manage + deelgemeenten',key:'nis-52043'},{name:'Bois-d"Haine (Manage)',key:'nis-52043B'},{name:'Manage (Manage)',key:'nis-52043A'},{name:'La Hestre (Manage)',key:'nis-52043D'},{name:'Fayt-lez-Manage (Manage)',key:'nis-52043C'},{name:'Bellecourt (Manage)',key:'nis-52043E'},{name:'Montigny-le-Tilleul + deelgemeenten',key:'nis-52048'},{name:'Landelies (Montigny-le-Tilleul)',key:'nis-52048B'},{name:'Montignies-le-Tilleul (Montigny-le-Tilleul)',key:'nis-52048A'},{name:'Pont-à-celles + deelgemeenten',key:'nis-52055'},{name:'Pont-à-Celles (Pont-à-celles)',key:'nis-52055A'},{name:'Obaix (Pont-à-celles)',key:'nis-52055B'},{name:'Liberchies (Pont-à-celles)',key:'nis-52055D-II'},{name:'Buzet (Pont-à-celles)',key:'nis-52055C'},{name:'Luttre (Pont-à-celles)',key:'nis-52055D-I'},{name:'Thiméon (Pont-à-celles)',key:'nis-52055E'},{name:'Viesville (Pont-à-celles)',key:'nis-52055F'},{name:'Seneffe + deelgemeenten',key:'nis-52063'},{name:'Seneffe (Seneffe)',key:'nis-52063A'},{name:'Feluy (Seneffe)',key:'nis-52063B'},{name:'Arquennes (Seneffe)',key:'nis-52063C'},{name:'Petit-Roeulx-lez-Nivelles (Seneffe)',key:'nis-52063D'},{name:'Familleureux (Seneffe)',key:'nis-52063E'},{name:'Antoing + deelgemeenten',key:'nis-57003'},{name:'Antoing (Antoing)',key:'nis-57003A'},{name:'Fontenoy (Antoing)',key:'nis-57003B'},{name:'Maubray (Antoing)',key:'nis-57003C'},{name:'Péronnes (Antoing)',key:'nis-57003D'},{name:'Bruyelle (Antoing)',key:'nis-57003E'},{name:'Calonne (Antoing)',key:'nis-57003F'},{name:'Brunehaut + deelgemeenten',key:'nis-57093'},{name:'Bléharies (Brunehaut)',key:'nis-57093A'},{name:'Rongy (Brunehaut)',key:'nis-57093B'},{name:'Lesdain (Brunehaut)',key:'nis-57093C'},{name:'Howardries (Brunehaut)',key:'nis-57093D'},{name:'Guignies (Brunehaut)',key:'nis-57093E'},{name:'Wez-Velvain (Brunehaut)',key:'nis-57093F'},{name:'Jollain-Merlin (Brunehaut)',key:'nis-57093G'},{name:'Laplaigne (Brunehaut)',key:'nis-57093J'},{name:'Hollain (Brunehaut)',key:'nis-57093H'},{name:'Celles + deelgemeenten',key:'nis-57018'},{name:'Celles (Celles)',key:'nis-57018A'},{name:'Molenbaix (Celles)',key:'nis-57018B'},{name:'Pottes (Celles)',key:'nis-57018C'},{name:'Escanaffles (Celles)',key:'nis-57018D'},{name:'Velaines (Celles)',key:'nis-57018E'},{name:'Popuelles (Celles)',key:'nis-57018F'},{name:'Doornik + deelgemeenten',key:'nis-57081'},{name:'Warchin (Doornik)',key:'nis-57081B'},{name:'Tournai (Doornik)',key:'nis-57081A'},{name:'Chercq (Doornik)',key:'nis-57081C'},{name:'Havinnes (Doornik)',key:'nis-57081D'},{name:'Quartes (Doornik)',key:'nis-57081E-I'},{name:'Melles (Doornik)',key:'nis-57081E-II'},{name:'Thimougies (Doornik)',key:'nis-57081F-II'},{name:'Beclers (Doornik)',key:'nis-57081F-I'},{name:'Barry (Doornik)',key:'nis-57081G-II'},{name:'Vezon (Doornik)',key:'nis-57081H'},{name:'Maulde (Doornik)',key:'nis-57081G-I'},{name:'Gaurain-Ramecroix (Doornik)',key:'nis-57081J'},{name:'Saint-Maur (Doornik)',key:'nis-57081L-II'},{name:'Vaulx (Doornik)',key:'nis-57081K'},{name:'Froidmont (Doornik)',key:'nis-57081M-II'},{name:'Ère (Doornik)',key:'nis-57081L-I'},{name:'Willemeau (Doornik)',key:'nis-57081M-I'},{name:'Esplechin (Doornik)',key:'nis-57081N'},{name:'Orcq (Doornik)',key:'nis-57081P-III'},{name:'Marquain (Doornik)',key:'nis-57081P-II'},{name:'Lamain (Doornik)',key:'nis-57081P-I'},{name:'Hertain (Doornik)',key:'nis-57081R-II'},{name:'Blandain (Doornik)',key:'nis-57081R-I'},{name:'Templeuve (Doornik)',key:'nis-57081S'},{name:'Ramegnies-Chin (Doornik)',key:'nis-57081T'},{name:'Froyennes (Doornik)',key:'nis-57081U'},{name:'Mont-Saint-Aubert (Doornik)',key:'nis-57081V-II'},{name:'Rumillies (Doornik)',key:'nis-57081W-II'},{name:'Kain (Doornik)',key:'nis-57081V-I'},{name:'Mourcourt (Doornik)',key:'nis-57081W-I'},{name:'Estaimpuis + deelgemeenten',key:'nis-57027'},{name:'Estaimpuis (Estaimpuis)',key:'nis-57027A'},{name:'Évregnies (Estaimpuis)',key:'nis-57027B'},{name:'Saint-Léger (Estaimpuis)',key:'nis-57027C'},{name:'Estaimbourg (Estaimpuis)',key:'nis-57027D'},{name:'Bailleul (Estaimpuis)',key:'nis-57027E'},{name:'Néchin (Estaimpuis)',key:'nis-57027F'},{name:'Leers-Nord (Estaimpuis)',key:'nis-57027G'},{name:'Leuze-en-Hainaut + deelgemeenten',key:'nis-57094'},{name:'Grandmetz (Leuze-en-Hainaut)',key:'nis-57094B'},{name:'Leuze (Leuze-en-Hainaut)',key:'nis-57094A'},{name:'Chapelle-à-Wattines (Leuze-en-Hainaut)',key:'nis-57094C'},{name:'Chapelle-à-Oie (Leuze-en-Hainaut)',key:'nis-57094D'},{name:'Blicquy (Leuze-en-Hainaut)',key:'nis-57094E'},{name:'Willaupuis (Leuze-en-Hainaut)',key:'nis-57094G'},{name:'Pipaix (Leuze-en-Hainaut)',key:'nis-57094H'},{name:'Gallaix (Leuze-en-Hainaut)',key:'nis-57094J'},{name:'Tourpes (Leuze-en-Hainaut)',key:'nis-57094F'},{name:'Thieulain (Leuze-en-Hainaut)',key:'nis-57094K'},{name:'Mont-de-l\'Enclus + deelgemeenten',key:'nis-57095'},{name:'Amougies (Mont-de-l\'Enclus)',key:'nis-57095A'},{name:'Russeignies (Mont-de-l\'Enclus)',key:'nis-57095B'},{name:'Orroir (Mont-de-l\'Enclus)',key:'nis-57095D'},{name:'Anseroeul (Mont-de-l\'Enclus)',key:'nis-57095C'},{name:'Pecq + deelgemeenten',key:'nis-57062'},{name:'Warcoing (Pecq)',key:'nis-57062B'},{name:'Pecq (Pecq)',key:'nis-57062A'},{name:'Hérinnes (Pecq)',key:'nis-57062C'},{name:'Obigies (Pecq)',key:'nis-57062D'},{name:'Esquelmes (Pecq)',key:'nis-57062E'},{name:'Péruwelz + deelgemeenten',key:'nis-57064'},{name:'Péruwelz (Péruwelz)',key:'nis-57064A'},{name:'Wiers (Péruwelz)',key:'nis-57064B'},{name:'Callenelle (Péruwelz)',key:'nis-57064C'},{name:'Brasmenil (Péruwelz)',key:'nis-57064D'},{name:'Wasmes-Audemez-Briffoeil (Péruwelz)',key:'nis-57064E'},{name:'Baugnies (Péruwelz)',key:'nis-57064F'},{name:'Braffe (Péruwelz)',key:'nis-57064G'},{name:'Bury (Péruwelz)',key:'nis-57064H'},{name:'Roucourt (Péruwelz)',key:'nis-57064J'},{name:'Bon-Secours (Péruwelz)',key:'nis-57064K'},{name:'Rumes + deelgemeenten',key:'nis-57072'},{name:'Rumes (Rumes)',key:'nis-57072A'},{name:'La Glanerie (Rumes)',key:'nis-57072C'},{name:'Taintignies (Rumes)',key:'nis-57072B'},{name:'Komen-Waasten + deelgemeenten',key:'nis-54010'},{name:'Comines (Komen-Waasten)',key:'nis-54010A'},{name:'Bas-Warneton (Komen-Waasten)',key:'nis-54010B'},{name:'Houthem (Komen-Waasten)',key:'nis-54010C'},{name:'Warneton (Komen-Waasten)',key:'nis-54010D'},{name:'Ploegsteert (Komen-Waasten)',key:'nis-54010E'},{name:'Moeskroen + deelgemeenten',key:'nis-54007'},{name:'Luingne (Moeskroen)',key:'nis-54007B'},{name:'Mouscron (Moeskroen)',key:'nis-54007A'},{name:'Herseaux (Moeskroen)',key:'nis-54007C'},{name:'Dottignies (Moeskroen)',key:'nis-54007D'},{name:'Anderlues + deelgemeenten',key:'nis-56001'},{name:'Anderlues (Anderlues)',key:'nis-56001A'},{name:'Beaumont + deelgemeenten',key:'nis-56005'},{name:'Beaumont (Beaumont)',key:'nis-56005A'},{name:'Barbençon (Beaumont)',key:'nis-56005B'},{name:'Solre-Saint-Géry (Beaumont)',key:'nis-56005D'},{name:'Renlies (Beaumont)',key:'nis-56005C'},{name:'Leugnies (Beaumont)',key:'nis-56005E'},{name:'Leval-Chaudeville (Beaumont)',key:'nis-56005F'},{name:'Strée (Beaumont)',key:'nis-56005H'},{name:'Thirimont (Beaumont)',key:'nis-56005G'},{name:'Binche + deelgemeenten',key:'nis-56011'},{name:'Binche (Binche)',key:'nis-56011A'},{name:'Ressaix (Binche)',key:'nis-56011B'},{name:'Leval-Trahegnies (Binche)',key:'nis-56011C'},{name:'Buvrinnes (Binche)',key:'nis-56011E'},{name:'Bray (Binche)',key:'nis-56011G'},{name:'Waudrez (Binche)',key:'nis-56011F'},{name:'Épinois (Binche)',key:'nis-56011D'},{name:'Péronnes (Binche)',key:'nis-56011H'},{name:'Chimay + deelgemeenten',key:'nis-56016'},{name:'Virelles (Chimay)',key:'nis-56016B'},{name:'Vaulx (Chimay)',key:'nis-56016C'},{name:'Lompret (Chimay)',key:'nis-56016D'},{name:'Baileux (Chimay)',key:'nis-56016E'},{name:'Chimay (Chimay)',key:'nis-56016A'},{name:'Bourlers (Chimay)',key:'nis-56016H'},{name:'L"Escaillère (Chimay)',key:'nis-56016F'},{name:'Forges (Chimay)',key:'nis-56016J'},{name:'Rièzes (Chimay)',key:'nis-56016G'},{name:'Saint-Remy (Chimay)',key:'nis-56016K'},{name:'Villers-la-Tour (Chimay)',key:'nis-56016L'},{name:'Salles (Chimay)',key:'nis-56016M'},{name:'Bailièvre (Chimay)',key:'nis-56016N'},{name:'Robechies (Chimay)',key:'nis-56016P'},{name:'Erquelinnes + deelgemeenten',key:'nis-56022'},{name:'Erquelinnes (Erquelinnes)',key:'nis-56022A'},{name:'Solre-sur-Sambre (Erquelinnes)',key:'nis-56022B'},{name:'Hantes-Wihéries (Erquelinnes)',key:'nis-56022C'},{name:'Bersillies-l"Abbaye (Erquelinnes)',key:'nis-56022E'},{name:'Montignies-Saint-Christophe (Erquelinnes)',key:'nis-56022D'},{name:'Grand-Reng (Erquelinnes)',key:'nis-56022F'},{name:'Estinnes + deelgemeenten',key:'nis-56085'},{name:'Estinnes-au-Mont (Estinnes)',key:'nis-56085A'},{name:'Estinnes-au-Val (Estinnes)',key:'nis-56085B'},{name:'Vellereille-les-Brayeux (Estinnes)',key:'nis-56085C'},{name:'Peissant (Estinnes)',key:'nis-56085D'},{name:'Fauroeulx (Estinnes)',key:'nis-56085E'},{name:'Croix-lez-Rouveroy (Estinnes)',key:'nis-56085F'},{name:'Rouveroy (Estinnes)',key:'nis-56085G'},{name:'Vellereille-le-Sec (Estinnes)',key:'nis-56085J'},{name:'Haulchin (Estinnes)',key:'nis-56085H'},{name:'Froidchapelle + deelgemeenten',key:'nis-56029'},{name:'Fourbechies (Froidchapelle)',key:'nis-56029A-II'},{name:'Vergnies (Froidchapelle)',key:'nis-56029B'},{name:'Erpion (Froidchapelle)',key:'nis-56029C'},{name:'Boussu-lez-Walcourt (Froidchapelle)',key:'nis-56029D'},{name:'Froid-Chapelle (Froidchapelle)',key:'nis-56029A-I'},{name:'Ham-sur-Heure-Nalinnes + deelgemeenten',key:'nis-56086'},{name:'Ham-sur-Heure (Ham-sur-Heure-Nalinnes)',key:'nis-56086A'},{name:'Jamioulx (Ham-sur-Heure-Nalinnes)',key:'nis-56086E'},{name:'Nalinnes (Ham-sur-Heure-Nalinnes)',key:'nis-56086B'},{name:'Cour-sur-Heure (Ham-sur-Heure-Nalinnes)',key:'nis-56086C'},{name:'Marbaix (Ham-sur-Heure-Nalinnes)',key:'nis-56086D'},{name:'Lobbes + deelgemeenten',key:'nis-56044'},{name:'Lobbes (Lobbes)',key:'nis-56044A'},{name:'Sars-la-Buissière (Lobbes)',key:'nis-56044B'},{name:'Bienne-lez-Happart (Lobbes)',key:'nis-56044C'},{name:'Mont-Sainte-Geneviève (Lobbes)',key:'nis-56044D'},{name:'Merbes-le-Château + deelgemeenten',key:'nis-56049'},{name:'Merbes-le-Château (Merbes-le-Château)',key:'nis-56049A'},{name:'Fontaine-Valmont (Merbes-le-Château)',key:'nis-56049D'},{name:'Labuissière (Merbes-le-Château)',key:'nis-56049C'},{name:'Merbes-Sainte-Marie (Merbes-le-Château)',key:'nis-56049B'},{name:'Momignies + deelgemeenten',key:'nis-56051'},{name:'Momignies (Momignies)',key:'nis-56051A'},{name:'Macon (Momignies)',key:'nis-56051B'},{name:'Monceau-Imbrechies (Momignies)',key:'nis-56051C'},{name:'Forge-Philippe (Momignies)',key:'nis-56051E'},{name:'Macquenoise (Momignies)',key:'nis-56051F'},{name:'Seloignes (Momignies)',key:'nis-56051D'},{name:'Beauwelz (Momignies)',key:'nis-56051G'},{name:'Morlanwelz + deelgemeenten',key:'nis-56087'},{name:'Carnières (Morlanwelz)',key:'nis-56087B'},{name:'Mont-Sainte-Aldegonde (Morlanwelz)',key:'nis-56087C'},{name:'Morlanwelz-Mariemont (Morlanwelz)',key:'nis-56087A'},{name:'Sivry-Rance + deelgemeenten',key:'nis-56088'},{name:'Sivry (Sivry-Rance)',key:'nis-56088A'},{name:'Grandrieu (Sivry-Rance)',key:'nis-56088B'},{name:'Sautin (Sivry-Rance)',key:'nis-56088C'},{name:'Rance (Sivry-Rance)',key:'nis-56088D'},{name:'Montbliart (Sivry-Rance)',key:'nis-56088E'},{name:'Thuin + deelgemeenten',key:'nis-56078'},{name:'Thuin (Thuin)',key:'nis-56078A'},{name:'Biesme-sous-Thuin (Thuin)',key:'nis-56078C'},{name:'Gozée (Thuin)',key:'nis-56078B'},{name:'Thuillies (Thuin)',key:'nis-56078D'},{name:'Leers-et-Fosteau (Thuin)',key:'nis-56078G'},{name:'Ragnies (Thuin)',key:'nis-56078F'},{name:'Donstiennes (Thuin)',key:'nis-56078E'},{name:'Biercée (Thuin)',key:'nis-56078H'},{name:'s Gravenbrakel + deelgemeenten',key:'nis-55004'},{name:'Hennuyères (s Gravenbrakel)',key:'nis-55004B'},{name:'Braine-le-Comte (s Gravenbrakel)',key:'nis-55004A'},{name:'Ronquières (s Gravenbrakel)',key:'nis-55004C'},{name:'Henripont (s Gravenbrakel)',key:'nis-55004D'},{name:'Petit-Roeulx-lez-Braine (s Gravenbrakel)',key:'nis-55004E'},{name:'Steenkerque (s Gravenbrakel)',key:'nis-55004F'},{name:'Ecaussinnes + deelgemeenten',key:'nis-55050'},{name:'Écaussinnes-d"Enghien (Ecaussinnes)',key:'nis-55050A'},{name:'Marche-lez-Écaussinnes (Ecaussinnes)',key:'nis-55050C'},{name:'Écaussinnes-Lalaing (Ecaussinnes)',key:'nis-55050B'},{name:'Edingen + deelgemeenten',key:'nis-55010'},{name:'Enghien (Edingen)',key:'nis-55010A'},{name:'Marcq (Edingen)',key:'nis-55010B'},{name:'Petit-Enghien (Edingen)',key:'nis-55010C'},{name:'La Louvière + deelgemeenten',key:'nis-55022'},{name:'Houdeng-Goegnies (La Louvière)',key:'nis-55022-Z'},{name:'La Louvière (La Louvière)',key:'nis-55022A'},{name:'Haine-Saint-Pierre (La Louvière)',key:'nis-55022B'},{name:'Haine-Saint-Paul (La Louvière)',key:'nis-55022C'},{name:'Saint-Vaast (La Louvière)',key:'nis-55022D'},{name:'Maurage (La Louvière)',key:'nis-55022F'},{name:'Trivières (La Louvière)',key:'nis-55022E'},{name:'Strépy-Bracquegnies (La Louvière)',key:'nis-55022H'},{name:'Boussoit (La Louvière)',key:'nis-55022G'},{name:'Houdeng-Aimeries (La Louvière)',key:'nis-55022J'},{name:'Le Roeulx + deelgemeenten',key:'nis-55035'},{name:'Le Roeulx (Le Roeulx)',key:'nis-55035A'},{name:'Mignault (Le Roeulx)',key:'nis-55035B'},{name:'Thieu (Le Roeulx)',key:'nis-55035C'},{name:'Ville-sur-Haine (Le Roeulx)',key:'nis-55035D-II'},{name:'Gottignies (Le Roeulx)',key:'nis-55035D-I'},{name:'Lessen + deelgemeenten',key:'nis-55023'},{name:'Lessines (Lessen)',key:'nis-55023A'},{name:'Deux-Acren (Lessen)',key:'nis-55023B'},{name:'Ollignies (Lessen)',key:'nis-55023D'},{name:'Bois-de-Lessines (Lessen)',key:'nis-55023C'},{name:'Wannebecq (Lessen)',key:'nis-55023E-II'},{name:'Ogy (Lessen)',key:'nis-55023F'},{name:'Papignies (Lessen)',key:'nis-55023E-I'},{name:'Ghoy (Lessen)',key:'nis-55023G'},{name:'Opzullik + deelgemeenten',key:'nis-55039'},{name:'Hellebecq (Opzullik)',key:'nis-55039B'},{name:'Silly (Opzullik)',key:'nis-55039A'},{name:'Bassilly (Opzullik)',key:'nis-55039C'},{name:'Hoves (Opzullik)',key:'nis-55039D'},{name:'Graty (Opzullik)',key:'nis-55039E'},{name:'Fouleng (Opzullik)',key:'nis-55039G'},{name:'Gondregnies (Opzullik)',key:'nis-55039H'},{name:'Thoricourt (Opzullik)',key:'nis-55039F'},{name:'Zinnik + deelgemeenten',key:'nis-55040'},{name:'Soignies (Zinnik)',key:'nis-55040A'},{name:'Thieusies (Zinnik)',key:'nis-55040C'},{name:'Casteau (Zinnik)',key:'nis-55040D'},{name:'Chaussée-Notre-Dame-Louvignies (Zinnik)',key:'nis-55040F'},{name:'Naast (Zinnik)',key:'nis-55040B'},{name:'Neufvilles (Zinnik)',key:'nis-55040E'},{name:'Horrues (Zinnik)',key:'nis-55040G'},{name:'Provincie Luik',key:'nis-60000'},{name:'Regio Luik',key:'reg-luik'},{name:'Berloz + deelgemeenten',key:'nis-64008'},{name:'Berloz (Berloz)',key:'nis-64008A'},{name:'Rosoux-Crenwick (Berloz)',key:'nis-64008B'},{name:'Corswarem (Berloz)',key:'nis-64008C'},{name:'Borgworm + deelgemeenten',key:'nis-64074'},{name:'Waremme (Borgworm)',key:'nis-64074A'},{name:'Oleye (Borgworm)',key:'nis-64074B'},{name:'Lantremange (Borgworm)',key:'nis-64074C'},{name:'Grand-Axhe (Borgworm)',key:'nis-64074F'},{name:'Bovenistier (Borgworm)',key:'nis-64074E'},{name:'Bleret (Borgworm)',key:'nis-64074D'},{name:'Bettincourt (Borgworm)',key:'nis-64074G'},{name:'Braives + deelgemeenten',key:'nis-64015'},{name:'Braives (Braives)',key:'nis-64015A'},{name:'Tourinne (Braives)',key:'nis-64015B'},{name:'Latinne (Braives)',key:'nis-64015C'},{name:'Fallais (Braives)',key:'nis-64015D'},{name:'Fumal (Braives)',key:'nis-64015E'},{name:'Ville-en-Hesbaye (Braives)',key:'nis-64015F'},{name:'Ciplet (Braives)',key:'nis-64015G'},{name:'Avennes (Braives)',key:'nis-64015H'},{name:'Crisnée + deelgemeenten',key:'nis-64021'},{name:'Kemexhe (Crisnée)',key:'nis-64021A-III'},{name:'Odeur (Crisnée)',key:'nis-64021A-IV'},{name:'Fize-le-Marsal (Crisnée)',key:'nis-64021A-II'},{name:'Crisnée (Crisnée)',key:'nis-64021A-I'},{name:'Thys (Crisnée)',key:'nis-64021A-V'},{name:'Donceel + deelgemeenten',key:'nis-64023'},{name:'Donceel (Donceel)',key:'nis-64023A'},{name:'Limont (Donceel)',key:'nis-64023B'},{name:'Haneffe (Donceel)',key:'nis-64023D'},{name:'Jeneffe (Donceel)',key:'nis-64023C'},{name:'Faimes + deelgemeenten',key:'nis-64076'},{name:'Celles (Faimes)',key:'nis-64076A'},{name:'Les Waleffes (Faimes)',key:'nis-64076C'},{name:'Borlez (Faimes)',key:'nis-64076B'},{name:'Viemme (Faimes)',key:'nis-64076D'},{name:'Aineffe (Faimes)',key:'nis-64076E'},{name:'Fexhe-le-Haut-Clocher + deelgemeenten',key:'nis-64025'},{name:'Noville (Fexhe-le-Haut-Clocher)',key:'nis-64025A-III'},{name:'Fexhe-le-Haut-Clocher (Fexhe-le-Haut-Clocher)',key:'nis-64025A-II'},{name:'Roloux (Fexhe-le-Haut-Clocher)',key:'nis-64025A-IV'},{name:'Freloux (Fexhe-le-Haut-Clocher)',key:'nis-64025A-I'},{name:'Voroux-Goreux (Fexhe-le-Haut-Clocher)',key:'nis-64025A-V'},{name:'Geer + deelgemeenten',key:'nis-64029'},{name:'Geer (Geer)',key:'nis-64029A'},{name:'Darion (Geer)',key:'nis-64029D'},{name:'Boëlhe (Geer)',key:'nis-64029B'},{name:'Hollogne-sur-Geer (Geer)',key:'nis-64029C'},{name:'Omal (Geer)',key:'nis-64029E'},{name:'Ligney (Geer)',key:'nis-64029F'},{name:'Lens-Saint-Servais (Geer)',key:'nis-64029G'},{name:'Hannuit + deelgemeenten',key:'nis-64034'},{name:'Hannut (Hannuit)',key:'nis-64034A'},{name:'Avernas-le-Bauduin (Hannuit)',key:'nis-64034B'},{name:'Bertrée (Hannuit)',key:'nis-64034C'},{name:'Cras-Avernas (Hannuit)',key:'nis-64034D'},{name:'Poucet (Hannuit)',key:'nis-64034E'},{name:'Abolens (Hannuit)',key:'nis-64034F'},{name:'Blehen (Hannuit)',key:'nis-64034G'},{name:'Lens-Saint-Remy (Hannuit)',key:'nis-64034H'},{name:'Villers-le-Peuplier (Hannuit)',key:'nis-64034J'},{name:'Crehen (Hannuit)',key:'nis-64034K'},{name:'Trognée (Hannuit)',key:'nis-64034L'},{name:'Avin (Hannuit)',key:'nis-64034M'},{name:'Moxhe (Hannuit)',key:'nis-64034N'},{name:'Thisnes (Hannuit)',key:'nis-64034P'},{name:'Grand-Hallet (Hannuit)',key:'nis-64034S-I'},{name:'Merdorp (Hannuit)',key:'nis-64034R'},{name:'Petit-Hallet (Hannuit)',key:'nis-64034S-II'},{name:'Wansin (Hannuit)',key:'nis-64034S-III'},{name:'Lijsem + deelgemeenten',key:'nis-64047'},{name:'Lincent (Lijsem)',key:'nis-64047A'},{name:'Pellaines (Lijsem)',key:'nis-64047B'},{name:'Racour (Lijsem)',key:'nis-64047C'},{name:'Oerle + deelgemeenten',key:'nis-64056'},{name:'Lens-sur-Geer (Oerle)',key:'nis-64056A-III'},{name:'Grandville (Oerle)',key:'nis-64056A-II'},{name:'Oreye (Oerle)',key:'nis-64056A-IV'},{name:'Bergilers (Oerle)',key:'nis-64056A-I'},{name:'Otrange (Oerle)',key:'nis-64056A-V'},{name:'Remicourt + deelgemeenten',key:'nis-64063'},{name:'Remicourt (Remicourt)',key:'nis-64063A'},{name:'Lamine (Remicourt)',key:'nis-64063B'},{name:'Pousset (Remicourt)',key:'nis-64063C'},{name:'Momalle (Remicourt)',key:'nis-64063E'},{name:'Hodeige (Remicourt)',key:'nis-64063D'},{name:'Saint-Georges-sur-Meuse + deelgemeenten',key:'nis-64065'},{name:'Saint-Georges-sur-Meuse (Saint-Georges-sur-Meuse)',key:'nis-64065A'},{name:'Wasseiges + deelgemeenten',key:'nis-64075'},{name:'Ambresin (Wasseiges)',key:'nis-64075B'},{name:'Meeffe (Wasseiges)',key:'nis-64075C'},{name:'Wasseiges (Wasseiges)',key:'nis-64075A'},{name:'Acosse (Wasseiges)',key:'nis-64075D'},{name:'Amay + deelgemeenten',key:'nis-61003'},{name:'Amay (Amay)',key:'nis-61003A'},{name:'Flône (Amay)',key:'nis-61003B'},{name:'Ampsin (Amay)',key:'nis-61003D'},{name:'Ombret-Rawsa (Amay)',key:'nis-61003C'},{name:'Jehay-Bodegnée (Amay)',key:'nis-61003E'},{name:'Anthisnes + deelgemeenten',key:'nis-61079'},{name:'Hody (Anthisnes)',key:'nis-61079B'},{name:'Anthisnes (Anthisnes)',key:'nis-61079A'},{name:'Tavier (Anthisnes)',key:'nis-61079C'},{name:'Villers-aux-Tours (Anthisnes)',key:'nis-61079D'},{name:'Burdinne + deelgemeenten',key:'nis-61010'},{name:'Burdinne (Burdinne)',key:'nis-61010A'},{name:'Lamontzée (Burdinne)',key:'nis-61010C'},{name:'Hannêche (Burdinne)',key:'nis-61010B'},{name:'Oteppe (Burdinne)',key:'nis-61010D'},{name:'Marneffe (Burdinne)',key:'nis-61010E'},{name:'Clavier + deelgemeenten',key:'nis-61012'},{name:'Clavier (Clavier)',key:'nis-61012A'},{name:'Ocquier (Clavier)',key:'nis-61012B'},{name:'Bois-et-Borsu (Clavier)',key:'nis-61012C'},{name:'Les Avins (Clavier)',key:'nis-61012D'},{name:'Terwagne (Clavier)',key:'nis-61012F'},{name:'Pailhe (Clavier)',key:'nis-61012E'},{name:'Engis + deelgemeenten',key:'nis-61080'},{name:'Engis (Engis)',key:'nis-61080-Z'},{name:'Clermont-sous-Huy (Engis)',key:'nis-61080C'},{name:'Hermalle-sous-Huy (Engis)',key:'nis-61080D'},{name:'Ferrières + deelgemeenten',key:'nis-61019'},{name:'Vieuxville (Ferrières)',key:'nis-61019B'},{name:'Ferrières (Ferrières)',key:'nis-61019A'},{name:'My (Ferrières)',key:'nis-61019C'},{name:'Xhoris (Ferrières)',key:'nis-61019D'},{name:'Werbomont (Ferrières)',key:'nis-61019E'},{name:'Hamoir + deelgemeenten',key:'nis-61024'},{name:'Hamoir (Hamoir)',key:'nis-61024A'},{name:'Comblain-Fairon (Hamoir)',key:'nis-61024B'},{name:'Filot (Hamoir)',key:'nis-61024C'},{name:'Héron + deelgemeenten',key:'nis-61028'},{name:'Héron (Héron)',key:'nis-61028A'},{name:'Couthuin (Héron)',key:'nis-61028C'},{name:'Waret-l"Évêque (Héron)',key:'nis-61028D'},{name:'Lavoir (Héron)',key:'nis-61028B'},{name:'Hoei + deelgemeenten',key:'nis-61031'},{name:'Huy (Hoei)',key:'nis-61031A'},{name:'Tihange (Hoei)',key:'nis-61031C'},{name:'Ben-Ahin (Hoei)',key:'nis-61031B'},{name:'Marchin + deelgemeenten',key:'nis-61039'},{name:'Marchin (Marchin)',key:'nis-61039A'},{name:'Vyle-et-Tharoul (Marchin)',key:'nis-61039B'},{name:'Modave + deelgemeenten',key:'nis-61041'},{name:'Modave (Modave)',key:'nis-61041A'},{name:'Strée (Modave)',key:'nis-61041C'},{name:'Vierset-Barse (Modave)',key:'nis-61041B'},{name:'Outrelouxhe (Modave)',key:'nis-61041D'},{name:'Nandrin + deelgemeenten',key:'nis-61043'},{name:'Nandrin (Nandrin)',key:'nis-61043A'},{name:'Yernée-Fraineux (Nandrin)',key:'nis-61043C'},{name:'Villers-le-Temple (Nandrin)',key:'nis-61043B'},{name:'Saint-Séverin (Nandrin)',key:'nis-61043D'},{name:'Ouffet + deelgemeenten',key:'nis-61048'},{name:'Ellemelle (Ouffet)',key:'nis-61048C'},{name:'Warzée (Ouffet)',key:'nis-61048B'},{name:'Ouffet (Ouffet)',key:'nis-61048A'},{name:'Tinlot + deelgemeenten',key:'nis-61081'},{name:'Soheit-Tinlot (Tinlot)',key:'nis-61081A'},{name:'Ramelot (Tinlot)',key:'nis-61081B'},{name:'Abée (Tinlot)',key:'nis-61081C'},{name:'Fraiture (Tinlot)',key:'nis-61081D'},{name:'Seny (Tinlot)',key:'nis-61081E'},{name:'Verlaine + deelgemeenten',key:'nis-61063'},{name:'Chapon-Seraing (Verlaine)',key:'nis-61063C'},{name:'Verlaine (Verlaine)',key:'nis-61063-Z'},{name:'Seraing-le-Château (Verlaine)',key:'nis-61063D'},{name:'Villers-le-Bouillet + deelgemeenten',key:'nis-61068'},{name:'Villers-le-Bouillet (Villers-le-Bouillet)',key:'nis-61068A'},{name:'Warnant-Dreye (Villers-le-Bouillet)',key:'nis-61068B'},{name:'Vieux-Waleffe (Villers-le-Bouillet)',key:'nis-61068C'},{name:'Vaux-et-Borset (Villers-le-Bouillet)',key:'nis-61068D'},{name:'Fize-Fontaine (Villers-le-Bouillet)',key:'nis-61068E'},{name:'Wanze + deelgemeenten',key:'nis-61072'},{name:'Wanze (Wanze)',key:'nis-61072A'},{name:'Bas-Oha (Wanze)',key:'nis-61072B'},{name:'Moha (Wanze)',key:'nis-61072C'},{name:'Huccorgne (Wanze)',key:'nis-61072D'},{name:'Vinalmont (Wanze)',key:'nis-61072E'},{name:'Antheit (Wanze)',key:'nis-61072F'},{name:'Ans + deelgemeenten',key:'nis-62003'},{name:'Ans (Ans)',key:'nis-62003A'},{name:'Loncin (Ans)',key:'nis-62003B'},{name:'Alleur (Ans)',key:'nis-62003C'},{name:'Xhendremael (Ans)',key:'nis-62003D'},{name:'Awans + deelgemeenten',key:'nis-62006'},{name:'Awans (Awans)',key:'nis-62006A'},{name:'Fooz (Awans)',key:'nis-62006B'},{name:'Villers-l"Évêque (Awans)',key:'nis-62006D'},{name:'Hognoul (Awans)',key:'nis-62006C'},{name:'Othée (Awans)',key:'nis-62006E'},{name:'Aywaille + deelgemeenten',key:'nis-62009'},{name:'Sougné-Remouchamps (Aywaille)',key:'nis-62009B'},{name:'Harzé (Aywaille)',key:'nis-62009C'},{name:'Ernonheid (Aywaille)',key:'nis-62009D'},{name:'Aywaille (Aywaille)',key:'nis-62009A'},{name:'Beyne-Heusay + deelgemeenten',key:'nis-62015'},{name:'Beyne-Heusay (Beyne-Heusay)',key:'nis-62015A'},{name:'Bellaire (Beyne-Heusay)',key:'nis-62015C'},{name:'Queue-du-Bois (Beyne-Heusay)',key:'nis-62015B'},{name:'Bitsingen + deelgemeenten',key:'nis-62011'},{name:'Bassenge (Bitsingen)',key:'nis-62011A'},{name:'Boirs (Bitsingen)',key:'nis-62011C'},{name:'Roclenge-sur-Geer (Bitsingen)',key:'nis-62011B'},{name:'Wonck (Bitsingen)',key:'nis-62011E'},{name:'Glons (Bitsingen)',key:'nis-62011D'},{name:'Ében-Émael (Bitsingen)',key:'nis-62011F'},{name:'Blégny + deelgemeenten',key:'nis-62119'},{name:'Trembleur (Blégny)',key:'nis-62119A'},{name:'Mortier (Blégny)',key:'nis-62119B'},{name:'Barchon (Blégny)',key:'nis-62119C'},{name:'Saive (Blégny)',key:'nis-62119D'},{name:'Housse (Blégny)',key:'nis-62119E'},{name:'Saint-Remy (Blégny)',key:'nis-62119F'},{name:'Chaudfontaine + deelgemeenten',key:'nis-62022'},{name:'Chaudfontaine (Chaudfontaine)',key:'nis-62022A'},{name:'Embourg (Chaudfontaine)',key:'nis-62022C'},{name:'Vaux-sous-Chèvremont (Chaudfontaine)',key:'nis-62022D'},{name:'Beaufays (Chaudfontaine)',key:'nis-62022B'},{name:'Comblain-au-Pont + deelgemeenten',key:'nis-62026'},{name:'Comblain-au-Pont (Comblain-au-Pont)',key:'nis-62026A'},{name:'Poulseur (Comblain-au-Pont)',key:'nis-62026B'},{name:'Dalhem + deelgemeenten',key:'nis-62027'},{name:'Dalhem (Dalhem)',key:'nis-62027A'},{name:'Feneur (Dalhem)',key:'nis-62027B'},{name:'Bombaye (Dalhem)',key:'nis-62027C'},{name:'Berneau (Dalhem)',key:'nis-62027D'},{name:'Warsage (Dalhem)',key:'nis-62027E'},{name:'Neufchâteau (Dalhem)',key:'nis-62027F'},{name:'Mortroux (Dalhem)',key:'nis-62027G'},{name:'Saint-André (Dalhem)',key:'nis-62027H'},{name:'Esneux + deelgemeenten',key:'nis-62032'},{name:'Tilff (Esneux)',key:'nis-62032B'},{name:'Esneux (Esneux)',key:'nis-62032A'},{name:'Flémalle + deelgemeenten',key:'nis-62120'},{name:'Chokier (Flémalle)',key:'nis-62120A-III'},{name:'Flémalle-Haute (Flémalle)',key:'nis-62120A-II'},{name:'Ivoz-Ramet (Flémalle)',key:'nis-62120B'},{name:'Flémalle-Grande (Flémalle)',key:'nis-62120A-I'},{name:'Gleixhe (Flémalle)',key:'nis-62120C-II'},{name:'Mons-lez-Liège (Flémalle)',key:'nis-62120D'},{name:'Awirs (Flémalle)',key:'nis-62120C-I'},{name:'Fléron + deelgemeenten',key:'nis-62038'},{name:'Fléron (Fléron)',key:'nis-62038A'},{name:'Retinne (Fléron)',key:'nis-62038B'},{name:'Romsée (Fléron)',key:'nis-62038D'},{name:'Magnée (Fléron)',key:'nis-62038C'},{name:'Grâce-Hollogne + deelgemeenten',key:'nis-62118'},{name:'Hollogne-aux-Pierres (Grâce-Hollogne)',key:'nis-62118-Z'},{name:'Grâce-Berleur (Grâce-Hollogne)',key:'nis-62118A'},{name:'Velroux (Grâce-Hollogne)',key:'nis-62118E'},{name:'Bierset (Grâce-Hollogne)',key:'nis-62118F'},{name:'Horion-Hozémont (Grâce-Hollogne)',key:'nis-62118D'},{name:'Herstal + deelgemeenten',key:'nis-62051'},{name:'Vottem (Herstal)',key:'nis-62051B'},{name:'Herstal (Herstal)',key:'nis-62051A'},{name:'Liers (Herstal)',key:'nis-62051C'},{name:'Milmort (Herstal)',key:'nis-62051D'},{name:'Juprelle + deelgemeenten',key:'nis-62060'},{name:'Juprelle (Juprelle)',key:'nis-62060A'},{name:'Slins (Juprelle)',key:'nis-62060B'},{name:'Fexhe-Slins (Juprelle)',key:'nis-62060C'},{name:'Voroux-lez-Liers (Juprelle)',key:'nis-62060E'},{name:'Villers-Saint-Siméon (Juprelle)',key:'nis-62060D'},{name:'Lantin (Juprelle)',key:'nis-62060F'},{name:'Wihogne (Juprelle)',key:'nis-62060G'},{name:'Paifve (Juprelle)',key:'nis-62060H'},{name:'Luik + deelgemeenten',key:'nis-62063'},{name:'Liège (Luik)',key:'nis-62063-Z'},{name:'Bressoux (Luik)',key:'nis-62063E'},{name:'Jupille-sur-Meuse (Luik)',key:'nis-62063D'},{name:'Wandre (Luik)',key:'nis-62063C'},{name:'Glain (Luik)',key:'nis-62063K'},{name:'Chênée (Luik)',key:'nis-62063G'},{name:'Angleur (Luik)',key:'nis-62063H'},{name:'Grivegnée (Luik)',key:'nis-62063F'},{name:'Rocourt (Luik)',key:'nis-62063L'},{name:'Neupré + deelgemeenten',key:'nis-62121'},{name:'Neuville-en-Condroz (Neupré)',key:'nis-62121A'},{name:'Plainevaux (Neupré)',key:'nis-62121B'},{name:'Rotheux-Rimière (Neupré)',key:'nis-62121C'},{name:'Éhein (Neupré)',key:'nis-62121D'},{name:'Oupeye + deelgemeenten',key:'nis-62079'},{name:'Oupeye (Oupeye)',key:'nis-62079A'},{name:'Hermalle-sous-Argenteau (Oupeye)',key:'nis-62079C'},{name:'Haccourt (Oupeye)',key:'nis-62079B'},{name:'Vivegnis (Oupeye)',key:'nis-62079D'},{name:'Houtain-Saint-Siméon (Oupeye)',key:'nis-62079F'},{name:'Hermée (Oupeye)',key:'nis-62079E'},{name:'Heure-le-Romain (Oupeye)',key:'nis-62079G'},{name:'Saint-Nicolas + deelgemeenten',key:'nis-62093'},{name:'Montegnée (Saint-Nicolas)',key:'nis-62093C'},{name:'Saint-Nicolas (Saint-Nicolas)',key:'nis-62093A'},{name:'Tilleur (Saint-Nicolas)',key:'nis-62093B'},{name:'Seraing + deelgemeenten',key:'nis-62096'},{name:'Seraing (Seraing)',key:'nis-62096A'},{name:'Jemeppe (Seraing)',key:'nis-62096B'},{name:'Ougrée (Seraing)',key:'nis-62096C'},{name:'Boncelles (Seraing)',key:'nis-62096D'},{name:'Soumagne + deelgemeenten',key:'nis-62099'},{name:'Soumagne (Soumagne)',key:'nis-62099A'},{name:'Ayeneux (Soumagne)',key:'nis-62099B'},{name:'Micheroux (Soumagne)',key:'nis-62099C'},{name:'Melen (Soumagne)',key:'nis-62099D'},{name:'Cérexhe-Heuseux (Soumagne)',key:'nis-62099E'},{name:'Évegnée-Tignée (Soumagne)',key:'nis-62099F'},{name:'Sprimont + deelgemeenten',key:'nis-62100'},{name:'Sprimont (Sprimont)',key:'nis-62100A'},{name:'Rouvreux (Sprimont)',key:'nis-62100C'},{name:'Dolembreux (Sprimont)',key:'nis-62100D'},{name:'Louveigné (Sprimont)',key:'nis-62100B'},{name:'Gomzé-Andoumont (Sprimont)',key:'nis-62100E'},{name:'Trooz + deelgemeenten',key:'nis-62122'},{name:'Fraipont (Trooz)',key:'nis-62122B'},{name:'Nessonvaux (Trooz)',key:'nis-62122C'},{name:'Forêt (Trooz)',key:'nis-62122A'},{name:'Wezet + deelgemeenten',key:'nis-62108'},{name:'Richelle (Wezet)',key:'nis-62108B'},{name:'Visé (Wezet)',key:'nis-62108A'},{name:'Argenteau (Wezet)',key:'nis-62108C'},{name:'Cheratte (Wezet)',key:'nis-62108D'},{name:'Lixhe (Wezet)',key:'nis-62108E'},{name:'Lanaye (Wezet)',key:'nis-62108F'},{name:'Amel + deelgemeenten',key:'nis-63001'},{name:'Amel (Amel)',key:'nis-63001-Z'},{name:'Heppenbach (Amel)',key:'nis-63001B'},{name:'Meyerode (Amel)',key:'nis-63001C'},{name:'Aubel + deelgemeenten',key:'nis-63003'},{name:'Aubel (Aubel)',key:'nis-63003A'},{name:'Baelen + deelgemeenten',key:'nis-63004'},{name:'Baelen (Baelen)',key:'nis-63004A'},{name:'Membach (Baelen)',key:'nis-63004B'},{name:'Büllingen + deelgemeenten',key:'nis-63012'},{name:'Manderfeld (Büllingen)',key:'nis-63012-Z'},{name:'Büllingen (Büllingen)',key:'nis-63012A'},{name:'Rocherath (Büllingen)',key:'nis-63012B'},{name:'Burg-Reuland + deelgemeenten',key:'nis-63087'},{name:'Thommen (Burg-Reuland)',key:'nis-63087A'},{name:'Reuland (Burg-Reuland)',key:'nis-63087B'},{name:'Bütgenbach + deelgemeenten',key:'nis-63013'},{name:'Bütgenbach (Bütgenbach)',key:'nis-63013A'},{name:'Elsenborn (Bütgenbach)',key:'nis-63013B'},{name:'Dison + deelgemeenten',key:'nis-63020'},{name:'Dison (Dison)',key:'nis-63020A'},{name:'Andrimont (Dison)',key:'nis-63020B'},{name:'Eupen + deelgemeenten',key:'nis-63023'},{name:'Eupen (Eupen)',key:'nis-63023A'},{name:'Kettenis (Eupen)',key:'nis-63023B'},{name:'Herve + deelgemeenten',key:'nis-63035'},{name:'Herve (Herve)',key:'nis-63035A'},{name:'Charneux (Herve)',key:'nis-63035B'},{name:'Grand-Rechain (Herve)',key:'nis-63035E'},{name:'Chaineux (Herve)',key:'nis-63035D'},{name:'Battice (Herve)',key:'nis-63035C'},{name:'Xhendelesse (Herve)',key:'nis-63035F'},{name:'Bolland (Herve)',key:'nis-63035G'},{name:'Julémont (Herve)',key:'nis-63035H'},{name:'Jalhay + deelgemeenten',key:'nis-63038'},{name:'Jalhay (Jalhay)',key:'nis-63038A'},{name:'Sart (Jalhay)',key:'nis-63038B'},{name:'Kelmis + deelgemeenten',key:'nis-63040'},{name:'Kelmis (Kelmis)',key:'nis-63040A'},{name:'Neu-Moresnet (Kelmis)',key:'nis-63040B'},{name:'Hergenrath (Kelmis)',key:'nis-63040C'},{name:'Lierneux + deelgemeenten',key:'nis-63045'},{name:'Bra (Lierneux)',key:'nis-63045B'},{name:'Arbrefontaine (Lierneux)',key:'nis-63045C'},{name:'Lierneux (Lierneux)',key:'nis-63045A'},{name:'Limburg + deelgemeenten',key:'nis-63046'},{name:'Limbourg (Limburg)',key:'nis-63046A'},{name:'Bilstain (Limburg)',key:'nis-63046B'},{name:'Goé (Limburg)',key:'nis-63046C'},{name:'Lontzen + deelgemeenten',key:'nis-63048'},{name:'Lontzen (Lontzen)',key:'nis-63048A'},{name:'Walhorn (Lontzen)',key:'nis-63048B'},{name:'Malmedy + deelgemeenten',key:'nis-63049'},{name:'Malmedy (Malmedy)',key:'nis-63049A'},{name:'Bellevaux-Ligneuville (Malmedy)',key:'nis-63049C'},{name:'Bevercé (Malmedy)',key:'nis-63049B'},{name:'Olne + deelgemeenten',key:'nis-63057'},{name:'Olne (Olne)',key:'nis-63057A'},{name:'Pepinster + deelgemeenten',key:'nis-63058'},{name:'Cornesse (Pepinster)',key:'nis-63058A-II'},{name:'Wegnez (Pepinster)',key:'nis-63058C'},{name:'Soiron (Pepinster)',key:'nis-63058B'},{name:'Pepinster (Pepinster)',key:'nis-63058A-I'},{name:'Plombières + deelgemeenten',key:'nis-63088'},{name:'Gemmenich (Plombières)',key:'nis-63088A'},{name:'Moresnet (Plombières)',key:'nis-63088B'},{name:'Montzen (Plombières)',key:'nis-63088C'},{name:'Hombourg (Plombières)',key:'nis-63088D'},{name:'Sippenaeken (Plombières)',key:'nis-63088E'},{name:'Raeren + deelgemeenten',key:'nis-63061'},{name:'Raeren (Raeren)',key:'nis-63061A'},{name:'Eynatten (Raeren)',key:'nis-63061B'},{name:'Hauset (Raeren)',key:'nis-63061C'},{name:'Sankt Vith + deelgemeenten',key:'nis-63067'},{name:'Sankt Vith (Sankt Vith)',key:'nis-63067-Z'},{name:'Lommersweiler (Sankt Vith)',key:'nis-63067D'},{name:'Crombach (Sankt Vith)',key:'nis-63067E'},{name:'Recht (Sankt Vith)',key:'nis-63067F'},{name:'Schönberg (Sankt Vith)',key:'nis-63067C'},{name:'Spa + deelgemeenten',key:'nis-63072'},{name:'Spa (Spa)',key:'nis-63072A'},{name:'Stavelot + deelgemeenten',key:'nis-63073'},{name:'Francorchamps (Stavelot)',key:'nis-63073B'},{name:'Stavelot (Stavelot)',key:'nis-63073A'},{name:'Stoumont + deelgemeenten',key:'nis-63075'},{name:'Stoumont (Stoumont)',key:'nis-63075A'},{name:'La Gleize (Stoumont)',key:'nis-63075B'},{name:'Rahier (Stoumont)',key:'nis-63075C'},{name:'Lorcé (Stoumont)',key:'nis-63075E'},{name:'Chevron (Stoumont)',key:'nis-63075D'},{name:'Theux + deelgemeenten',key:'nis-63076'},{name:'Polleur (Theux)',key:'nis-63076B'},{name:'Theux (Theux)',key:'nis-63076A'},{name:'La Reid (Theux)',key:'nis-63076C'},{name:'Thimister-Clermont + deelgemeenten',key:'nis-63089'},{name:'Thimister (Thimister-Clermont)',key:'nis-63089A'},{name:'Clermont (Thimister-Clermont)',key:'nis-63089B'},{name:'Trois-Ponts + deelgemeenten',key:'nis-63086'},{name:'Fosse (Trois-Ponts)',key:'nis-63086A'},{name:'Wanne (Trois-Ponts)',key:'nis-63086B'},{name:'Basse-Bodeux (Trois-Ponts)',key:'nis-63086C'},{name:'Verviers + deelgemeenten',key:'nis-63079'},{name:'Heusy (Verviers)',key:'nis-63079-Z'},{name:'Verviers (Verviers)',key:'nis-63079A'},{name:'Stembert (Verviers)',key:'nis-63079B'},{name:'Ensival (Verviers)',key:'nis-63079E'},{name:'Lambermont (Verviers)',key:'nis-63079F'},{name:'Petit-Rechain (Verviers)',key:'nis-63079G'},{name:'Weismes + deelgemeenten',key:'nis-63080'},{name:'Waimes (Weismes)',key:'nis-63080A'},{name:'Robertville (Weismes)',key:'nis-63080B'},{name:'Faymonville (Weismes)',key:'nis-63080C'},{name:'Welkenraedt + deelgemeenten',key:'nis-63084'},{name:'Welkenraedt (Welkenraedt)',key:'nis-63084A'},{name:'Henri-Chapelle (Welkenraedt)',key:'nis-63084B'},{name:'Provincie Limburg',key:'nis-70000'},{name:'Regio Haspengouw',key:'reg-haspengouw'},{name:'Alken + deelgemeenten',key:'nis-73001'},{name:'Alken (Alken)',key:'nis-73001A'},{name:'Tongeren + deelgemeenten',key:'nis-73083'},{name:'Tongeren (Tongeren)',key:'nis-73083A'},{name:'Koninksem (Tongeren)',key:'nis-73083B'},{name:'Neerrepen (Tongeren)',key:'nis-73083C'},{name:'Riksingen (Tongeren)',key:'nis-73083D'},{name:'Henis (Tongeren)',key:'nis-73083E'},{name:'Berg (Tongeren)',key:'nis-73083F'},{name:'Mal (Tongeren)',key:'nis-73083G'},{name:'Sluizen (Tongeren)',key:'nis-73083H'},{name:'Nerem (Tongeren)',key:'nis-73083J'},{name:'Diets-Heur (Tongeren)',key:'nis-73083K-II'},{name:'Vreren (Tongeren)',key:'nis-73083K-I'},{name:'Piringen (Tongeren)',key:'nis-73083P'},{name:'Rutten (Tongeren)',key:'nis-73083L'},{name:'Overrepen (Tongeren)',key:'nis-73083R'},{name:'Lauw (Tongeren)',key:'nis-73083M'},{name:'"s-Herenelderen (Tongeren)',key:'nis-73083S'},{name:'Widooie (Tongeren)',key:'nis-73083N'},{name:'Herstappe + deelgemeenten',key:'nis-73028'},{name:'Herstappe (Herstappe)',key:'nis-73028A'},{name:'Kortessem + deelgemeenten',key:'nis-73040'},{name:'Kortessem (Kortessem)',key:'nis-73040A'},{name:'Wintershoven (Kortessem)',key:'nis-73040B'},{name:'Vliermaalroot (Kortessem)',key:'nis-73040C'},{name:'Vliermaal (Kortessem)',key:'nis-73040D'},{name:'Guigoven (Kortessem)',key:'nis-73040E'},{name:'Hoeselt + deelgemeenten',key:'nis-73032'},{name:'Hoeselt (Hoeselt)',key:'nis-73032A'},{name:'Werm (Hoeselt)',key:'nis-73032B'},{name:'Romershoven (Hoeselt)',key:'nis-73032C'},{name:'Schalkhoven (Hoeselt)',key:'nis-73032E'},{name:'Sint-Huibrechts-Hern (Hoeselt)',key:'nis-73032D'},{name:'Bilzen + deelgemeenten',key:'nis-73006'},{name:'Bilzen (Bilzen)',key:'nis-73006A'},{name:'Beverst (Bilzen)',key:'nis-73006B'},{name:'Munsterbilzen (Bilzen)',key:'nis-73006C'},{name:'Waltwilder (Bilzen)',key:'nis-73006D'},{name:'Hoelbeek (Bilzen)',key:'nis-73006E'},{name:'Mopertingen (Bilzen)',key:'nis-73006G'},{name:'Eigenbilzen (Bilzen)',key:'nis-73006F'},{name:'Kleine-Spouwen (Bilzen)',key:'nis-73006K'},{name:'Hees (Bilzen)',key:'nis-73006H'},{name:'Rosmeer (Bilzen)',key:'nis-73006J'},{name:'Grote-Spouwen (Bilzen)',key:'nis-73006L'},{name:'Rijkhoven (Bilzen)',key:'nis-73006M'},{name:'Martenslinde (Bilzen)',key:'nis-73006N'},{name:'Riemst + deelgemeenten',key:'nis-73066'},{name:'Riemst (Riemst)',key:'nis-73066A'},{name:'Herderen (Riemst)',key:'nis-73066B'},{name:'Vlijtingen (Riemst)',key:'nis-73066C'},{name:'Vroenhoven (Riemst)',key:'nis-73066D'},{name:'Kanne (Riemst)',key:'nis-73066E'},{name:'Zichen-Zussen-Bolder (Riemst)',key:'nis-73066F'},{name:'Val-Meer (Riemst)',key:'nis-73066G'},{name:'Millen (Riemst)',key:'nis-73066H'},{name:'Genoelselderen (Riemst)',key:'nis-73066J'},{name:'Membruggen (Riemst)',key:'nis-73066K'},{name:'Sint-Truiden + deelgemeenten',key:'nis-71053'},{name:'Halmaal (Sint-Truiden)',key:'nis-71053B'},{name:'Sint-Truiden (Sint-Truiden)',key:'nis-71053A'},{name:'Wilderen (Sint-Truiden)',key:'nis-71053C'},{name:'Duras (Sint-Truiden)',key:'nis-71053D'},{name:'Gorsem (Sint-Truiden)',key:'nis-71053E'},{name:'Runkelen (Sint-Truiden)',key:'nis-71053F'},{name:'Ordingen (Sint-Truiden)',key:'nis-71053H'},{name:'Zepperen (Sint-Truiden)',key:'nis-71053G'},{name:'Brustem (Sint-Truiden)',key:'nis-71053J'},{name:'Groot-Gelmen (Sint-Truiden)',key:'nis-71053K'},{name:'Engelmanshoven (Sint-Truiden)',key:'nis-71053L'},{name:'Gelinden (Sint-Truiden)',key:'nis-71053M'},{name:'Aalst (Sint-Truiden)',key:'nis-71053N'},{name:'Kerkom-bij-Sint-Truiden (Sint-Truiden)',key:'nis-71053P'},{name:'Velm (Sint-Truiden)',key:'nis-71053R'},{name:'Wellen + deelgemeenten',key:'nis-73098'},{name:'Herten (Wellen)',key:'nis-73098B'},{name:'Wellen (Wellen)',key:'nis-73098A'},{name:'Berlingen (Wellen)',key:'nis-73098C'},{name:'Ulbeek (Wellen)',key:'nis-73098D'},{name:'Borgloon + deelgemeenten',key:'nis-73009'},{name:'Kuttekoven (Borgloon)',key:'nis-73009B'},{name:'Borgloon (Borgloon)',key:'nis-73009A'},{name:'Kerniel (Borgloon)',key:'nis-73009C'},{name:'Jesseren (Borgloon)',key:'nis-73009E'},{name:'Groot-Loon (Borgloon)',key:'nis-73009G'},{name:'Gors-Opleeuw (Borgloon)',key:'nis-73009D'},{name:'Bommershoven (Borgloon)',key:'nis-73009F'},{name:'Hendrieken (Borgloon)',key:'nis-73009J'},{name:'Broekom (Borgloon)',key:'nis-73009H'},{name:'Voort (Borgloon)',key:'nis-73009K'},{name:'Gotem (Borgloon)',key:'nis-73009L'},{name:'Rijkel (Borgloon)',key:'nis-73009N'},{name:'Hoepertingen (Borgloon)',key:'nis-73009M'},{name:'Heers + deelgemeenten',key:'nis-73022'},{name:'Heers (Heers)',key:'nis-73022A'},{name:'Veulen (Heers)',key:'nis-73022D'},{name:'Batsheers (Heers)',key:'nis-73022B'},{name:'Opheers (Heers)',key:'nis-73022C'},{name:'Gutschoven (Heers)',key:'nis-73022E'},{name:'Klein-Gelmen (Heers)',key:'nis-73022G'},{name:'Heks (Heers)',key:'nis-73022H'},{name:'Mettekoven (Heers)',key:'nis-73022F'},{name:'Horpmaal (Heers)',key:'nis-73022J'},{name:'Vechmaal (Heers)',key:'nis-73022K'},{name:'Rukkelingen-Loon (Heers)',key:'nis-73022M'},{name:'Mechelen-Bovelingen (Heers)',key:'nis-73022L'},{name:'Gingelom + deelgemeenten',key:'nis-71017'},{name:'Niel-bij-Sint-Truiden (Gingelom)',key:'nis-71017B'},{name:'Gingelom (Gingelom)',key:'nis-71017A'},{name:'Borlo (Gingelom)',key:'nis-71017E'},{name:'Buvingen (Gingelom)',key:'nis-71017D'},{name:'Muizen (Gingelom)',key:'nis-71017C'},{name:'Mielen-boven-Aalst (Gingelom)',key:'nis-71017F'},{name:'Boekhout (Gingelom)',key:'nis-71017G'},{name:'Jeuk (Gingelom)',key:'nis-71017H'},{name:'Kortijs (Gingelom)',key:'nis-71017K'},{name:'Montenaken (Gingelom)',key:'nis-71017J'},{name:'Vorsen (Gingelom)',key:'nis-71017L'},{name:'Herk-de-Stad + deelgemeenten',key:'nis-71024'},{name:'Donk (Herk-de-Stad)',key:'nis-71024B'},{name:'Herk-de-Stad (Herk-de-Stad)',key:'nis-71024A'},{name:'Schulen (Herk-de-Stad)',key:'nis-71024C'},{name:'Berbroek (Herk-de-Stad)',key:'nis-71024D'},{name:'Halen + deelgemeenten',key:'nis-71020'},{name:'Loksbergen (Halen)',key:'nis-71020A-II'},{name:'Zelem (Halen)',key:'nis-71020B'},{name:'Halen (Halen)',key:'nis-71020A-I'},{name:'Nieuwerkerken + deelgemeenten',key:'nis-71045'},{name:'Wijer (Nieuwerkerken)',key:'nis-71045C'},{name:'Nieuwerkerken (Nieuwerkerken)',key:'nis-71045A'},{name:'Binderveld (Nieuwerkerken)',key:'nis-71045B'},{name:'Kozen (Nieuwerkerken)',key:'nis-71045D'},{name:'Landen + deelgemeenten',key:'nis-24059'},{name:'Rumsdorp (Landen)',key:'nis-24059B'},{name:'Landen (Landen)',key:'nis-24059A'},{name:'Walsbets (Landen)',key:'nis-24059C-III'},{name:'Waasmont (Landen)',key:'nis-24059C-II'},{name:'Wezeren (Landen)',key:'nis-24059C-IV'},{name:'Neerwinden (Landen)',key:'nis-24059D'},{name:'Wange (Landen)',key:'nis-24059E'},{name:'Walshoutem (Landen)',key:'nis-24059C-I'},{name:'Eliksem (Landen)',key:'nis-24059F'},{name:'Laar (Landen)',key:'nis-24059H'},{name:'Overwinden (Landen)',key:'nis-24059J'},{name:'Attenhoven (Landen)',key:'nis-24059K'},{name:'Ezemaal (Landen)',key:'nis-24059G'},{name:'Neerlanden (Landen)',key:'nis-24059L'},{name:'Regio Hasselt',key:'reg-hasselt'},{name:'Hasselt + deelgemeenten',key:'nis-71022'},{name:'Wimmertingen (Hasselt)',key:'nis-71022B'},{name:'Hasselt (Hasselt)',key:'nis-71022A'},{name:'Kuringen (Hasselt)',key:'nis-71022D'},{name:'Stokrooie (Hasselt)',key:'nis-71022E'},{name:'Sint-Lambrechts-Herk (Hasselt)',key:'nis-71022C'},{name:'Kermt (Hasselt)',key:'nis-71022F'},{name:'Spalbeek (Hasselt)',key:'nis-71022G'},{name:'Stevoort (Hasselt)',key:'nis-71022H'},{name:'Regio Kempen',key:'reg-kempen'},{name:'Wijnegem + deelgemeenten',key:'nis-11050'},{name:'Wijnegem (Wijnegem)',key:'nis-11050A'},{name:'Zandhoven + deelgemeenten',key:'nis-11054'},{name:'Zandhoven (Zandhoven)',key:'nis-11054A'},{name:'Pulderbos (Zandhoven)',key:'nis-11054B'},{name:'Pulle (Zandhoven)',key:'nis-11054C'},{name:'Viersel (Zandhoven)',key:'nis-11054D'},{name:'Massenhoven (Zandhoven)',key:'nis-11054E'},{name:'Malle + deelgemeenten',key:'nis-11057'},{name:'Westmalle (Malle)',key:'nis-11057A'},{name:'Oostmalle (Malle)',key:'nis-11057B'},{name:'Ranst + deelgemeenten',key:'nis-11035'},{name:'Ranst (Ranst)',key:'nis-11035A'},{name:'Oelegem (Ranst)',key:'nis-11035B'},{name:'Broechem (Ranst)',key:'nis-11035C'},{name:'Emblem (Ranst)',key:'nis-11035D'},{name:'Schoten + deelgemeenten',key:'nis-11040'},{name:'Schoten (Schoten)',key:'nis-11040A'},{name:'Essen + deelgemeenten',key:'nis-11016'},{name:'Essen (Essen)',key:'nis-11016A'},{name:'Kalmthout + deelgemeenten',key:'nis-11022'},{name:'Kalmthout (Kalmthout)',key:'nis-11022A'},{name:'Brasschaat + deelgemeenten',key:'nis-11008'},{name:'Brasschaat (Brasschaat)',key:'nis-11008A'},{name:'Stabroek + deelgemeenten',key:'nis-11044'},{name:'Stabroek (Stabroek)',key:'nis-11044A'},{name:'Hoevenen (Stabroek)',key:'nis-11044B'},{name:'Kapellen + deelgemeenten',key:'nis-11023'},{name:'Kapellen (Kapellen)',key:'nis-11023-Z'},{name:'Brecht + deelgemeenten',key:'nis-11009'},{name:'Brecht (Brecht)',key:'nis-11009A'},{name:'Sint-Lenaarts (Brecht)',key:'nis-11009B'},{name:'Sint-Job-in-\'t-Goor (Brecht)',key:'nis-11009C'},{name:'Schilde + deelgemeenten',key:'nis-11039'},{name:'Schilde (Schilde)',key:'nis-11039A'},{name:'"s-Gravenwezel (Schilde)',key:'nis-11039B'},{name:'Zoersel + deelgemeenten',key:'nis-11055'},{name:'Halle (Zoersel)',key:'nis-11055B'},{name:'Zoersel (Zoersel)',key:'nis-11055A'},{name:'Wuustwezel + deelgemeenten',key:'nis-11053'},{name:'Wuustwezel (Wuustwezel)',key:'nis-11053A'},{name:'Loenhout (Wuustwezel)',key:'nis-11053B'},{name:'Duffel + deelgemeenten',key:'nis-12009'},{name:'Duffel (Duffel)',key:'nis-12009A'},{name:'Bonheiden + deelgemeenten',key:'nis-12005'},{name:'Bonheiden (Bonheiden)',key:'nis-12005A'},{name:'Rijmenam (Bonheiden)',key:'nis-12005B'},{name:'Sint-Katelijne-Waver + deelgemeenten',key:'nis-12035'},{name:'Onze-Lieve-Vrouw-Waver (Sint-Katelijne-Waver)',key:'nis-12035B'},{name:'Sint-Katelijne-Waver (Sint-Katelijne-Waver)',key:'nis-12035A'},{name:'Herentals + deelgemeenten',key:'nis-13011'},{name:'Herentals (Herentals)',key:'nis-13011A'},{name:'Noorderwijk (Herentals)',key:'nis-13011B'},{name:'Morkhoven (Herentals)',key:'nis-13011C'},{name:'Herselt + deelgemeenten',key:'nis-13013'},{name:'Herselt (Herselt)',key:'nis-13013A'},{name:'Ramsel (Herselt)',key:'nis-13013B'},{name:'Hulshout + deelgemeenten',key:'nis-13016'},{name:'Hulshout (Hulshout)',key:'nis-13016A'},{name:'Houtvenne (Hulshout)',key:'nis-13016C'},{name:'Westmeerbeek (Hulshout)',key:'nis-13016B'},{name:'Olen + deelgemeenten',key:'nis-13029'},{name:'Olen (Olen)',key:'nis-13029A'},{name:'Westerlo + deelgemeenten',key:'nis-13049'},{name:'Tongerlo (Westerlo)',key:'nis-13049B'},{name:'Westerlo (Westerlo)',key:'nis-13049A'},{name:'Zoerle-Parwijs (Westerlo)',key:'nis-13049C'},{name:'Oevel (Westerlo)',key:'nis-13049D'},{name:'Herenthout + deelgemeenten',key:'nis-13012'},{name:'Herenthout (Herenthout)',key:'nis-13012A'},{name:'Lille + deelgemeenten',key:'nis-13019'},{name:'Lille (Lille)',key:'nis-13019A'},{name:'Wechelderzande (Lille)',key:'nis-13019B'},{name:'Gierle (Lille)',key:'nis-13019C'},{name:'Poederlee (Lille)',key:'nis-13019D'},{name:'Grobbendonk + deelgemeenten',key:'nis-13010'},{name:'Bouwel (Grobbendonk)',key:'nis-13010B'},{name:'Grobbendonk (Grobbendonk)',key:'nis-13010A'},{name:'Vorselaar + deelgemeenten',key:'nis-13044'},{name:'Vorselaar (Vorselaar)',key:'nis-13044A'},{name:'Turnhout + deelgemeenten',key:'nis-13040'},{name:'Turnhout (Turnhout)',key:'nis-13040A'},{name:'Rijkevorsel + deelgemeenten',key:'nis-13037'},{name:'Rijkevorsel (Rijkevorsel)',key:'nis-13037A'},{name:'Hoogstraten + deelgemeenten',key:'nis-13014'},{name:'Hoogstraten (Hoogstraten)',key:'nis-13014A'},{name:'Minderhout (Hoogstraten)',key:'nis-13014B'},{name:'Meer (Hoogstraten)',key:'nis-13014C'},{name:'Meerle (Hoogstraten)',key:'nis-13014D'},{name:'Wortel (Hoogstraten)',key:'nis-13014E'},{name:'Merksplas + deelgemeenten',key:'nis-13023'},{name:'Merksplas (Merksplas)',key:'nis-13023A'},{name:'Beerse + deelgemeenten',key:'nis-13004'},{name:'Beerse (Beerse)',key:'nis-13004A'},{name:'Vlimmeren (Beerse)',key:'nis-13004B'},{name:'Vosselaar + deelgemeenten',key:'nis-13046'},{name:'Vosselaar (Vosselaar)',key:'nis-13046A'},{name:'Oud-Turnhout + deelgemeenten',key:'nis-13031'},{name:'Oud-Turnhout (Oud-Turnhout)',key:'nis-13031A'},{name:'Arendonk + deelgemeenten',key:'nis-13001'},{name:'Arendonk (Arendonk)',key:'nis-13001A'},{name:'Ravels + deelgemeenten',key:'nis-13035'},{name:'Ravels (Ravels)',key:'nis-13035A'},{name:'Weelde (Ravels)',key:'nis-13035B'},{name:'Poppel (Ravels)',key:'nis-13035C'},{name:'Baarle-Hertog + deelgemeenten',key:'nis-13002'},{name:'Baarle-Hertog (Baarle-Hertog)',key:'nis-13002A'},{name:'Mol + deelgemeenten',key:'nis-13025'},{name:'Mol (Mol)',key:'nis-13025A'},{name:'Laakdal + deelgemeenten',key:'nis-13053'},{name:'Veerle (Laakdal)',key:'nis-13053A'},{name:'Varendonk (Laakdal)',key:'nis-13053B'},{name:'Vorst (Laakdal)',key:'nis-13053D'},{name:'Eindhout (Laakdal)',key:'nis-13053C'},{name:'Geel + deelgemeenten',key:'nis-13008'},{name:'Geel (Geel)',key:'nis-13008-Z'},{name:'Meerhout + deelgemeenten',key:'nis-13021'},{name:'Meerhout (Meerhout)',key:'nis-13021A'},{name:'Kasterlee + deelgemeenten',key:'nis-13017'},{name:'Lichtaart (Kasterlee)',key:'nis-13017B'},{name:'Tielen (Kasterlee)',key:'nis-13017C'},{name:'Kasterlee (Kasterlee)',key:'nis-13017A'},{name:'Retie + deelgemeenten',key:'nis-13036'},{name:'Retie (Retie)',key:'nis-13036A'},{name:'Dessel + deelgemeenten',key:'nis-13006'},{name:'Dessel (Dessel)',key:'nis-13006A'},{name:'Balen + deelgemeenten',key:'nis-13003'},{name:'Olmen (Balen)',key:'nis-13003B'},{name:'Balen (Balen)',key:'nis-13003A'},{name:'Heist-op-den-Berg + deelgemeenten',key:'nis-12014'},{name:'Heist-op-den-Berg (Heist-op-den-Berg)',key:'nis-12014A'},{name:'Hallaar (Heist-op-den-Berg)',key:'nis-12014B'},{name:'Itegem (Heist-op-den-Berg)',key:'nis-12014C'},{name:'Wiekevorst (Heist-op-den-Berg)',key:'nis-12014D'},{name:'Booischot (Heist-op-den-Berg)',key:'nis-12014E'},{name:'Schriek (Heist-op-den-Berg)',key:'nis-12014F'},{name:'Lier + deelgemeenten',key:'nis-12021'},{name:'Lier (Lier)',key:'nis-12021A'},{name:'Koningshooikt (Lier)',key:'nis-12021B'},{name:'Nijlen + deelgemeenten',key:'nis-12026'},{name:'Kessel (Nijlen)',key:'nis-12026C'},{name:'Nijlen (Nijlen)',key:'nis-12026A'},{name:'Bevel (Nijlen)',key:'nis-12026B'},{name:'Putte + deelgemeenten',key:'nis-12029'},{name:'Beerzel (Putte)',key:'nis-12029B'},{name:'Putte (Putte)',key:'nis-12029A'},{name:'Berlaar + deelgemeenten',key:'nis-12002'},{name:'Gestel (Berlaar)',key:'nis-12002A-II'},{name:'Berlaar (Berlaar)',key:'nis-12002A-I'},{name:'Regio Limburgse Kempen',key:'reg-limburgse-kempen'},{name:'Houthalen-Helchteren + deelgemeenten',key:'nis-72039'},{name:'Helchteren (Houthalen-Helchteren)',key:'nis-72039B'},{name:'Houthalen (Houthalen-Helchteren)',key:'nis-72039A'},{name:'Lommel + deelgemeenten',key:'nis-72020'},{name:'Lommel (Lommel)',key:'nis-72020A'},{name:'Hamont-Achel + deelgemeenten',key:'nis-72037'},{name:'Achel (Hamont-Achel)',key:'nis-72037B'},{name:'Hamont (Hamont-Achel)',key:'nis-72037A'},{name:'Hechtel-Eksel + deelgemeenten',key:'nis-72038'},{name:'Hechtel (Hechtel-Eksel)',key:'nis-72038A'},{name:'Eksel (Hechtel-Eksel)',key:'nis-72038B'},{name:'Bocholt + deelgemeenten',key:'nis-72003'},{name:'Reppel (Bocholt)',key:'nis-72003B'},{name:'Bocholt (Bocholt)',key:'nis-72003A'},{name:'Kaulille (Bocholt)',key:'nis-72003C'},{name:'Bree + deelgemeenten',key:'nis-72004'},{name:'Gerdingen (Bree)',key:'nis-72004A-III'},{name:'Beek (Bree)',key:'nis-72004A-II'},{name:'Bree (Bree)',key:'nis-72004A-I'},{name:'Tongerlo (Bree)',key:'nis-72004B'},{name:'Opitter (Bree)',key:'nis-72004C'},{name:'Peer + deelgemeenten',key:'nis-72030'},{name:'Peer (Peer)',key:'nis-72030A'},{name:'Kleine-Brogel (Peer)',key:'nis-72030B'},{name:'Grote-Brogel (Peer)',key:'nis-72030C'},{name:'Wijchmaal (Peer)',key:'nis-72030D'},{name:'Zonhoven + deelgemeenten',key:'nis-71066'},{name:'Zonhoven (Zonhoven)',key:'nis-71066-Z'},{name:'Heusden-Zolder + deelgemeenten',key:'nis-71070'},{name:'Heusden (Heusden-Zolder)',key:'nis-71070A'},{name:'Zolder (Heusden-Zolder)',key:'nis-71070B'},{name:'Lummen + deelgemeenten',key:'nis-71037'},{name:'Lummen (Lummen)',key:'nis-71037A'},{name:'Linkhout (Lummen)',key:'nis-71037B'},{name:'Meldert (Lummen)',key:'nis-71037C'},{name:'Beringen + deelgemeenten',key:'nis-71004'},{name:'Beringen (Beringen)',key:'nis-71004A'},{name:'Koersel (Beringen)',key:'nis-71004C'},{name:'Paal (Beringen)',key:'nis-71004B'},{name:'Beverlo (Beringen)',key:'nis-71004D'},{name:'Diepenbeek + deelgemeenten',key:'nis-71011'},{name:'Diepenbeek (Diepenbeek)',key:'nis-71011A'},{name:'Genk + deelgemeenten',key:'nis-71016'},{name:'Genk (Genk)',key:'nis-71016-Z'},{name:'As + deelgemeenten',key:'nis-71002'},{name:'As (As)',key:'nis-71002A'},{name:'Niel-bij-As (As)',key:'nis-71002B'},{name:'Zutendaal + deelgemeenten',key:'nis-71067'},{name:'Zutendaal (Zutendaal)',key:'nis-71067A'},{name:'Ham + deelgemeenten',key:'nis-71069'},{name:'Oostham (Ham)',key:'nis-71069A'},{name:'Kwaadmechelen (Ham)',key:'nis-71069B'},{name:'Leopoldsburg + deelgemeenten',key:'nis-71034'},{name:'Heppen (Leopoldsburg)',key:'nis-71034B'},{name:'Leopoldsburg (Leopoldsburg)',key:'nis-71034A'},{name:'Tessenderlo + deelgemeenten',key:'nis-71057'},{name:'Tessenderlo (Tessenderlo)',key:'nis-71057A'},{name:'Pelt + deelgemeenten',key:'nis-72043'},{name:'Sint-Huibrechts-Lille (Pelt)',key:'nis-72025B'},{name:'Neerpelt (Pelt)',key:'nis-72025A'},{name:'Overpelt (Pelt)',key:'nis-72029A'},{name:'Oudsbergen + deelgemeenten',key:'nis-72042'},{name:'Opglabbeek (Oudsbergen)',key:'nis-71047A'},{name:'Wijshagen (Oudsbergen)',key:'nis-72040B'},{name:'Meeuwen (Oudsbergen)',key:'nis-72040A'},{name:'Ellikom (Oudsbergen)',key:'nis-72040C'},{name:'Neerglabbeek (Oudsbergen)',key:'nis-72040E'},{name:'Gruitrode (Oudsbergen)',key:'nis-72040D'},{name:'Regio Maasland',key:'reg-maasland'},{name:'Kinrooi + deelgemeenten',key:'nis-72018'},{name:'Kinrooi (Kinrooi)',key:'nis-72018A'},{name:'Molenbeersel (Kinrooi)',key:'nis-72018B'},{name:'Kessenich (Kinrooi)',key:'nis-72018C'},{name:'Ophoven (Kinrooi)',key:'nis-72018D'},{name:'Dilsen-Stokkem + deelgemeenten',key:'nis-72041'},{name:'Dilsen (Dilsen-Stokkem)',key:'nis-72041A'},{name:'Rotem (Dilsen-Stokkem)',key:'nis-72041B'},{name:'Elen (Dilsen-Stokkem)',key:'nis-72041C'},{name:'Stokkem (Dilsen-Stokkem)',key:'nis-72041D'},{name:'Lanklaar (Dilsen-Stokkem)',key:'nis-72041E'},{name:'Maaseik + deelgemeenten',key:'nis-72021'},{name:'Maaseik (Maaseik)',key:'nis-72021A'},{name:'Neeroeteren (Maaseik)',key:'nis-72021B'},{name:'Opoeteren (Maaseik)',key:'nis-72021C'},{name:'Lanaken + deelgemeenten',key:'nis-73042'},{name:'Lanaken (Lanaken)',key:'nis-73042A'},{name:'Neerharen (Lanaken)',key:'nis-73042C'},{name:'Rekem (Lanaken)',key:'nis-73042B'},{name:'Veldwezelt (Lanaken)',key:'nis-73042D'},{name:'Gellik (Lanaken)',key:'nis-73042E'},{name:'Maasmechelen + deelgemeenten',key:'nis-73107'},{name:'Mechelen-aan-de-Maas (Maasmechelen)',key:'nis-73107A'},{name:'Opgrimbie (Maasmechelen)',key:'nis-73107B'},{name:'Vucht (Maasmechelen)',key:'nis-73107C'},{name:'Boorsem (Maasmechelen)',key:'nis-73107G'},{name:'Leut (Maasmechelen)',key:'nis-73107E'},{name:'Eisden (Maasmechelen)',key:'nis-73107D'},{name:'Meeswijk (Maasmechelen)',key:'nis-73107F'},{name:'Uikhoven (Maasmechelen)',key:'nis-73107H'},{name:'Regio Voerstreek',key:'reg-voerstreek'},{name:'Voeren + deelgemeenten',key:'nis-73109'},{name:'"s-Gravenvoeren (Voeren)',key:'nis-73109A'},{name:'Sint-Martens-Voeren (Voeren)',key:'nis-73109B'},{name:'Teuven (Voeren)',key:'nis-73109C'},{name:'Remersdaal (Voeren)',key:'nis-73109D'},{name:'Sint-Pieters-Voeren (Voeren)',key:'nis-73109E'},{name:'Moelingen (Voeren)',key:'nis-73109F'},{name:'Provincie Luxemburg',key:'nis-80000'},{name:'Regio Luxemburg',key:'reg-luxemburg'},{name:'Aarlen + deelgemeenten',key:'nis-81001'},{name:'Arlon (Aarlen)',key:'nis-81001A'},{name:'Autelbas (Aarlen)',key:'nis-81001B'},{name:'Bonnert (Aarlen)',key:'nis-81001D'},{name:'Heinsch (Aarlen)',key:'nis-81001C'},{name:'Guirsch (Aarlen)',key:'nis-81001E'},{name:'Toernich (Aarlen)',key:'nis-81001F'},{name:'Attert + deelgemeenten',key:'nis-81003'},{name:'Attert (Attert)',key:'nis-81003A'},{name:'Tontelange (Attert)',key:'nis-81003B'},{name:'Thiaumont (Attert)',key:'nis-81003C'},{name:'Nobressart (Attert)',key:'nis-81003D'},{name:'Nothomb (Attert)',key:'nis-81003E'},{name:'Aubange + deelgemeenten',key:'nis-81004'},{name:'Aubange (Aubange)',key:'nis-81004A'},{name:'Athus (Aubange)',key:'nis-81004B'},{name:'Halanzy (Aubange)',key:'nis-81004C'},{name:'Rachecourt (Aubange)',key:'nis-81004D'},{name:'Martelange + deelgemeenten',key:'nis-81013'},{name:'Martelange (Martelange)',key:'nis-81013A'},{name:'Messancy + deelgemeenten',key:'nis-81015'},{name:'Messancy (Messancy)',key:'nis-81015A'},{name:'Sélange (Messancy)',key:'nis-81015B'},{name:'Habergy (Messancy)',key:'nis-81015C'},{name:'Wolkrange (Messancy)',key:'nis-81015D'},{name:'Hondelange (Messancy)',key:'nis-81015E'},{name:'Bastenaken + deelgemeenten',key:'nis-82003'},{name:'Wardin (Bastenaken)',key:'nis-82003B'},{name:'Bastogne (Bastenaken)',key:'nis-82003A'},{name:'Villers-la-Bonne-Eau (Bastenaken)',key:'nis-82003C'},{name:'Noville (Bastenaken)',key:'nis-82003D'},{name:'Longvilly (Bastenaken)',key:'nis-82003E'},{name:'Bertogne + deelgemeenten',key:'nis-82005'},{name:'Bertogne (Bertogne)',key:'nis-82005A'},{name:'Longchamps (Bertogne)',key:'nis-82005B'},{name:'Flamierge (Bertogne)',key:'nis-82005C'},{name:'Fauvillers + deelgemeenten',key:'nis-82009'},{name:'Fauvillers (Fauvillers)',key:'nis-82009A'},{name:'Hollange (Fauvillers)',key:'nis-82009C'},{name:'Tintange (Fauvillers)',key:'nis-82009B'},{name:'Gouvy + deelgemeenten',key:'nis-82037'},{name:'Bovigny (Gouvy)',key:'nis-82037A'},{name:'Beho (Gouvy)',key:'nis-82037B'},{name:'Limerlé (Gouvy)',key:'nis-82037C'},{name:'Cherain (Gouvy)',key:'nis-82037D'},{name:'Montleban (Gouvy)',key:'nis-82037E'},{name:'Houffalize + deelgemeenten',key:'nis-82014'},{name:'Houffalize (Houffalize)',key:'nis-82014A'},{name:'Mabompré (Houffalize)',key:'nis-82014B'},{name:'Wibrin (Houffalize)',key:'nis-82014D'},{name:'Nadrin (Houffalize)',key:'nis-82014C'},{name:'Tailles (Houffalize)',key:'nis-82014E'},{name:'Tavigny (Houffalize)',key:'nis-82014G'},{name:'Mont (Houffalize)',key:'nis-82014F'},{name:'Sainte-Ode + deelgemeenten',key:'nis-82038'},{name:'Amberloup (Sainte-Ode)',key:'nis-82038B'},{name:'Tillet (Sainte-Ode)',key:'nis-82038A'},{name:'Lavacherie (Sainte-Ode)',key:'nis-82038C'},{name:'Vaux-sur-Sûre + deelgemeenten',key:'nis-82036'},{name:'Nives (Vaux-sur-Sûre)',key:'nis-82036B'},{name:'Vaux-lez-Rosières (Vaux-sur-Sûre)',key:'nis-82036A'},{name:'Morhet (Vaux-sur-Sûre)',key:'nis-82036C'},{name:'Hompré (Vaux-sur-Sûre)',key:'nis-82036D'},{name:'Sibret (Vaux-sur-Sûre)',key:'nis-82036E'},{name:'Juseret (Vaux-sur-Sûre)',key:'nis-82036F'},{name:'Vielsalm + deelgemeenten',key:'nis-82032'},{name:'Petit-Thier (Vielsalm)',key:'nis-82032B'},{name:'Vielsalm (Vielsalm)',key:'nis-82032A'},{name:'Bihain (Vielsalm)',key:'nis-82032C'},{name:'Grand-Halleux (Vielsalm)',key:'nis-82032D'},{name:'Durbuy + deelgemeenten',key:'nis-83012'},{name:'Durbuy (Durbuy)',key:'nis-83012A'},{name:'Septon (Durbuy)',key:'nis-83012C'},{name:'Grandhan (Durbuy)',key:'nis-83012B'},{name:'Barvaux (Durbuy)',key:'nis-83012E'},{name:'Tohogne (Durbuy)',key:'nis-83012D'},{name:'Bende (Durbuy)',key:'nis-83012G'},{name:'Villers-Sainte-Gertrude (Durbuy)',key:'nis-83012K'},{name:'Borlon (Durbuy)',key:'nis-83012F'},{name:'Izier (Durbuy)',key:'nis-83012J'},{name:'Bomal (Durbuy)',key:'nis-83012H'},{name:'Heyd (Durbuy)',key:'nis-83012L'},{name:'Wéris (Durbuy)',key:'nis-83012M'},{name:'Erezée + deelgemeenten',key:'nis-83013'},{name:'Érezée (Erezée)',key:'nis-83013A'},{name:'Amonines (Erezée)',key:'nis-83013B'},{name:'Mormont (Erezée)',key:'nis-83013D'},{name:'Soy (Erezée)',key:'nis-83013C'},{name:'Hotton + deelgemeenten',key:'nis-83028'},{name:'Hotton (Hotton)',key:'nis-83028A'},{name:'Hampteau (Hotton)',key:'nis-83028B'},{name:'Marenne (Hotton)',key:'nis-83028C'},{name:'Fronville (Hotton)',key:'nis-83028D'},{name:'La Roche-en-Ardenne + deelgemeenten',key:'nis-83031'},{name:'Samrée (La Roche-en-Ardenne)',key:'nis-83031B'},{name:'La Roche-en-Ardenne (La Roche-en-Ardenne)',key:'nis-83031A'},{name:'Ortho (La Roche-en-Ardenne)',key:'nis-83031C'},{name:'Hives (La Roche-en-Ardenne)',key:'nis-83031D'},{name:'Beausaint (La Roche-en-Ardenne)',key:'nis-83031E'},{name:'Halleux (La Roche-en-Ardenne)',key:'nis-83031F'},{name:'Manhay + deelgemeenten',key:'nis-83055'},{name:'Grandmenil (Manhay)',key:'nis-83055A'},{name:'Harre (Manhay)',key:'nis-83055B'},{name:'Vaux-Chavanne (Manhay)',key:'nis-83055C'},{name:'Malempré (Manhay)',key:'nis-83055D'},{name:'Odeigne (Manhay)',key:'nis-83055E'},{name:'Dochamps (Manhay)',key:'nis-83055F'},{name:'Marche-en-Famenne + deelgemeenten',key:'nis-83034'},{name:'Marche-en-Famenne (Marche-en-Famenne)',key:'nis-83034A'},{name:'Waha (Marche-en-Famenne)',key:'nis-83034B'},{name:'Aye (Marche-en-Famenne)',key:'nis-83034C'},{name:'Hargimont (Marche-en-Famenne)',key:'nis-83034D'},{name:'On (Marche-en-Famenne)',key:'nis-83034E'},{name:'Humain (Marche-en-Famenne)',key:'nis-83034F'},{name:'Roy (Marche-en-Famenne)',key:'nis-83034G'},{name:'Nassogne + deelgemeenten',key:'nis-83040'},{name:'Nassogne (Nassogne)',key:'nis-83040A'},{name:'Ambly (Nassogne)',key:'nis-83040C'},{name:'Masbourg (Nassogne)',key:'nis-83040B'},{name:'Harsin (Nassogne)',key:'nis-83040D'},{name:'Grune (Nassogne)',key:'nis-83040E'},{name:'Lesterny (Nassogne)',key:'nis-83040F'},{name:'Forrières (Nassogne)',key:'nis-83040G'},{name:'Bande (Nassogne)',key:'nis-83040H'},{name:'Rendeux + deelgemeenten',key:'nis-83044'},{name:'Rendeux (Rendeux)',key:'nis-83044A'},{name:'Beffe (Rendeux)',key:'nis-83044B'},{name:'Marcourt (Rendeux)',key:'nis-83044C'},{name:'Hodister (Rendeux)',key:'nis-83044D'},{name:'Tenneville + deelgemeenten',key:'nis-83049'},{name:'Erneuville (Tenneville)',key:'nis-83049C'},{name:'Champlon (Tenneville)',key:'nis-83049B'},{name:'Tenneville (Tenneville)',key:'nis-83049A'},{name:'Bertrix + deelgemeenten',key:'nis-84009'},{name:'Jehonville (Bertrix)',key:'nis-84009B'},{name:'Bertrix (Bertrix)',key:'nis-84009A'},{name:'Orgeo (Bertrix)',key:'nis-84009C'},{name:'Cugnon (Bertrix)',key:'nis-84009D'},{name:'Auby-sur-Semois (Bertrix)',key:'nis-84009E'},{name:'Bouillon + deelgemeenten',key:'nis-84010'},{name:'Bouillon (Bouillon)',key:'nis-84010A'},{name:'Noirefontaine (Bouillon)',key:'nis-84010D'},{name:'Corbion (Bouillon)',key:'nis-84010B'},{name:'Sensenruth (Bouillon)',key:'nis-84010C'},{name:'Dohan (Bouillon)',key:'nis-84010E'},{name:'Rochehaut (Bouillon)',key:'nis-84010F'},{name:'Poupehan (Bouillon)',key:'nis-84010G'},{name:'Ucimont (Bouillon)',key:'nis-84010H'},{name:'Vivy (Bouillon)',key:'nis-84010J'},{name:'Les Hayons (Bouillon)',key:'nis-84010L'},{name:'Bellevaux (Bouillon)',key:'nis-84010K'},{name:'Daverdisse + deelgemeenten',key:'nis-84016'},{name:'Daverdisse (Daverdisse)',key:'nis-84016A'},{name:'Gembes (Daverdisse)',key:'nis-84016C'},{name:'Haut-Fays (Daverdisse)',key:'nis-84016D'},{name:'Porcheresse (Daverdisse)',key:'nis-84016B'},{name:'Herbeumont + deelgemeenten',key:'nis-84029'},{name:'Herbeumont (Herbeumont)',key:'nis-84029A'},{name:'Saint-Médard (Herbeumont)',key:'nis-84029B'},{name:'Straimont (Herbeumont)',key:'nis-84029C'},{name:'Léglise + deelgemeenten',key:'nis-84033'},{name:'Léglise (Léglise)',key:'nis-84033A'},{name:'Ébly (Léglise)',key:'nis-84033B'},{name:'Witry (Léglise)',key:'nis-84033C'},{name:'Mellier (Léglise)',key:'nis-84033D'},{name:'Assenois (Léglise)',key:'nis-84033E'},{name:'Libin + deelgemeenten',key:'nis-84035'},{name:'Libin (Libin)',key:'nis-84035A'},{name:'Villance (Libin)',key:'nis-84035B'},{name:'Smuid (Libin)',key:'nis-84035C'},{name:'Ochamps (Libin)',key:'nis-84035D'},{name:'Anloy (Libin)',key:'nis-84035E'},{name:'Transinne (Libin)',key:'nis-84035F'},{name:'Redu (Libin)',key:'nis-84035G'},{name:'Libramont-Chevigny + deelgemeenten',key:'nis-84077'},{name:'Libramont (Libramont-Chevigny)',key:'nis-84077A'},{name:'Freux (Libramont-Chevigny)',key:'nis-84077E'},{name:'Saint-Pierre (Libramont-Chevigny)',key:'nis-84077C'},{name:'Bras (Libramont-Chevigny)',key:'nis-84077B'},{name:'Recogne (Libramont-Chevigny)',key:'nis-84077D'},{name:'Moircy (Libramont-Chevigny)',key:'nis-84077G'},{name:'Sainte-Marie-Chevigny (Libramont-Chevigny)',key:'nis-84077F'},{name:'Remagne (Libramont-Chevigny)',key:'nis-84077H'},{name:'Neufchâteau + deelgemeenten',key:'nis-84043'},{name:'Neufchâteau (Neufchâteau)',key:'nis-84043A'},{name:'Longlier (Neufchâteau)',key:'nis-84043B'},{name:'Hamipré (Neufchâteau)',key:'nis-84043C'},{name:'Tournay (Neufchâteau)',key:'nis-84043E'},{name:'Grapfontaine (Neufchâteau)',key:'nis-84043D'},{name:'Grandvoir (Neufchâteau)',key:'nis-84043F'},{name:'Paliseul + deelgemeenten',key:'nis-84050'},{name:'Paliseul (Paliseul)',key:'nis-84050A'},{name:'Opont (Paliseul)',key:'nis-84050B'},{name:'Framont (Paliseul)',key:'nis-84050C'},{name:'Offagne (Paliseul)',key:'nis-84050D'},{name:'Fays-les-Veneurs (Paliseul)',key:'nis-84050E'},{name:'Nollevaux (Paliseul)',key:'nis-84050F'},{name:'Carlsbourg (Paliseul)',key:'nis-84050G'},{name:'Maissin (Paliseul)',key:'nis-84050H'},{name:'Saint-Hubert + deelgemeenten',key:'nis-84059'},{name:'Saint-Hubert (Saint-Hubert)',key:'nis-84059A'},{name:'Hatrival (Saint-Hubert)',key:'nis-84059C'},{name:'Vesqueville (Saint-Hubert)',key:'nis-84059B'},{name:'Awenne (Saint-Hubert)',key:'nis-84059E'},{name:'Arville (Saint-Hubert)',key:'nis-84059D'},{name:'Mirwart (Saint-Hubert)',key:'nis-84059F'},{name:'Tellin + deelgemeenten',key:'nis-84068'},{name:'Tellin (Tellin)',key:'nis-84068A'},{name:'Bure (Tellin)',key:'nis-84068B'},{name:'Grupont (Tellin)',key:'nis-84068D'},{name:'Resteigne (Tellin)',key:'nis-84068C'},{name:'Wellin + deelgemeenten',key:'nis-84075'},{name:'Wellin (Wellin)',key:'nis-84075A'},{name:'Halma (Wellin)',key:'nis-84075B'},{name:'Lomprez (Wellin)',key:'nis-84075C'},{name:'Sohier (Wellin)',key:'nis-84075D'},{name:'Chanly (Wellin)',key:'nis-84075E'},{name:'Chiny + deelgemeenten',key:'nis-85007'},{name:'Chiny (Chiny)',key:'nis-85007A'},{name:'Les Bulles (Chiny)',key:'nis-85007C'},{name:'Suxy (Chiny)',key:'nis-85007B'},{name:'Izel (Chiny)',key:'nis-85007D'},{name:'Jamoigne (Chiny)',key:'nis-85007E'},{name:'Termes (Chiny)',key:'nis-85007F'},{name:'Etalle + deelgemeenten',key:'nis-85009'},{name:'Étalle (Etalle)',key:'nis-85009A'},{name:'Vance (Etalle)',key:'nis-85009B'},{name:'Buzenol (Etalle)',key:'nis-85009D'},{name:'Chantemelle (Etalle)',key:'nis-85009C'},{name:'Sainte-Marie (Etalle)',key:'nis-85009E'},{name:'Villers-sur-Semois (Etalle)',key:'nis-85009F'},{name:'Florenville + deelgemeenten',key:'nis-85011'},{name:'Florenville (Florenville)',key:'nis-85011A'},{name:'Chassepierre (Florenville)',key:'nis-85011C'},{name:'Villers-devant-Orval (Florenville)',key:'nis-85011B'},{name:'Fontenoille (Florenville)',key:'nis-85011E'},{name:'Lacuisine (Florenville)',key:'nis-85011D'},{name:'Sainte-Cécile (Florenville)',key:'nis-85011F'},{name:'Muno (Florenville)',key:'nis-85011G'},{name:'Habay + deelgemeenten',key:'nis-85046'},{name:'Habay-la-Vieille (Habay)',key:'nis-85046C'},{name:'Hachy (Habay)',key:'nis-85046B'},{name:'Habay-la-Neuve (Habay)',key:'nis-85046A'},{name:'Houdemont (Habay)',key:'nis-85046D'},{name:'Rulles (Habay)',key:'nis-85046E'},{name:'Anlier (Habay)',key:'nis-85046F'},{name:'Meix-devant-Virton + deelgemeenten',key:'nis-85024'},{name:'Meix-devant-Virton (Meix-devant-Virton)',key:'nis-85024A'},{name:'Robelmont (Meix-devant-Virton)',key:'nis-85024B'},{name:'Sommethonne (Meix-devant-Virton)',key:'nis-85024D'},{name:'Villers-la-Loue (Meix-devant-Virton)',key:'nis-85024C'},{name:'Gérouville (Meix-devant-Virton)',key:'nis-85024E'},{name:'Musson + deelgemeenten',key:'nis-85026'},{name:'Mussy-la-Ville (Musson)',key:'nis-85026B'},{name:'Musson (Musson)',key:'nis-85026A'},{name:'Rouvroy + deelgemeenten',key:'nis-85047'},{name:'Lamorteau (Rouvroy)',key:'nis-85047C'},{name:'Dampicourt (Rouvroy)',key:'nis-85047A'},{name:'Harnoncourt (Rouvroy)',key:'nis-85047B'},{name:'Torgny (Rouvroy)',key:'nis-85047D'},{name:'Saint-Léger + deelgemeenten',key:'nis-85034'},{name:'Châtillon (Saint-Léger)',key:'nis-85034B'},{name:'Saint-Léger (Saint-Léger)',key:'nis-85034A'},{name:'Meix-le-Tige (Saint-Léger)',key:'nis-85034C'},{name:'Tintigny + deelgemeenten',key:'nis-85039'},{name:'Bellefontaine (Tintigny)',key:'nis-85039B'},{name:'Tintigny (Tintigny)',key:'nis-85039A'},{name:'Saint-Vincent (Tintigny)',key:'nis-85039C'},{name:'Rossignol (Tintigny)',key:'nis-85039D'},{name:'Virton + deelgemeenten',key:'nis-85045'},{name:'Virton (Virton)',key:'nis-85045A'},{name:'Èthe (Virton)',key:'nis-85045B'},{name:'Latour (Virton)',key:'nis-85045C'},{name:'Saint-Mard (Virton)',key:'nis-85045D'},{name:'Ruette (Virton)',key:'nis-85045E'},{name:'Bleid (Virton)',key:'nis-85045F'},{name:'Provincie Namen',key:'nis-90000'},{name:'Regio Namen + deelgemeenten',key:'reg-namen'},{name:'Anhée + deelgemeenten',key:'nis-91005'},{name:'Haut-le-Wastia (Anhée)',key:'nis-91005A-III'},{name:'Warnant (Anhée)',key:'nis-91005A-II'},{name:'Anhée (Anhée)',key:'nis-91005A-I'},{name:'Sosoye (Anhée)',key:'nis-91005B'},{name:'Annevoie-Rouillon (Anhée)',key:'nis-91005E'},{name:'Denée (Anhée)',key:'nis-91005C'},{name:'Bioul (Anhée)',key:'nis-91005D'},{name:'Beauraing + deelgemeenten',key:'nis-91013'},{name:'Javingue (Beauraing)',key:'nis-91013B'},{name:'Winenne (Beauraing)',key:'nis-91013C'},{name:'Beauraing (Beauraing)',key:'nis-91013A'},{name:'Felenne (Beauraing)',key:'nis-91013D'},{name:'Feschaux (Beauraing)',key:'nis-91013F'},{name:'Wiesme (Beauraing)',key:'nis-91013H'},{name:'Dion (Beauraing)',key:'nis-91013E'},{name:'Baronville (Beauraing)',key:'nis-91013G'},{name:'Froidfontaine (Beauraing)',key:'nis-91013M'},{name:'Martouzin-Neuville (Beauraing)',key:'nis-91013J'},{name:'Focant (Beauraing)',key:'nis-91013K'},{name:'Honnay (Beauraing)',key:'nis-91013L'},{name:'Vonêche (Beauraing)',key:'nis-91013N'},{name:'Wancennes (Beauraing)',key:'nis-91013P'},{name:'Pondrôme (Beauraing)',key:'nis-91013R'},{name:'Bièvre + deelgemeenten',key:'nis-91015'},{name:'Bièvre (Bièvre)',key:'nis-91015A'},{name:'Gros-Fays (Bièvre)',key:'nis-91015D-III'},{name:'Graide (Bièvre)',key:'nis-91015B'},{name:'Naomé (Bièvre)',key:'nis-91015C'},{name:'Baillamont (Bièvre)',key:'nis-91015D-II'},{name:'Cornimont (Bièvre)',key:'nis-91015D-IV'},{name:'Oizy (Bièvre)',key:'nis-91015D-I'},{name:'Petit-Fays (Bièvre)',key:'nis-91015E-III'},{name:'Monceau-en-Ardenne (Bièvre)',key:'nis-91015E-I'},{name:'Bellefontaine (Bièvre)',key:'nis-91015E-II'},{name:'Ciney + deelgemeenten',key:'nis-91030'},{name:'Ciney (Ciney)',key:'nis-91030A'},{name:'Pessoux (Ciney)',key:'nis-91030B'},{name:'Leignon (Ciney)',key:'nis-91030D'},{name:'Conneux (Ciney)',key:'nis-91030F'},{name:'Achêne (Ciney)',key:'nis-91030G'},{name:'Chevetogne (Ciney)',key:'nis-91030E'},{name:'Serinchamps (Ciney)',key:'nis-91030C'},{name:'Sovet (Ciney)',key:'nis-91030H'},{name:'Braibant (Ciney)',key:'nis-91030J'},{name:'Dinant + deelgemeenten',key:'nis-91034'},{name:'Anseremme (Dinant)',key:'nis-91034A-III'},{name:'Dréhance (Dinant)',key:'nis-91034A-IV'},{name:'Lisogne (Dinant)',key:'nis-91034B'},{name:'Bouvignes-sur-Meuse (Dinant)',key:'nis-91034A-II'},{name:'Dinant (Dinant)',key:'nis-91034A-I'},{name:'Thynes (Dinant)',key:'nis-91034C'},{name:'Sorinnes (Dinant)',key:'nis-91034D'},{name:'Foy-Notre-Dame (Dinant)',key:'nis-91034E'},{name:'Furfooz (Dinant)',key:'nis-91034F'},{name:'Falmignoul (Dinant)',key:'nis-91034H'},{name:'Falmagne (Dinant)',key:'nis-91034G'},{name:'Gedinne + deelgemeenten',key:'nis-91054'},{name:'Gedinne (Gedinne)',key:'nis-91054A'},{name:'Louette-Saint-Denis (Gedinne)',key:'nis-91054B'},{name:'Houdremont (Gedinne)',key:'nis-91054C'},{name:'Louette-Saint-Pierre (Gedinne)',key:'nis-91054D'},{name:'Rienne (Gedinne)',key:'nis-91054E'},{name:'Willerzie (Gedinne)',key:'nis-91054F'},{name:'Bourseigne-Neuve (Gedinne)',key:'nis-91054G'},{name:'Bourseigne-Vieille (Gedinne)',key:'nis-91054H'},{name:'Vencimont (Gedinne)',key:'nis-91054J'},{name:'Sart-Custinne (Gedinne)',key:'nis-91054K'},{name:'Patignies (Gedinne)',key:'nis-91054L'},{name:'Malvoisin (Gedinne)',key:'nis-91054M'},{name:'Hamois + deelgemeenten',key:'nis-91059'},{name:'Hamois (Hamois)',key:'nis-91059A'},{name:'Achet (Hamois)',key:'nis-91059B'},{name:'Mohiville (Hamois)',key:'nis-91059C'},{name:'Scy (Hamois)',key:'nis-91059D'},{name:'Emptinne (Hamois)',key:'nis-91059E'},{name:'Natoye (Hamois)',key:'nis-91059F'},{name:'Schaltin (Hamois)',key:'nis-91059G'},{name:'Hastière + deelgemeenten',key:'nis-91142'},{name:'Waulsort (Hastière)',key:'nis-91142C'},{name:'Blaimont (Hastière)',key:'nis-91142D'},{name:'Hastière-Lavaux (Hastière)',key:'nis-91142A'},{name:'Hastière-par-delà (Hastière)',key:'nis-91142B'},{name:'Agimont (Hastière)',key:'nis-91142F'},{name:'Hermeton-sur-Meuse (Hastière)',key:'nis-91142G'},{name:'Heer (Hastière)',key:'nis-91142E'},{name:'Havelange + deelgemeenten',key:'nis-91064'},{name:'Verlée (Havelange)',key:'nis-91064B'},{name:'Maffe (Havelange)',key:'nis-91064C'},{name:'Havelange (Havelange)',key:'nis-91064A'},{name:'Méan (Havelange)',key:'nis-91064D'},{name:'Barvaux-Condroz (Havelange)',key:'nis-91064E'},{name:'Porcheresse (Havelange)',key:'nis-91064F'},{name:'Jeneffe (Havelange)',key:'nis-91064G'},{name:'Miécret (Havelange)',key:'nis-91064H'},{name:'Flostoy (Havelange)',key:'nis-91064J'},{name:'Houyet + deelgemeenten',key:'nis-91072'},{name:'Mesnil-Église (Houyet)',key:'nis-91072C'},{name:'Houyet (Houyet)',key:'nis-91072A'},{name:'Finnevaux (Houyet)',key:'nis-91072D'},{name:'Hour (Houyet)',key:'nis-91072B'},{name:'Mesnil-Saint-Blaise (Houyet)',key:'nis-91072E'},{name:'Hulsonniaux (Houyet)',key:'nis-91072F'},{name:'Celles (Houyet)',key:'nis-91072G'},{name:'Custinne (Houyet)',key:'nis-91072H'},{name:'Ciergnon (Houyet)',key:'nis-91072J'},{name:'Wanlin (Houyet)',key:'nis-91072K'},{name:'Onhaye + deelgemeenten',key:'nis-91103'},{name:'Gerin (Onhaye)',key:'nis-91103B'},{name:'Onhaye (Onhaye)',key:'nis-91103A'},{name:'Serville (Onhaye)',key:'nis-91103D'},{name:'Anthée (Onhaye)',key:'nis-91103C'},{name:'Sommière (Onhaye)',key:'nis-91103F'},{name:'Falaën (Onhaye)',key:'nis-91103E'},{name:'Weillen (Onhaye)',key:'nis-91103G'},{name:'Rochefort + deelgemeenten',key:'nis-91114'},{name:'Rochefort (Rochefort)',key:'nis-91114A'},{name:'Han-sur-Lesse (Rochefort)',key:'nis-91114D'},{name:'Jemelle (Rochefort)',key:'nis-91114B'},{name:'Ave-et-Auffe (Rochefort)',key:'nis-91114G'},{name:'Lessive (Rochefort)',key:'nis-91114F'},{name:'Éprave (Rochefort)',key:'nis-91114E'},{name:'Wavreille (Rochefort)',key:'nis-91114C'},{name:'Lavaux-Sainte-Anne (Rochefort)',key:'nis-91114H'},{name:'Villers-sur-Lesse (Rochefort)',key:'nis-91114J'},{name:'Mont-Gauthier (Rochefort)',key:'nis-91114K'},{name:'Buissonville (Rochefort)',key:'nis-91114L'},{name:'Somme-Leuze + deelgemeenten',key:'nis-91120'},{name:'Noiseux (Somme-Leuze)',key:'nis-91120B'},{name:'Somme-Leuze (Somme-Leuze)',key:'nis-91120A'},{name:'Baillonville (Somme-Leuze)',key:'nis-91120C'},{name:'Waillet (Somme-Leuze)',key:'nis-91120D'},{name:'Sinsin (Somme-Leuze)',key:'nis-91120F'},{name:'Nettinne (Somme-Leuze)',key:'nis-91120G'},{name:'Hogne (Somme-Leuze)',key:'nis-91120E'},{name:'Heure (Somme-Leuze)',key:'nis-91120H'},{name:'Bonsin (Somme-Leuze)',key:'nis-91120J'},{name:'Vresse-sur-Semois + deelgemeenten',key:'nis-91143'},{name:'Laforêt (Vresse-sur-Semois)',key:'nis-91143A-III'},{name:'Chairière (Vresse-sur-Semois)',key:'nis-91143B-III'},{name:'Membre (Vresse-sur-Semois)',key:'nis-91143A-II'},{name:'Mouzaive (Vresse-sur-Semois)',key:'nis-91143B-II'},{name:'Vresse (Vresse-sur-Semois)',key:'nis-91143A-I'},{name:'Alle (Vresse-sur-Semois)',key:'nis-91143B-I'},{name:'Pussemange (Vresse-sur-Semois)',key:'nis-91143C-III'},{name:'Bagimont (Vresse-sur-Semois)',key:'nis-91143C-II'},{name:'Sugny (Vresse-sur-Semois)',key:'nis-91143C-I'},{name:'Bohan (Vresse-sur-Semois)',key:'nis-91143D'},{name:'Nafraiture (Vresse-sur-Semois)',key:'nis-91143F'},{name:'Orchimont (Vresse-sur-Semois)',key:'nis-91143E'},{name:'Yvoir + deelgemeenten',key:'nis-91141'},{name:'Houx (Yvoir)',key:'nis-91141A-III'},{name:'Évrehailles (Yvoir)',key:'nis-91141A-II'},{name:'Yvoir (Yvoir)',key:'nis-91141A-I'},{name:'Godinne (Yvoir)',key:'nis-91141B-I'},{name:'Durnal (Yvoir)',key:'nis-91141C'},{name:'Spontin (Yvoir)',key:'nis-91141D'},{name:'Mont (Yvoir)',key:'nis-91141B-II'},{name:'Purnode (Yvoir)',key:'nis-91141F'},{name:'Dorinne (Yvoir)',key:'nis-91141E'},{name:'Andenne + deelgemeenten',key:'nis-92003'},{name:'Andenne (Andenne)',key:'nis-92003A'},{name:'Coutisse (Andenne)',key:'nis-92003B'},{name:'Bonneville (Andenne)',key:'nis-92003C'},{name:'Thon (Andenne)',key:'nis-92003D'},{name:'Namêche (Andenne)',key:'nis-92003F'},{name:'Sclayn (Andenne)',key:'nis-92003G'},{name:'Maizeret (Andenne)',key:'nis-92003E'},{name:'Vezin (Andenne)',key:'nis-92003H'},{name:'Landenne (Andenne)',key:'nis-92003J'},{name:'Seilles (Andenne)',key:'nis-92003K'},{name:'Assesse + deelgemeenten',key:'nis-92006'},{name:'Assesse (Assesse)',key:'nis-92006A'},{name:'Crupet (Assesse)',key:'nis-92006B'},{name:'Maillen (Assesse)',key:'nis-92006C'},{name:'Sart-Bernard (Assesse)',key:'nis-92006D'},{name:'Sorinne-la-Longue (Assesse)',key:'nis-92006F'},{name:'Courrière (Assesse)',key:'nis-92006E'},{name:'Florée (Assesse)',key:'nis-92006G'},{name:'Eghezée + deelgemeenten',key:'nis-92035'},{name:'Éghezée (Eghezée)',key:'nis-92035A'},{name:'Longchamps (Eghezée)',key:'nis-92035B'},{name:'Mehaigne (Eghezée)',key:'nis-92035D'},{name:'Upigny (Eghezée)',key:'nis-92035C'},{name:'Noville-sur-Méhaigne (Eghezée)',key:'nis-92035E'},{name:'Bolinne (Eghezée)',key:'nis-92035F'},{name:'Taviers (Eghezée)',key:'nis-92035G'},{name:'Boneffe (Eghezée)',key:'nis-92035H'},{name:'Branchon (Eghezée)',key:'nis-92035J'},{name:'Hanret (Eghezée)',key:'nis-92035K'},{name:'Waret-la-Chaussée (Eghezée)',key:'nis-92035M'},{name:'Leuze (Eghezée)',key:'nis-92035L'},{name:'Dhuy (Eghezée)',key:'nis-92035N'},{name:'Liernu (Eghezée)',key:'nis-92035R'},{name:'Aische-en-Refail (Eghezée)',key:'nis-92035S'},{name:'Saint-Germain (Eghezée)',key:'nis-92035P'},{name:'Fernelmont + deelgemeenten',key:'nis-92138'},{name:'Bierwart (Fernelmont)',key:'nis-92138B'},{name:'Pontillas (Fernelmont)',key:'nis-92138C'},{name:'Forville (Fernelmont)',key:'nis-92138A'},{name:'Hingeon (Fernelmont)',key:'nis-92138D'},{name:'Noville-les-Bois (Fernelmont)',key:'nis-92138E'},{name:'Franc-Waret (Fernelmont)',key:'nis-92138F'},{name:'Marchovelette (Fernelmont)',key:'nis-92138G'},{name:'Tillier (Fernelmont)',key:'nis-92138H'},{name:'Hemptinne (Fernelmont)',key:'nis-92138K'},{name:'Cortil-Wodon (Fernelmont)',key:'nis-92138J'},{name:'Floreffe + deelgemeenten',key:'nis-92045'},{name:'Floreffe (Floreffe)',key:'nis-92045A'},{name:'Franière (Floreffe)',key:'nis-92045B'},{name:'Soye (Floreffe)',key:'nis-92045C'},{name:'Floriffoux (Floreffe)',key:'nis-92045D'},{name:'Fosses-la-Ville + deelgemeenten',key:'nis-92048'},{name:'Vitrival (Fosses-la-Ville)',key:'nis-92048B'},{name:'Fosses-la-Ville (Fosses-la-Ville)',key:'nis-92048A'},{name:'Sart-Eustache (Fosses-la-Ville)',key:'nis-92048C'},{name:'Le Roux (Fosses-la-Ville)',key:'nis-92048D'},{name:'Aisemont (Fosses-la-Ville)',key:'nis-92048E'},{name:'Sart-Saint-Laurent (Fosses-la-Ville)',key:'nis-92048F'},{name:'Gembloux + deelgemeenten',key:'nis-92142'},{name:'Sauvenière (Gembloux)',key:'nis-92142A-III'},{name:'Ernage (Gembloux)',key:'nis-92142A-II'},{name:'Lonzée (Gembloux)',key:'nis-92142A-IV'},{name:'Gembloux (Gembloux)',key:'nis-92142A-I'},{name:'Grand-Manil (Gembloux)',key:'nis-92142A-V'},{name:'Grand-Leez (Gembloux)',key:'nis-92142B'},{name:'Beuzet (Gembloux)',key:'nis-92142C'},{name:'Isnes (Gembloux)',key:'nis-92142D'},{name:'Bossière (Gembloux)',key:'nis-92142E'},{name:'Bothey (Gembloux)',key:'nis-92142G'},{name:'Mazy (Gembloux)',key:'nis-92142F'},{name:'Corroy-le-Château (Gembloux)',key:'nis-92142H'},{name:'Gesves + deelgemeenten',key:'nis-92054'},{name:'Faulx-les-Tombes (Gesves)',key:'nis-92054B'},{name:'Gesves (Gesves)',key:'nis-92054A'},{name:'Mozet (Gesves)',key:'nis-92054C'},{name:'Sorée (Gesves)',key:'nis-92054E'},{name:'Haltinne (Gesves)',key:'nis-92054D'},{name:'Jemeppe-sur-Sambre + deelgemeenten',key:'nis-92140'},{name:'Jemeppe (Jemeppe-sur-Sambre)',key:'nis-92140A'},{name:'Balâtre (Jemeppe-sur-Sambre)',key:'nis-92140B'},{name:'Saint-Martin (Jemeppe-sur-Sambre)',key:'nis-92140C'},{name:'Onoz (Jemeppe-sur-Sambre)',key:'nis-92140D'},{name:'Moustier (Jemeppe-sur-Sambre)',key:'nis-92140F'},{name:'Mornimont (Jemeppe-sur-Sambre)',key:'nis-92140G'},{name:'Spy (Jemeppe-sur-Sambre)',key:'nis-92140E'},{name:'Ham-sur-Sambre (Jemeppe-sur-Sambre)',key:'nis-92140H'},{name:'La Bruyère + deelgemeenten',key:'nis-92141'},{name:'Émines (La Bruyère)',key:'nis-92141A'},{name:'Bovesse (La Bruyère)',key:'nis-92141C'},{name:'Rhisnes (La Bruyère)',key:'nis-92141B'},{name:'Saint-Denis (La Bruyère)',key:'nis-92141D'},{name:'Meux (La Bruyère)',key:'nis-92141E'},{name:'Villers-lez-Heest (La Bruyère)',key:'nis-92141F'},{name:'Warisoulx (La Bruyère)',key:'nis-92141G'},{name:'Mettet + deelgemeenten',key:'nis-92087'},{name:'Mettet (Mettet)',key:'nis-92087A'},{name:'Saint-Gérard (Mettet)',key:'nis-92087B'},{name:'Furnaux (Mettet)',key:'nis-92087D'},{name:'Graux (Mettet)',key:'nis-92087C'},{name:'Ermeton-sur-Biert (Mettet)',key:'nis-92087E'},{name:'Biesmerée (Mettet)',key:'nis-92087F'},{name:'Oret (Mettet)',key:'nis-92087H'},{name:'Stave (Mettet)',key:'nis-92087G'},{name:'Biesme (Mettet)',key:'nis-92087J'},{name:'Namen + deelgemeenten',key:'nis-92094'},{name:'Jambes (Namen)',key:'nis-92094B'},{name:'Wépion (Namen)',key:'nis-92094C'},{name:'Namur (Namen)',key:'nis-92094A'},{name:'Malonne (Namen)',key:'nis-92094D'},{name:'Flawinne (Namen)',key:'nis-92094E'},{name:'Temploux (Namen)',key:'nis-92094F'},{name:'Suarlée (Namen)',key:'nis-92094G'},{name:'Belgrade (Namen)',key:'nis-92094H'},{name:'Saint-Servais (Namen)',key:'nis-92094J'},{name:'Vedrin (Namen)',key:'nis-92094L-II'},{name:'Bouge (Namen)',key:'nis-92094K'},{name:'Daussoulx (Namen)',key:'nis-92094L-I'},{name:'Saint-Marc (Namen)',key:'nis-92094M'},{name:'Cognelée (Namen)',key:'nis-92094N-II'},{name:'Champion (Namen)',key:'nis-92094N-I'},{name:'Boninne (Namen)',key:'nis-92094P-II'},{name:'Gelbressée (Namen)',key:'nis-92094P-I'},{name:'Beez (Namen)',key:'nis-92094R'},{name:'Lives-sur-Meuse (Namen)',key:'nis-92094T'},{name:'Loyers (Namen)',key:'nis-92094U'},{name:'Marche-les-Dames (Namen)',key:'nis-92094S'},{name:'Wierde (Namen)',key:'nis-92094V'},{name:'Naninne (Namen)',key:'nis-92094W'},{name:'Erpent (Namen)',key:'nis-92094Y'},{name:'Dave (Namen)',key:'nis-92094X'},{name:'Ohey + deelgemeenten',key:'nis-92097'},{name:'Ohey (Ohey)',key:'nis-92097A'},{name:'Perwez (Ohey)',key:'nis-92097C'},{name:'Haillot (Ohey)',key:'nis-92097B'},{name:'Goesnes (Ohey)',key:'nis-92097D'},{name:'Jallet (Ohey)',key:'nis-92097E'},{name:'Évelette (Ohey)',key:'nis-92097F'},{name:'Profondeville + deelgemeenten',key:'nis-92101'},{name:'Profondeville (Profondeville)',key:'nis-92101A'},{name:'Lustin (Profondeville)',key:'nis-92101B'},{name:'Rivière (Profondeville)',key:'nis-92101C'},{name:'Lesve (Profondeville)',key:'nis-92101E'},{name:'Arbre (Profondeville)',key:'nis-92101D'},{name:'Bois-de-Villers (Profondeville)',key:'nis-92101F'},{name:'Sambreville + deelgemeenten',key:'nis-92137'},{name:'Auvelais (Sambreville)',key:'nis-92137A'},{name:'Arsimont (Sambreville)',key:'nis-92137B'},{name:'Tamines (Sambreville)',key:'nis-92137D'},{name:'Velaine (Sambreville)',key:'nis-92137F'},{name:'Falisolle (Sambreville)',key:'nis-92137C'},{name:'Moignelée (Sambreville)',key:'nis-92137E'},{name:'Keumiée (Sambreville)',key:'nis-92137G'},{name:'Sombreffe + deelgemeenten',key:'nis-92114'},{name:'Tongrinne (Sombreffe)',key:'nis-92114B'},{name:'Boignée (Sombreffe)',key:'nis-92114C'},{name:'Sombreffe (Sombreffe)',key:'nis-92114A'},{name:'Ligny (Sombreffe)',key:'nis-92114D'},{name:'Cerfontaine + deelgemeenten',key:'nis-93010'},{name:'Cerfontaine (Cerfontaine)',key:'nis-93010A'},{name:'Soumoy (Cerfontaine)',key:'nis-93010B'},{name:'Silenrieux (Cerfontaine)',key:'nis-93010C'},{name:'Daussois (Cerfontaine)',key:'nis-93010D'},{name:'Villers-Deux-Églises (Cerfontaine)',key:'nis-93010E'},{name:'Senzeille (Cerfontaine)',key:'nis-93010F'},{name:'Couvin + deelgemeenten',key:'nis-93014'},{name:'Couvin (Couvin)',key:'nis-93014A'},{name:'Petigny (Couvin)',key:'nis-93014B'},{name:'Brûly (Couvin)',key:'nis-93014C'},{name:'Petite-Chapelle (Couvin)',key:'nis-93014D'},{name:'Cul-des-Sarts (Couvin)',key:'nis-93014E'},{name:'Brûly-de-Pesche (Couvin)',key:'nis-93014F'},{name:'Presgaux (Couvin)',key:'nis-93014G'},{name:'Pesche (Couvin)',key:'nis-93014J'},{name:'Gonrieux (Couvin)',key:'nis-93014H'},{name:'Aublain (Couvin)',key:'nis-93014L'},{name:'Dailly (Couvin)',key:'nis-93014K'},{name:'Frasnes (Couvin)',key:'nis-93014N'},{name:'Boussu-en-Fagne (Couvin)',key:'nis-93014M'},{name:'Mariembourg (Couvin)',key:'nis-93014P'},{name:'Doische + deelgemeenten',key:'nis-93018'},{name:'Doische (Doische)',key:'nis-93018A'},{name:'Vaucelles (Doische)',key:'nis-93018B'},{name:'Niverlée (Doische)',key:'nis-93018C'},{name:'Matagne-la-Petite (Doische)',key:'nis-93018D'},{name:'Matagne-la-Grande (Doische)',key:'nis-93018E'},{name:'Romerée (Doische)',key:'nis-93018F'},{name:'Gimnée (Doische)',key:'nis-93018G'},{name:'Soulme (Doische)',key:'nis-93018J'},{name:'Gochenée (Doische)',key:'nis-93018K'},{name:'Vodelée (Doische)',key:'nis-93018H'},{name:'Florennes + deelgemeenten',key:'nis-93022'},{name:'Florennes (Florennes)',key:'nis-93022A'},{name:'Corenne (Florennes)',key:'nis-93022B'},{name:'Flavion (Florennes)',key:'nis-93022C'},{name:'Morville (Florennes)',key:'nis-93022D'},{name:'Hemptinne (Florennes)',key:'nis-93022F'},{name:'Rosée (Florennes)',key:'nis-93022E'},{name:'Saint-Aubin (Florennes)',key:'nis-93022G'},{name:'Thy-le-Bauduin (Florennes)',key:'nis-93022J'},{name:'Morialmé (Florennes)',key:'nis-93022H'},{name:'Hanzinelle (Florennes)',key:'nis-93022K'},{name:'Hanzinne (Florennes)',key:'nis-93022L'},{name:'Philippeville + deelgemeenten',key:'nis-93056'},{name:'Philippeville (Philippeville)',key:'nis-93056A'},{name:'Vodecée (Philippeville)',key:'nis-93056B'},{name:'Franchimont (Philippeville)',key:'nis-93056D'},{name:'Villers-le-Gambon (Philippeville)',key:'nis-93056C'},{name:'Omezée (Philippeville)',key:'nis-93056F'},{name:'Merlemont (Philippeville)',key:'nis-93056H'},{name:'Surice (Philippeville)',key:'nis-93056E'},{name:'Romedenne (Philippeville)',key:'nis-93056G'},{name:'Sart-en-Fagne (Philippeville)',key:'nis-93056J'},{name:'Villers-en-Fagne (Philippeville)',key:'nis-93056K'},{name:'Roly (Philippeville)',key:'nis-93056M'},{name:'Samart (Philippeville)',key:'nis-93056P'},{name:'Sautour (Philippeville)',key:'nis-93056N'},{name:'Fagnolle (Philippeville)',key:'nis-93056L'},{name:'Neuville (Philippeville)',key:'nis-93056R'},{name:'Jamagne (Philippeville)',key:'nis-93056T'},{name:'Jamiolle (Philippeville)',key:'nis-93056S'},{name:'Viroinval + deelgemeenten',key:'nis-93090'},{name:'Olloy-sur-Viroin (Viroinval)',key:'nis-93090A'},{name:'Treignes (Viroinval)',key:'nis-93090C'},{name:'Mazée (Viroinval)',key:'nis-93090D'},{name:'Le Mesnil (Viroinval)',key:'nis-93090E'},{name:'Vierves-sur-Viroin (Viroinval)',key:'nis-93090B'},{name:'Oignies-en-Thiérache (Viroinval)',key:'nis-93090F'},{name:'Nismes (Viroinval)',key:'nis-93090G'},{name:'Dourbes (Viroinval)',key:'nis-93090H'},{name:'Walcourt + deelgemeenten',key:'nis-93088'},{name:'Walcourt (Walcourt)',key:'nis-93088A'},{name:'Fontenelle (Walcourt)',key:'nis-93088C'},{name:'Castillon (Walcourt)',key:'nis-93088D'},{name:'Pry (Walcourt)',key:'nis-93088B'},{name:'Clermont (Walcourt)',key:'nis-93088E'},{name:'Rognée (Walcourt)',key:'nis-93088F'},{name:'Berzée (Walcourt)',key:'nis-93088G'},{name:'Gourdinne (Walcourt)',key:'nis-93088J'},{name:'Thy-le-Château (Walcourt)',key:'nis-93088H'},{name:'Somzée (Walcourt)',key:'nis-93088K'},{name:'Tarcienne (Walcourt)',key:'nis-93088L'},{name:'Chastrès (Walcourt)',key:'nis-93088N'},{name:'Laneffe (Walcourt)',key:'nis-93088M'},{name:'Fraire (Walcourt)',key:'nis-93088P'},{name:'Yves-Gomezée (Walcourt)',key:'nis-93088R'},{name:'Vogenée (Walcourt)',key:'nis-93088S'}]) - -.constant('citiesNL', [{label:'Aadorp',name:'Aadorp',zip:''},{label:'Aagtekerke',name:'Aagtekerke',zip:''},{label:'Aalden',name:'Aalden',zip:''},{label:'Aalsmeer',name:'Aalsmeer',zip:''},{label:'Aalsmeerderbrug',name:'Aalsmeerderbrug',zip:''},{label:'Aalst',name:'Aalst',zip:''},{label:'Aalsum',name:'Aalsum',zip:''},{label:'Aalten',name:'Aalten',zip:''},{label:'Ter Aar',name:'Ter Aar',zip:''},{label:'Ter Aard',name:'Ter Aard',zip:''},{label:'Aardenburg',name:'Aardenburg',zip:''},{label:'Aarlanderveen',name:'Aarlanderveen',zip:''},{label:'Aarle-Rixtel',name:'Aarle-Rixtel',zip:''},{label:'Aartswoud',name:'Aartswoud',zip:''},{label:'Abbega',name:'Abbega',zip:''},{label:'Abbekerk',name:'Abbekerk',zip:''},{label:'Abbenbroek',name:'Abbenbroek',zip:''},{label:'Abbenes',name:'Abbenes',zip:''},{label:'Abcoude',name:'Abcoude',zip:''},{label:'Achlum',name:'Achlum',zip:''},{label:'Achterveld (Barneveld)',name:'Achterveld (Barneveld)',zip:''},{label:'Achterveld (Leusden)',name:'Achterveld (Leusden)',zip:''},{label:'Achthuizen',name:'Achthuizen',zip:''},{label:'Achtmaal',name:'Achtmaal',zip:''},{label:'Acquoy',name:'Acquoy',zip:''},{label:'Adorp',name:'Adorp',zip:''},{label:'Aduard',name:'Aduard',zip:''},{label:'Aerdenhout',name:'Aerdenhout',zip:''},{label:'Aerdt',name:'Aerdt',zip:''},{label:'Afferden (Druten)',name:'Afferden (Druten)',zip:''},{label:'Afferden (Bergen - Limburg)',name:'Afferden (Bergen - Limburg)',zip:''},{label:'Agelo',name:'Agelo',zip:''},{label:'Akersloot',name:'Akersloot',zip:''},{label:'Akkrum',name:'Akkrum',zip:''},{label:'Akmarijp',name:'Akmarijp',zip:''},{label:'Albergen',name:'Albergen',zip:''},{label:'Alblasserdam',name:'Alblasserdam',zip:''},{label:'Alde Leie',name:'Alde Leie',zip:''},{label:'Aldeboarn',name:'Aldeboarn',zip:''},{label:'Aldtsjerk',name:'Aldtsjerk',zip:''},{label:'Alem',name:'Alem',zip:''},{label:'Alkmaar',name:'Alkmaar',zip:''},{label:'Allingawier',name:'Allingawier',zip:''},{label:'Almelo',name:'Almelo',zip:''},{label:'Almen',name:'Almen',zip:''},{label:'Almere',name:'Almere',zip:''},{label:'Almkerk',name:'Almkerk',zip:''},{label:'Alphen (West Maas en Waal)',name:'Alphen (West Maas en Waal)',zip:''},{label:'Alphen (Alphen-Chaam)',name:'Alphen (Alphen-Chaam)',zip:''},{label:'Alphen aan den Rijn',name:'Alphen aan den Rijn',zip:''},{label:'Alteveer (Noordenveld)',name:'Alteveer (Noordenveld)',zip:''},{label:'Alteveer (Stadskanaal)',name:'Alteveer (Stadskanaal)',zip:''},{label:'Alteveer (De Wolden)',name:'Alteveer (De Wolden)',zip:''},{label:'Alteveer (Hoogeveen)',name:'Alteveer (Hoogeveen)',zip:''},{label:'Altforst',name:'Altforst',zip:''},{label:'Ambt Delden',name:'Ambt Delden',zip:''},{label:'Ameide',name:'Ameide',zip:''},{label:'Amen',name:'Amen',zip:''},{label:'America',name:'America',zip:''},{label:'Amerongen',name:'Amerongen',zip:''},{label:'Amersfoort',name:'Amersfoort',zip:''},{label:'Ammerstol',name:'Ammerstol',zip:''},{label:'Ammerzoden',name:'Ammerzoden',zip:''},{label:'Amstelhoek',name:'Amstelhoek',zip:''},{label:'Amstelveen',name:'Amstelveen',zip:''},{label:'Amstenrade',name:'Amstenrade',zip:''},{label:'Amsterdam',name:'Amsterdam',zip:''},{label:'Amsterdam-Duivendrecht',name:'Amsterdam-Duivendrecht',zip:''},{label:'Andel',name:'Andel',zip:''},{label:'Den Andel',name:'Den Andel',zip:''},{label:'Andelst',name:'Andelst',zip:''},{label:'Anderen',name:'Anderen',zip:''},{label:'Andijk',name:'Andijk',zip:''},{label:'Ane',name:'Ane',zip:''},{label:'Anerveen',name:'Anerveen',zip:''},{label:'Anevelde',name:'Anevelde',zip:''},{label:'Angeren',name:'Angeren',zip:''},{label:'Angerlo',name:'Angerlo',zip:''},{label:'Anjum',name:'Anjum',zip:''},{label:'Ankeveen',name:'Ankeveen',zip:''},{label:'Anloo',name:'Anloo',zip:''},{label:'Anna Paulowna',name:'Anna Paulowna',zip:''},{label:'Annen',name:'Annen',zip:''},{label:'Annerveenschekanaal',name:'Annerveenschekanaal',zip:''},{label:'Ansen (Westerveld)',name:'Ansen (Westerveld)',zip:''},{label:'Ansen (De Wolden)',name:'Ansen (De Wolden)',zip:''},{label:'Ter Apel',name:'Ter Apel',zip:''},{label:'Apeldoorn',name:'Apeldoorn',zip:''},{label:'Ter Apelkanaal',name:'Ter Apelkanaal',zip:''},{label:'Appelscha',name:'Appelscha',zip:''},{label:'Appeltern',name:'Appeltern',zip:''},{label:'Appingedam',name:'Appingedam',zip:''},{label:'Arcen',name:'Arcen',zip:''},{label:'Arkel',name:'Arkel',zip:''},{label:'Arnemuiden',name:'Arnemuiden',zip:''},{label:'Arnhem',name:'Arnhem',zip:''},{label:'Arriën',name:'Arriën',zip:''},{label:'Arum',name:'Arum',zip:''},{label:'Asch',name:'Asch',zip:''},{label:'Asperen',name:'Asperen',zip:''},{label:'Assen',name:'Assen',zip:''},{label:'Assendelft',name:'Assendelft',zip:''},{label:'Asten',name:'Asten',zip:''},{label:'Augsbuurt',name:'Augsbuurt',zip:''},{label:'Augustinusga',name:'Augustinusga',zip:''},{label:'Austerlitz',name:'Austerlitz',zip:''},{label:'Avenhorn',name:'Avenhorn',zip:''},{label:'Axel',name:'Axel',zip:''},{label:'Azewijn',name:'Azewijn',zip:''},{label:'Baaiduinen',name:'Baaiduinen',zip:''},{label:'Baaium',name:'Baaium',zip:''},{label:'Baak',name:'Baak',zip:''},{label:'Baambrugge',name:'Baambrugge',zip:''},{label:'Baard',name:'Baard',zip:''},{label:'Baarland',name:'Baarland',zip:''},{label:'Baarle-Nassau',name:'Baarle-Nassau',zip:''},{label:'Baarlo (Peel en Maas)',name:'Baarlo (Peel en Maas)',zip:''},{label:'Baarlo (Steenwijkerland)',name:'Baarlo (Steenwijkerland)',zip:''},{label:'Baarn',name:'Baarn',zip:''},{label:'Baars',name:'Baars',zip:''},{label:'Babberich',name:'Babberich',zip:''},{label:'Babyloniënbroek',name:'Babyloniënbroek',zip:''},{label:'Bad Nieuweschans',name:'Bad Nieuweschans',zip:''},{label:'Badhoevedorp',name:'Badhoevedorp',zip:''},{label:'Baexem',name:'Baexem',zip:''},{label:'Baflo',name:'Baflo',zip:''},{label:'Bakel',name:'Bakel',zip:''},{label:'Bakhuizen',name:'Bakhuizen',zip:''},{label:'Bakkeveen',name:'Bakkeveen',zip:''},{label:'Balgoij',name:'Balgoij',zip:''},{label:'Balinge',name:'Balinge',zip:''},{label:'Balk',name:'Balk',zip:''},{label:'Balkbrug',name:'Balkbrug',zip:''},{label:'Balloërveld',name:'Balloërveld',zip:''},{label:'Balloo',name:'Balloo',zip:''},{label:'Ballum',name:'Ballum',zip:''},{label:'Baneheide',name:'Baneheide',zip:''},{label:'Banholt',name:'Banholt',zip:''},{label:'Bant',name:'Bant',zip:''},{label:'Bantega',name:'Bantega',zip:''},{label:'Barchem',name:'Barchem',zip:''},{label:'Barendrecht',name:'Barendrecht',zip:''},{label:'Barger-Compascuum',name:'Barger-Compascuum',zip:''},{label:'Barneveld',name:'Barneveld',zip:''},{label:'Barsingerhorn',name:'Barsingerhorn',zip:''},{label:'Basse',name:'Basse',zip:''},{label:'Batenburg',name:'Batenburg',zip:''},{label:'Bathmen',name:'Bathmen',zip:''},{label:'Bavel (Breda)',name:'Bavel (Breda)',zip:''},{label:'Bavel (Alphen-Chaam)',name:'Bavel (Alphen-Chaam)',zip:''},{label:'Bears',name:'Bears',zip:''},{label:'Bedum',name:'Bedum',zip:''},{label:'Beegden',name:'Beegden',zip:''},{label:'Beek (Beek)',name:'Beek (Beek)',zip:''},{label:'Beek (Montferland)',name:'Beek (Montferland)',zip:''},{label:'Beek (Berg en Dal)',name:'Beek (Berg en Dal)',zip:''},{label:'Beek en Donk',name:'Beek en Donk',zip:''},{label:'Beekbergen',name:'Beekbergen',zip:''},{label:'Beemte Broekland',name:'Beemte Broekland',zip:''},{label:'Beers',name:'Beers',zip:''},{label:'Beerta',name:'Beerta',zip:''},{label:'Beerze',name:'Beerze',zip:''},{label:'Beerzerveld',name:'Beerzerveld',zip:''},{label:'Beesd',name:'Beesd',zip:''},{label:'Beesel',name:'Beesel',zip:''},{label:'Beets',name:'Beets',zip:''},{label:'Beetsterzwaag',name:'Beetsterzwaag',zip:''},{label:'Beilen',name:'Beilen',zip:''},{label:'Beinsdorp',name:'Beinsdorp',zip:''},{label:'Belfeld',name:'Belfeld',zip:''},{label:'Bellingwolde',name:'Bellingwolde',zip:''},{label:'Beltrum',name:'Beltrum',zip:''},{label:'Belt-Schutsloot',name:'Belt-Schutsloot',zip:''},{label:'Bemelen',name:'Bemelen',zip:''},{label:'Bemmel',name:'Bemmel',zip:''},{label:'Beneden-Leeuwen',name:'Beneden-Leeuwen',zip:''},{label:'Bennebroek',name:'Bennebroek',zip:''},{label:'Bennekom',name:'Bennekom',zip:''},{label:'Benneveld',name:'Benneveld',zip:''},{label:'Benningbroek',name:'Benningbroek',zip:''},{label:'Benschop',name:'Benschop',zip:''},{label:'Bentelo',name:'Bentelo',zip:''},{label:'Benthuizen',name:'Benthuizen',zip:''},{label:'Bentveld',name:'Bentveld',zip:''},{label:'Berg en Dal',name:'Berg en Dal',zip:''},{label:'Berg en Terblijt',name:'Berg en Terblijt',zip:''},{label:'Bergambacht',name:'Bergambacht',zip:''},{label:'Bergeijk',name:'Bergeijk',zip:''},{label:'Bergen (Noord-Holland)',name:'Bergen (Noord-Holland)',zip:''},{label:'Bergen aan Zee',name:'Bergen aan Zee',zip:''},{label:'Bergen (Limburg)',name:'Bergen (Limburg)',zip:''},{label:'Bergen op Zoom',name:'Bergen op Zoom',zip:''},{label:'Bergentheim',name:'Bergentheim',zip:''},{label:'Bergharen',name:'Bergharen',zip:''},{label:'Berghem',name:'Berghem',zip:''},{label:'Bergschenhoek',name:'Bergschenhoek',zip:''},{label:'Beringe',name:'Beringe',zip:''},{label:'Berkel en Rodenrijs',name:'Berkel en Rodenrijs',zip:''},{label:'Berkel-Enschot',name:'Berkel-Enschot',zip:''},{label:'Berkenwoude',name:'Berkenwoude',zip:''},{label:'Berkhout',name:'Berkhout',zip:''},{label:'Berlicum',name:'Berlicum',zip:''},{label:'Berltsum',name:'Berltsum',zip:''},{label:'Bern',name:'Bern',zip:''},{label:'Best',name:'Best',zip:''},{label:'Beugen',name:'Beugen',zip:''},{label:'Beuningen (Losser)',name:'Beuningen (Losser)',zip:''},{label:'Beuningen (Beuningen)',name:'Beuningen (Beuningen)',zip:''},{label:'Beusichem',name:'Beusichem',zip:''},{label:'Beutenaken',name:'Beutenaken',zip:''},{label:'Beverwijk',name:'Beverwijk',zip:''},{label:'Biddinghuizen',name:'Biddinghuizen',zip:''},{label:'Bierum',name:'Bierum',zip:''},{label:'Biervliet (Terneuzen)',name:'Biervliet (Terneuzen)',zip:''},{label:'Biervliet (Sluis)',name:'Biervliet (Sluis)',zip:''},{label:'Biest-Houtakker',name:'Biest-Houtakker',zip:''},{label:'Biezenmortel',name:'Biezenmortel',zip:''},{label:'Biggekerke',name:'Biggekerke',zip:''},{label:'De Bilt',name:'De Bilt',zip:''},{label:'Bilthoven',name:'Bilthoven',zip:''},{label:'Bingelrade',name:'Bingelrade',zip:''},{label:'Bitgum',name:'Bitgum',zip:''},{label:'Bitgummole',name:'Bitgummole',zip:''},{label:'Bladel',name:'Bladel',zip:''},{label:'Blankenham',name:'Blankenham',zip:''},{label:'Blaricum',name:'Blaricum',zip:''},{label:'Blauwestad',name:'Blauwestad',zip:''},{label:'Blauwhuis',name:'Blauwhuis',zip:''},{label:'Bleiswijk',name:'Bleiswijk',zip:''},{label:'Blesdijke',name:'Blesdijke',zip:''},{label:'Bleskensgraaf ca',name:'Bleskensgraaf ca',zip:''},{label:'De Blesse',name:'De Blesse',zip:''},{label:'Blessum',name:'Blessum',zip:''},{label:'Blije',name:'Blije',zip:''},{label:'Blijham',name:'Blijham',zip:''},{label:'Blitterswijck',name:'Blitterswijck',zip:''},{label:'Bloemendaal',name:'Bloemendaal',zip:''},{label:'Blokker',name:'Blokker',zip:''},{label:'Blokzijl',name:'Blokzijl',zip:''},{label:'Boazum',name:'Boazum',zip:''},{label:'Bocholtz',name:'Bocholtz',zip:''},{label:'Bodegraven',name:'Bodegraven',zip:''},{label:'Boekel',name:'Boekel',zip:''},{label:'Boelenslaan',name:'Boelenslaan',zip:''},{label:'Boer',name:'Boer',zip:''},{label:'Ten Boer',name:'Ten Boer',zip:''},{label:'Boerakker (Marum)',name:'Boerakker (Marum)',zip:''},{label:'Boerakker (Leek)',name:'Boerakker (Leek)',zip:''},{label:'Boesingheliede',name:'Boesingheliede',zip:''},{label:'Boijl',name:'Boijl',zip:''},{label:'Boksum',name:'Boksum',zip:''},{label:'Bolsward',name:'Bolsward',zip:''},{label:'Den Bommel',name:'Den Bommel',zip:''},{label:'Bontebok',name:'Bontebok',zip:''},{label:'Boornbergum',name:'Boornbergum',zip:''},{label:'Boornzwaag',name:'Boornzwaag',zip:''},{label:'Borculo',name:'Borculo',zip:''},{label:'Borger',name:'Borger',zip:''},{label:'Borgercompagnie (Midden-Groningen)',name:'Borgercompagnie (Midden-Groningen)',zip:''},{label:'Borgercompagnie (Veendam)',name:'Borgercompagnie (Veendam)',zip:''},{label:'Borgsweer',name:'Borgsweer',zip:''},{label:'Born',name:'Born',zip:''},{label:'Borne',name:'Borne',zip:''},{label:'Bornerbroek',name:'Bornerbroek',zip:''},{label:'Bornwird',name:'Bornwird',zip:''},{label:'Borssele',name:'Borssele',zip:''},{label:'Bosch en Duin',name:'Bosch en Duin',zip:''},{label:'Boschoord',name:'Boschoord',zip:''},{label:'Boskoop',name:'Boskoop',zip:''},{label:'Bosschenhoofd',name:'Bosschenhoofd',zip:''},{label:'Botlek Rotterdam',name:'Botlek Rotterdam',zip:''},{label:'Bourtange',name:'Bourtange',zip:''},{label:'Bovenkarspel',name:'Bovenkarspel',zip:''},{label:'Boven-Leeuwen',name:'Boven-Leeuwen',zip:''},{label:'Bovensmilde',name:'Bovensmilde',zip:''},{label:'Boxmeer',name:'Boxmeer',zip:''},{label:'Boxtel',name:'Boxtel',zip:''},{label:'Braamt',name:'Braamt',zip:''},{label:'Brakel',name:'Brakel',zip:''},{label:'Brandwijk',name:'Brandwijk',zip:''},{label:'Brantgum',name:'Brantgum',zip:''},{label:'Breda',name:'Breda',zip:''},{label:'Bredevoort',name:'Bredevoort',zip:''},{label:'Breedenbroek',name:'Breedenbroek',zip:''},{label:'Breezand',name:'Breezand',zip:''},{label:'Breezanddijk',name:'Breezanddijk',zip:''},{label:'Breskens',name:'Breskens',zip:''},{label:'Breukelen',name:'Breukelen',zip:''},{label:'Breukeleveen',name:'Breukeleveen',zip:''},{label:'Brielle',name:'Brielle',zip:''},{label:'Briltil',name:'Briltil',zip:''},{label:'Britsum',name:'Britsum',zip:''},{label:'Britswert',name:'Britswert',zip:''},{label:'Broek',name:'Broek',zip:''},{label:'Broek in Waterland',name:'Broek in Waterland',zip:''},{label:'Broek op Langedijk',name:'Broek op Langedijk',zip:''},{label:'Broekhuizen (Horst aan de Maas)',name:'Broekhuizen (Horst aan de Maas)',zip:''},{label:'Broekhuizen (Meppel)',name:'Broekhuizen (Meppel)',zip:''},{label:'Broekhuizenvorst',name:'Broekhuizenvorst',zip:''},{label:'Broekland',name:'Broekland',zip:''},{label:'Broeksterwâld',name:'Broeksterwâld',zip:''},{label:'Bronkhorst',name:'Bronkhorst',zip:''},{label:'Bronneger',name:'Bronneger',zip:''},{label:'Bronnegerveen',name:'Bronnegerveen',zip:''},{label:'Brouwershaven',name:'Brouwershaven',zip:''},{label:'Bruchem',name:'Bruchem',zip:''},{label:'Brucht',name:'Brucht',zip:''},{label:'Bruchterveld',name:'Bruchterveld',zip:''},{label:'Bruinehaar',name:'Bruinehaar',zip:''},{label:'Bruinisse',name:'Bruinisse',zip:''},{label:'Brummen',name:'Brummen',zip:''},{label:'Brunssum',name:'Brunssum',zip:''},{label:'Bruntinge',name:'Bruntinge',zip:''},{label:'Buchten',name:'Buchten',zip:''},{label:'Budel',name:'Budel',zip:''},{label:'Budel-Dorplein',name:'Budel-Dorplein',zip:''},{label:'Budel-Schoot',name:'Budel-Schoot',zip:''},{label:'Buggenum',name:'Buggenum',zip:''},{label:'Buinen',name:'Buinen',zip:''},{label:'Buinerveen',name:'Buinerveen',zip:''},{label:'Buitenkaag',name:'Buitenkaag',zip:''},{label:'Buitenpost',name:'Buitenpost',zip:''},{label:'De Bult',name:'De Bult',zip:''},{label:'Bunde',name:'Bunde',zip:''},{label:'Bunne',name:'Bunne',zip:''},{label:'Bunnik',name:'Bunnik',zip:''},{label:'Bunschoten-Spakenburg',name:'Bunschoten-Spakenburg',zip:''},{label:'Burdaard',name:'Burdaard',zip:''},{label:'Buren (Ameland)',name:'Buren (Ameland)',zip:''},{label:'Buren (Buren)',name:'Buren (Buren)',zip:''},{label:'Den Burg',name:'Den Burg',zip:''},{label:'Burgerbrug',name:'Burgerbrug',zip:''},{label:'Burgerveen',name:'Burgerveen',zip:''},{label:'Burgh-Haamstede',name:'Burgh-Haamstede',zip:''},{label:'Burgum',name:'Burgum',zip:''},{label:'Burgwerd',name:'Burgwerd',zip:''},{label:'Burum',name:'Burum',zip:''},{label:'Bussum',name:'Bussum',zip:''},{label:'Buurmalsen (Buren)',name:'Buurmalsen (Buren)',zip:''},{label:'Buurmalsen (Geldermalsen)',name:'Buurmalsen (Geldermalsen)',zip:''},{label:'Cadier en Keer',name:'Cadier en Keer',zip:''},{label:'Cadzand',name:'Cadzand',zip:''},{label:'Callantsoog',name:'Callantsoog',zip:''},{label:'Capelle aan den IJssel',name:'Capelle aan den IJssel',zip:''},{label:'Castelre',name:'Castelre',zip:''},{label:'Castenray',name:'Castenray',zip:''},{label:'Casteren',name:'Casteren',zip:''},{label:'Castricum',name:'Castricum',zip:''},{label:'Chaam',name:'Chaam',zip:''},{label:'Clinge',name:'Clinge',zip:''},{label:'De Cocksdorp',name:'De Cocksdorp',zip:''},{label:'Coevorden',name:'Coevorden',zip:''},{label:'Colijnsplaat',name:'Colijnsplaat',zip:''},{label:'Collendoorn',name:'Collendoorn',zip:''},{label:'Colmschate',name:'Colmschate',zip:''},{label:'Cornwerd',name:'Cornwerd',zip:''},{label:'Cothen',name:'Cothen',zip:''},{label:'Creil',name:'Creil',zip:''},{label:'Cromvoirt',name:'Cromvoirt',zip:''},{label:'Cruquius',name:'Cruquius',zip:''},{label:'Cuijk',name:'Cuijk',zip:''},{label:'Culemborg',name:'Culemborg',zip:''},{label:'Daarle',name:'Daarle',zip:''},{label:'Daarlerveen',name:'Daarlerveen',zip:''},{label:'Dalem',name:'Dalem',zip:''},{label:'Dalen',name:'Dalen',zip:''},{label:'Dalerpeel',name:'Dalerpeel',zip:''},{label:'Dalerveen',name:'Dalerveen',zip:''},{label:'Dalfsen',name:'Dalfsen',zip:''},{label:'Dalmsholte',name:'Dalmsholte',zip:''},{label:'Damwâld',name:'Damwâld',zip:''},{label:'Darp',name:'Darp',zip:''},{label:'Dearsum',name:'Dearsum',zip:''},{label:'Dedemsvaart',name:'Dedemsvaart',zip:''},{label:'Dedgum',name:'Dedgum',zip:''},{label:'Deelen',name:'Deelen',zip:''},{label:'Deest',name:'Deest',zip:''},{label:'Deil',name:'Deil',zip:''},{label:'Deinum',name:'Deinum',zip:''},{label:'Delden',name:'Delden',zip:''},{label:'Delfgauw',name:'Delfgauw',zip:''},{label:'Delfstrahuizen',name:'Delfstrahuizen',zip:''},{label:'Delft',name:'Delft',zip:''},{label:'Delfzijl',name:'Delfzijl',zip:''},{label:'Delwijnen',name:'Delwijnen',zip:''},{label:'Demen',name:'Demen',zip:''},{label:'Denekamp',name:'Denekamp',zip:''},{label:'Deurne',name:'Deurne',zip:''},{label:'Deurningen (Oldenzaal)',name:'Deurningen (Oldenzaal)',zip:''},{label:'Deurningen (Dinkelland)',name:'Deurningen (Dinkelland)',zip:''},{label:'Deursen-Dennenburg',name:'Deursen-Dennenburg',zip:''},{label:'Deurze',name:'Deurze',zip:''},{label:'Deventer',name:'Deventer',zip:''},{label:'Didam',name:'Didam',zip:''},{label:'Dieden',name:'Dieden',zip:''},{label:'Diemen',name:'Diemen',zip:''},{label:'Diepenheim',name:'Diepenheim',zip:''},{label:'Diepenveen',name:'Diepenveen',zip:''},{label:'Dieren',name:'Dieren',zip:''},{label:'Diessen',name:'Diessen',zip:''},{label:'Diever',name:'Diever',zip:''},{label:'Dieverbrug',name:'Dieverbrug',zip:''},{label:'Diffelen',name:'Diffelen',zip:''},{label:'Dijken',name:'Dijken',zip:''},{label:'Dinteloord',name:'Dinteloord',zip:''},{label:'Dinxperlo',name:'Dinxperlo',zip:''},{label:'Diphoorn',name:'Diphoorn',zip:''},{label:'Dirkshorn',name:'Dirkshorn',zip:''},{label:'Dirksland',name:'Dirksland',zip:''},{label:'Dodewaard',name:'Dodewaard',zip:''},{label:'Doenrade',name:'Doenrade',zip:''},{label:'Doesburg',name:'Doesburg',zip:''},{label:'Doetinchem',name:'Doetinchem',zip:''},{label:'Doeveren',name:'Doeveren',zip:''},{label:'Doezum',name:'Doezum',zip:''},{label:'Dokkum',name:'Dokkum',zip:''},{label:'Den Dolder',name:'Den Dolder',zip:''},{label:'Doldersum',name:'Doldersum',zip:''},{label:'Domburg',name:'Domburg',zip:''},{label:'Donderen',name:'Donderen',zip:''},{label:'Dongen',name:'Dongen',zip:''},{label:'Dongjum',name:'Dongjum',zip:''},{label:'Doniaga',name:'Doniaga',zip:''},{label:'Donkerbroek',name:'Donkerbroek',zip:''},{label:'Doorn',name:'Doorn',zip:''},{label:'Doornenburg',name:'Doornenburg',zip:''},{label:'Doornspijk',name:'Doornspijk',zip:''},{label:'Doorwerth',name:'Doorwerth',zip:''},{label:'Dordrecht',name:'Dordrecht',zip:''},{label:'Dorst',name:'Dorst',zip:''},{label:'Drachten',name:'Drachten',zip:''},{label:'Drachten-Azeven',name:'Drachten-Azeven',zip:''},{label:'Drachtstercompagnie',name:'Drachtstercompagnie',zip:''},{label:'Dreischor',name:'Dreischor',zip:''},{label:'Drempt',name:'Drempt',zip:''},{label:'Dreumel',name:'Dreumel',zip:''},{label:'Driebergen-Rijsenburg',name:'Driebergen-Rijsenburg',zip:''},{label:'Drieborg',name:'Drieborg',zip:''},{label:'Driebruggen',name:'Driebruggen',zip:''},{label:'Driehuis',name:'Driehuis',zip:''},{label:'Driehuizen',name:'Driehuizen',zip:''},{label:'Driel',name:'Driel',zip:''},{label:'Driewegen',name:'Driewegen',zip:''},{label:'Driezum',name:'Driezum',zip:''},{label:'Drijber',name:'Drijber',zip:''},{label:'Drimmelen',name:'Drimmelen',zip:''},{label:'Drogeham',name:'Drogeham',zip:''},{label:'Drogteropslagen',name:'Drogteropslagen',zip:''},{label:'Drongelen',name:'Drongelen',zip:''},{label:'Dronryp',name:'Dronryp',zip:''},{label:'Dronten',name:'Dronten',zip:''},{label:'Drouwen',name:'Drouwen',zip:''},{label:'Drouwenermond',name:'Drouwenermond',zip:''},{label:'Drouwenerveen',name:'Drouwenerveen',zip:''},{label:'Drunen',name:'Drunen',zip:''},{label:'Druten',name:'Druten',zip:''},{label:'Duiven',name:'Duiven',zip:''},{label:'Duivendrecht',name:'Duivendrecht',zip:''},{label:'Duizel',name:'Duizel',zip:''},{label:'Den Dungen',name:'Den Dungen',zip:''},{label:'Dussen',name:'Dussen',zip:''},{label:'Dwingeloo',name:'Dwingeloo',zip:''},{label:'Eagum',name:'Eagum',zip:''},{label:'Earnewâld',name:'Earnewâld',zip:''},{label:'Easterein',name:'Easterein',zip:''},{label:'Easterlittens',name:'Easterlittens',zip:''},{label:'Eastermar',name:'Eastermar',zip:''},{label:'Easterwierrum',name:'Easterwierrum',zip:''},{label:'Echt',name:'Echt',zip:''},{label:'Echteld',name:'Echteld',zip:''},{label:'Echten (De Wolden)',name:'Echten (De Wolden)',zip:''},{label:'Echten (De Fryske Marren)',name:'Echten (De Fryske Marren)',zip:''},{label:'Echtenerbrug',name:'Echtenerbrug',zip:''},{label:'Eck en Wiel',name:'Eck en Wiel',zip:''},{label:'Eckelrade',name:'Eckelrade',zip:''},{label:'Edam',name:'Edam',zip:''},{label:'Ede',name:'Ede',zip:''},{label:'Ederveen',name:'Ederveen',zip:''},{label:'Ee',name:'Ee',zip:''},{label:'Eede',name:'Eede',zip:''},{label:'Eefde',name:'Eefde',zip:''},{label:'Eelde',name:'Eelde',zip:''},{label:'Eelderwolde',name:'Eelderwolde',zip:''},{label:'Eemdijk',name:'Eemdijk',zip:''},{label:'Eemnes',name:'Eemnes',zip:''},{label:'Eemshaven',name:'Eemshaven',zip:''},{label:'Een',name:'Een',zip:''},{label:'Eenrum',name:'Eenrum',zip:''},{label:'Eenum',name:'Eenum',zip:''},{label:'Een-West',name:'Een-West',zip:''},{label:'Eerbeek',name:'Eerbeek',zip:''},{label:'Eersel',name:'Eersel',zip:''},{label:'Ees',name:'Ees',zip:''},{label:'Eesergroen',name:'Eesergroen',zip:''},{label:'Eeserveen',name:'Eeserveen',zip:''},{label:'Eesterga',name:'Eesterga',zip:''},{label:'Eesveen',name:'Eesveen',zip:''},{label:'Eethen',name:'Eethen',zip:''},{label:'Eext',name:'Eext',zip:''},{label:'Eexterveen',name:'Eexterveen',zip:''},{label:'Eexterveenschekanaal',name:'Eexterveenschekanaal',zip:''},{label:'Eexterzandvoort',name:'Eexterzandvoort',zip:''},{label:'Egchel',name:'Egchel',zip:''},{label:'Egmond aan den Hoef',name:'Egmond aan den Hoef',zip:''},{label:'Egmond aan Zee',name:'Egmond aan Zee',zip:''},{label:'Egmond-Binnen',name:'Egmond-Binnen',zip:''},{label:'Eibergen',name:'Eibergen',zip:''},{label:'Eijsden',name:'Eijsden',zip:''},{label:'Eindhoven',name:'Eindhoven',zip:''},{label:'Einighausen',name:'Einighausen',zip:''},{label:'Ekehaar',name:'Ekehaar',zip:''},{label:'Elahuizen',name:'Elahuizen',zip:''},{label:'Elburg',name:'Elburg',zip:''},{label:'Eldersloo',name:'Eldersloo',zip:''},{label:'Eleveld',name:'Eleveld',zip:''},{label:'Elim',name:'Elim',zip:''},{label:'Elkenrade',name:'Elkenrade',zip:''},{label:'Ell',name:'Ell',zip:''},{label:'Ellecom',name:'Ellecom',zip:''},{label:'Ellemeet',name:'Ellemeet',zip:''},{label:'Ellertshaar',name:'Ellertshaar',zip:''},{label:'Ellewoutsdijk',name:'Ellewoutsdijk',zip:''},{label:'Elp',name:'Elp',zip:''},{label:'Elsendorp',name:'Elsendorp',zip:''},{label:'Elshout',name:'Elshout',zip:''},{label:'Elsloo (Stein)',name:'Elsloo (Stein)',zip:''},{label:'Elsloo (Ooststellingwerf)',name:'Elsloo (Ooststellingwerf)',zip:''},{label:'Elspeet',name:'Elspeet',zip:''},{label:'Elst',name:'Elst',zip:''},{label:'Elst Ut',name:'Elst Ut',zip:''},{label:'Emmeloord',name:'Emmeloord',zip:''},{label:'Emmen',name:'Emmen',zip:''},{label:'Emmer-Compascuum',name:'Emmer-Compascuum',zip:''},{label:'Empe',name:'Empe',zip:''},{label:'Emst',name:'Emst',zip:''},{label:'Engwierum',name:'Engwierum',zip:''},{label:'Enkhuizen',name:'Enkhuizen',zip:''},{label:'Ens',name:'Ens',zip:''},{label:'Enschede',name:'Enschede',zip:''},{label:'Enspijk',name:'Enspijk',zip:''},{label:'Enter',name:'Enter',zip:''},{label:'Enumatil',name:'Enumatil',zip:''},{label:'Epe',name:'Epe',zip:''},{label:'Epen',name:'Epen',zip:''},{label:'Eppenhuizen',name:'Eppenhuizen',zip:''},{label:'Epse',name:'Epse',zip:''},{label:'Erica',name:'Erica',zip:''},{label:'Erichem',name:'Erichem',zip:''},{label:'Erlecom',name:'Erlecom',zip:''},{label:'Erm',name:'Erm',zip:''},{label:'Ermelo',name:'Ermelo',zip:''},{label:'Erp',name:'Erp',zip:''},{label:'Esbeek',name:'Esbeek',zip:''},{label:'Esch',name:'Esch',zip:''},{label:'Escharen',name:'Escharen',zip:''},{label:'Espel',name:'Espel',zip:''},{label:'Est',name:'Est',zip:''},{label:'Etten',name:'Etten',zip:''},{label:'Etten-Leur',name:'Etten-Leur',zip:''},{label:'Europoort Rotterdam',name:'Europoort Rotterdam',zip:''},{label:'Eursinge (Midden-Drenthe)',name:'Eursinge (Midden-Drenthe)',zip:''},{label:'Eursinge (De Wolden)',name:'Eursinge (De Wolden)',zip:''},{label:'Everdingen',name:'Everdingen',zip:''},{label:'Evertsoord',name:'Evertsoord',zip:''},{label:'Ewijk',name:'Ewijk',zip:''},{label:'1e Exloërmond',name:'1e Exloërmond',zip:''},{label:'2e Exloërmond',name:'2e Exloërmond',zip:''},{label:'Exloërveen',name:'Exloërveen',zip:''},{label:'Exloo',name:'Exloo',zip:''},{label:'Exmorra',name:'Exmorra',zip:''},{label:'Eygelshoven',name:'Eygelshoven',zip:''},{label:'Eys',name:'Eys',zip:''},{label:'Ezinge',name:'Ezinge',zip:''},{label:'De Falom',name:'De Falom',zip:''},{label:'Farmsum',name:'Farmsum',zip:''},{label:'Feanwâlden',name:'Feanwâlden',zip:''},{label:'Feerwerd',name:'Feerwerd',zip:''},{label:'Feinsum',name:'Feinsum',zip:''},{label:'Ferwert',name:'Ferwert',zip:''},{label:'Ferwoude',name:'Ferwoude',zip:''},{label:'Fijnaart',name:'Fijnaart',zip:''},{label:'Finsterwolde',name:'Finsterwolde',zip:''},{label:'Firdgum',name:'Firdgum',zip:''},{label:'Fleringen',name:'Fleringen',zip:''},{label:'Fluitenberg',name:'Fluitenberg',zip:''},{label:'Fochteloo',name:'Fochteloo',zip:''},{label:'Follega',name:'Follega',zip:''},{label:'Folsgare',name:'Folsgare',zip:''},{label:'Formerum',name:'Formerum',zip:''},{label:'Foudgum',name:'Foudgum',zip:''},{label:'Foxhol',name:'Foxhol',zip:''},{label:'Foxwolde',name:'Foxwolde',zip:''},{label:'Franeker',name:'Franeker',zip:''},{label:'Frederiksoord',name:'Frederiksoord',zip:''},{label:'Friens',name:'Friens',zip:''},{label:'Frieschepalen',name:'Frieschepalen',zip:''},{label:'Froombosch',name:'Froombosch',zip:''},{label:'Gaanderen',name:'Gaanderen',zip:''},{label:'Gaast',name:'Gaast',zip:''},{label:'Gaastmeer',name:'Gaastmeer',zip:''},{label:'Galder',name:'Galder',zip:''},{label:'Gameren',name:'Gameren',zip:''},{label:'Gapinge',name:'Gapinge',zip:''},{label:'Garderen',name:'Garderen',zip:''},{label:'Garmerwolde',name:'Garmerwolde',zip:''},{label:'Garminge',name:'Garminge',zip:''},{label:'Garnwerd',name:'Garnwerd',zip:''},{label:'Garrelsweer',name:'Garrelsweer',zip:''},{label:'Garsthuizen',name:'Garsthuizen',zip:''},{label:'Garyp',name:'Garyp',zip:''},{label:'Gassel',name:'Gassel',zip:''},{label:'Gasselte',name:'Gasselte',zip:''},{label:'Gasselternijveen',name:'Gasselternijveen',zip:''},{label:'Gasselternijveenschemond',name:'Gasselternijveenschemond',zip:''},{label:'Gastel',name:'Gastel',zip:''},{label:'Gasteren',name:'Gasteren',zip:''},{label:'Gauw',name:'Gauw',zip:''},{label:'Geelbroek',name:'Geelbroek',zip:''},{label:'Geerdijk',name:'Geerdijk',zip:''},{label:'Geersdijk',name:'Geersdijk',zip:''},{label:'Geertruidenberg',name:'Geertruidenberg',zip:''},{label:'Geervliet',name:'Geervliet',zip:''},{label:'Gees',name:'Gees',zip:''},{label:'Geesbrug',name:'Geesbrug',zip:''},{label:'Geesteren (Tubbergen)',name:'Geesteren (Tubbergen)',zip:''},{label:'Geesteren (Berkelland)',name:'Geesteren (Berkelland)',zip:''},{label:'Geeuwenbrug',name:'Geeuwenbrug',zip:''},{label:'Geffen',name:'Geffen',zip:''},{label:'Geijsteren',name:'Geijsteren',zip:''},{label:'Geldermalsen',name:'Geldermalsen',zip:''},{label:'Gelderswoude',name:'Gelderswoude',zip:''},{label:'Geldrop',name:'Geldrop',zip:''},{label:'Geleen',name:'Geleen',zip:''},{label:'Gellicum',name:'Gellicum',zip:''},{label:'Gelselaar',name:'Gelselaar',zip:''},{label:'Gemert',name:'Gemert',zip:''},{label:'Gemonde',name:'Gemonde',zip:''},{label:'Genderen',name:'Genderen',zip:''},{label:'Gendringen',name:'Gendringen',zip:''},{label:'Gendt',name:'Gendt',zip:''},{label:'Genemuiden',name:'Genemuiden',zip:''},{label:'Gennep',name:'Gennep',zip:''},{label:'Gerkesklooster',name:'Gerkesklooster',zip:''},{label:'Gersloot',name:'Gersloot',zip:''},{label:'Geulle',name:'Geulle',zip:''},{label:'Giesbeek',name:'Giesbeek',zip:''},{label:'Giessen',name:'Giessen',zip:''},{label:'Giessenburg',name:'Giessenburg',zip:''},{label:'Gieten',name:'Gieten',zip:''},{label:'Gieterveen',name:'Gieterveen',zip:''},{label:'Giethmen',name:'Giethmen',zip:''},{label:'Giethoorn',name:'Giethoorn',zip:''},{label:'Gilze',name:'Gilze',zip:''},{label:'Ginnum',name:'Ginnum',zip:''},{label:'Glane',name:'Glane',zip:''},{label:'Glimmen',name:'Glimmen',zip:''},{label:'De Glind',name:'De Glind',zip:''},{label:'Godlinze',name:'Godlinze',zip:''},{label:'Goedereede',name:'Goedereede',zip:''},{label:'Goënga',name:'Goënga',zip:''},{label:'Goëngahuizen',name:'Goëngahuizen',zip:''},{label:'Goes',name:'Goes',zip:''},{label:'Goingarijp',name:'Goingarijp',zip:''},{label:'Goirle',name:'Goirle',zip:''},{label:'Goor',name:'Goor',zip:''},{label:'De Goorn',name:'De Goorn',zip:''},{label:'Gorinchem',name:'Gorinchem',zip:''},{label:'Gorredijk',name:'Gorredijk',zip:''},{label:'Gorssel',name:'Gorssel',zip:''},{label:'Gouda',name:'Gouda',zip:''},{label:'Gouderak',name:'Gouderak',zip:''},{label:'Goudriaan',name:'Goudriaan',zip:''},{label:'Goudswaard',name:'Goudswaard',zip:''},{label:'Goutum',name:'Goutum',zip:''},{label:'\'t Goy',name:'\'t Goy',zip:''},{label:'Graauw',name:'Graauw',zip:''},{label:'Grafhorst',name:'Grafhorst',zip:''},{label:'Graft',name:'Graft',zip:''},{label:'Gramsbergen',name:'Gramsbergen',zip:''},{label:'Grashoek',name:'Grashoek',zip:''},{label:'Grathem',name:'Grathem',zip:''},{label:'Grave',name:'Grave',zip:''},{label:'\'s-Graveland',name:'\'s-Graveland',zip:''},{label:'\'s-Gravendeel',name:'\'s-Gravendeel',zip:''},{label:'Den Haag',name:'Den Haag',zip:''},{label:'\'s Gravenmoer',name:'\'s Gravenmoer',zip:''},{label:'\'s-Gravenpolder',name:'\'s-Gravenpolder',zip:''},{label:'\'s-Gravenzande',name:'\'s-Gravenzande',zip:''},{label:'Greonterp',name:'Greonterp',zip:''},{label:'Grevenbicht',name:'Grevenbicht',zip:''},{label:'Griendtsveen',name:'Griendtsveen',zip:''},{label:'Grijpskerk',name:'Grijpskerk',zip:''},{label:'Grijpskerke',name:'Grijpskerke',zip:''},{label:'Groede',name:'Groede',zip:''},{label:'Groenekan',name:'Groenekan',zip:''},{label:'Groeningen',name:'Groeningen',zip:''},{label:'Groenlo',name:'Groenlo',zip:''},{label:'Groesbeek',name:'Groesbeek',zip:''},{label:'Groessen',name:'Groessen',zip:''},{label:'Groet',name:'Groet',zip:''},{label:'De Groeve',name:'De Groeve',zip:''},{label:'Grolloo',name:'Grolloo',zip:''},{label:'Groningen',name:'Groningen',zip:''},{label:'Gronsveld',name:'Gronsveld',zip:''},{label:'Groot-Ammers',name:'Groot-Ammers',zip:''},{label:'Grootebroek',name:'Grootebroek',zip:''},{label:'Grootegast',name:'Grootegast',zip:''},{label:'Grootschermer',name:'Grootschermer',zip:''},{label:'Grou',name:'Grou',zip:''},{label:'Grubbenvorst',name:'Grubbenvorst',zip:''},{label:'Gulpen',name:'Gulpen',zip:''},{label:'Guttecoven',name:'Guttecoven',zip:''},{label:'Gytsjerk',name:'Gytsjerk',zip:''},{label:'Haaften',name:'Haaften',zip:''},{label:'Haaksbergen',name:'Haaksbergen',zip:''},{label:'Haalderen',name:'Haalderen',zip:''},{label:'\'t Haantje',name:'\'t Haantje',zip:''},{label:'Haaren',name:'Haaren',zip:''},{label:'Haarle (Tubbergen)',name:'Haarle (Tubbergen)',zip:''},{label:'Haarle (Hellendoorn)',name:'Haarle (Hellendoorn)',zip:''},{label:'Haarlem',name:'Haarlem',zip:''},{label:'Haarlemmerliede',name:'Haarlemmerliede',zip:''},{label:'Haarlo',name:'Haarlo',zip:''},{label:'Haarsteeg',name:'Haarsteeg',zip:''},{label:'Haarzuilens',name:'Haarzuilens',zip:''},{label:'Haastrecht',name:'Haastrecht',zip:''},{label:'Haelen',name:'Haelen',zip:''},{label:'Hagestein',name:'Hagestein',zip:''},{label:'Haghorst',name:'Haghorst',zip:''},{label:'Haler',name:'Haler',zip:''},{label:'Halfweg',name:'Halfweg',zip:''},{label:'Hall',name:'Hall',zip:''},{label:'Halle',name:'Halle',zip:''},{label:'Hallum',name:'Hallum',zip:''},{label:'Halsteren',name:'Halsteren',zip:''},{label:'Den Ham (Zuidhorn)',name:'Den Ham (Zuidhorn)',zip:''},{label:'Den Ham (Twenterand)',name:'Den Ham (Twenterand)',zip:''},{label:'Handel',name:'Handel',zip:''},{label:'Hank',name:'Hank',zip:''},{label:'Hansweert',name:'Hansweert',zip:''},{label:'Hantum',name:'Hantum',zip:''},{label:'Hantumeruitburen',name:'Hantumeruitburen',zip:''},{label:'Hantumhuizen',name:'Hantumhuizen',zip:''},{label:'Hapert',name:'Hapert',zip:''},{label:'Haps',name:'Haps',zip:''},{label:'Harbrinkhoek',name:'Harbrinkhoek',zip:''},{label:'\'t Harde',name:'\'t Harde',zip:''},{label:'Hardenberg',name:'Hardenberg',zip:''},{label:'Harderwijk',name:'Harderwijk',zip:''},{label:'Hardinxveld-Giessendam',name:'Hardinxveld-Giessendam',zip:''},{label:'Haren (Oss)',name:'Haren (Oss)',zip:''},{label:'Haren (Haren)',name:'Haren (Haren)',zip:''},{label:'Harfsen',name:'Harfsen',zip:''},{label:'Harich',name:'Harich',zip:''},{label:'Haringhuizen',name:'Haringhuizen',zip:''},{label:'Harkema',name:'Harkema',zip:''},{label:'Harkstede (Midden-Groningen)',name:'Harkstede (Midden-Groningen)',zip:''},{label:'Harkstede (Groningen)',name:'Harkstede (Groningen)',zip:''},{label:'Harlingen',name:'Harlingen',zip:''},{label:'Harmelen',name:'Harmelen',zip:''},{label:'Harreveld',name:'Harreveld',zip:''},{label:'Harskamp',name:'Harskamp',zip:''},{label:'Hartwerd',name:'Hartwerd',zip:''},{label:'Haskerdijken',name:'Haskerdijken',zip:''},{label:'Haskerhorne',name:'Haskerhorne',zip:''},{label:'Hasselt',name:'Hasselt',zip:''},{label:'Hattem',name:'Hattem',zip:''},{label:'Hattemerbroek',name:'Hattemerbroek',zip:''},{label:'Haule',name:'Haule',zip:''},{label:'Haulerwijk',name:'Haulerwijk',zip:''},{label:'Hauwert',name:'Hauwert',zip:''},{label:'Havelte',name:'Havelte',zip:''},{label:'Havelterberg',name:'Havelterberg',zip:''},{label:'Hazerswoude-Dorp',name:'Hazerswoude-Dorp',zip:''},{label:'Hazerswoude-Rijndijk',name:'Hazerswoude-Rijndijk',zip:''},{label:'Hedel',name:'Hedel',zip:''},{label:'Hedikhuizen',name:'Hedikhuizen',zip:''},{label:'Hee',name:'Hee',zip:''},{label:'Heeg',name:'Heeg',zip:''},{label:'Heel',name:'Heel',zip:''},{label:'Heelsum',name:'Heelsum',zip:''},{label:'Heelweg',name:'Heelweg',zip:''},{label:'Heemserveen',name:'Heemserveen',zip:''},{label:'Heemskerk',name:'Heemskerk',zip:''},{label:'Heemstede',name:'Heemstede',zip:''},{label:'De Heen',name:'De Heen',zip:''},{label:'Heenvliet',name:'Heenvliet',zip:''},{label:'\'s-Heer Abtskerke',name:'\'s-Heer Abtskerke',zip:''},{label:'\'s-Heer Arendskerke',name:'\'s-Heer Arendskerke',zip:''},{label:'\'s-Heer Hendrikskinderen',name:'\'s-Heer Hendrikskinderen',zip:''},{label:'Heerde',name:'Heerde',zip:''},{label:'\'s-Heerenberg',name:'\'s-Heerenberg',zip:''},{label:'\'s-Heerenbroek',name:'\'s-Heerenbroek',zip:''},{label:'\'s-Heerenhoek',name:'\'s-Heerenhoek',zip:''},{label:'Heerenveen',name:'Heerenveen',zip:''},{label:'Heerewaarden',name:'Heerewaarden',zip:''},{label:'Heerhugowaard',name:'Heerhugowaard',zip:''},{label:'Heerjansdam',name:'Heerjansdam',zip:''},{label:'Heerle',name:'Heerle',zip:''},{label:'Heerlen',name:'Heerlen',zip:''},{label:'Heesbeen',name:'Heesbeen',zip:''},{label:'Heesch',name:'Heesch',zip:''},{label:'Heesselt',name:'Heesselt',zip:''},{label:'Heeswijk-Dinther',name:'Heeswijk-Dinther',zip:''},{label:'Heeten',name:'Heeten',zip:''},{label:'Heeze',name:'Heeze',zip:''},{label:'Hegebeintum',name:'Hegebeintum',zip:''},{label:'Hegelsom',name:'Hegelsom',zip:''},{label:'Hei- en Boeicop',name:'Hei- en Boeicop',zip:''},{label:'Heibloem',name:'Heibloem',zip:''},{label:'Heide',name:'Heide',zip:''},{label:'It Heidenskip',name:'It Heidenskip',zip:''},{label:'Ter Heijde',name:'Ter Heijde',zip:''},{label:'Heijen',name:'Heijen',zip:''},{label:'Heijenrath',name:'Heijenrath',zip:''},{label:'Heijningen',name:'Heijningen',zip:''},{label:'Heikant',name:'Heikant',zip:''},{label:'Heilig Landstichting',name:'Heilig Landstichting',zip:''},{label:'Heiligerlee',name:'Heiligerlee',zip:''},{label:'Heiloo',name:'Heiloo',zip:''},{label:'Heinenoord',name:'Heinenoord',zip:''},{label:'Heinkenszand',name:'Heinkenszand',zip:''},{label:'Heino',name:'Heino',zip:''},{label:'Hekelingen',name:'Hekelingen',zip:''},{label:'Hekendorp',name:'Hekendorp',zip:''},{label:'Helden',name:'Helden',zip:''},{label:'Den Helder',name:'Den Helder',zip:''},{label:'Helenaveen',name:'Helenaveen',zip:''},{label:'Hellendoorn',name:'Hellendoorn',zip:''},{label:'Hellevoetsluis',name:'Hellevoetsluis',zip:''},{label:'Hellouw',name:'Hellouw',zip:''},{label:'Hellum',name:'Hellum',zip:''},{label:'Helmond',name:'Helmond',zip:''},{label:'Helvoirt',name:'Helvoirt',zip:''},{label:'Hem',name:'Hem',zip:''},{label:'Hemelum',name:'Hemelum',zip:''},{label:'Hemmen',name:'Hemmen',zip:''},{label:'Hempens',name:'Hempens',zip:''},{label:'Hemrik',name:'Hemrik',zip:''},{label:'Hendrik-Ido-Ambacht',name:'Hendrik-Ido-Ambacht',zip:''},{label:'Hengelo (Hengelo)',name:'Hengelo (Hengelo)',zip:''},{label:'Hengelo (Bronckhorst)',name:'Hengelo (Bronckhorst)',zip:''},{label:'Hengevelde',name:'Hengevelde',zip:''},{label:'Hengstdijk',name:'Hengstdijk',zip:''},{label:'Hensbroek',name:'Hensbroek',zip:''},{label:'Herbaijum',name:'Herbaijum',zip:''},{label:'Herkenbosch',name:'Herkenbosch',zip:''},{label:'Herkingen',name:'Herkingen',zip:''},{label:'Hernen',name:'Hernen',zip:''},{label:'Herpen',name:'Herpen',zip:''},{label:'Herpt',name:'Herpt',zip:''},{label:'Herten',name:'Herten',zip:''},{label:'Hertme',name:'Hertme',zip:''},{label:'\'s-Hertogenbosch',name:'\'s-Hertogenbosch',zip:''},{label:'Herveld',name:'Herveld',zip:''},{label:'Herwen',name:'Herwen',zip:''},{label:'Herwijnen',name:'Herwijnen',zip:''},{label:'Heteren',name:'Heteren',zip:''},{label:'Heukelom',name:'Heukelom',zip:''},{label:'Heukelum',name:'Heukelum',zip:''},{label:'Heumen',name:'Heumen',zip:''},{label:'De Heurne',name:'De Heurne',zip:''},{label:'Heusden (Asten)',name:'Heusden (Asten)',zip:''},{label:'Heusden (Heusden)',name:'Heusden (Heusden)',zip:''},{label:'Heveadorp',name:'Heveadorp',zip:''},{label:'Heythuysen',name:'Heythuysen',zip:''},{label:'Hezingen',name:'Hezingen',zip:''},{label:'Hiaure',name:'Hiaure',zip:''},{label:'Hichtum',name:'Hichtum',zip:''},{label:'Hidaard',name:'Hidaard',zip:''},{label:'Hierden',name:'Hierden',zip:''},{label:'Hieslum',name:'Hieslum',zip:''},{label:'Hijken',name:'Hijken',zip:''},{label:'Hijum',name:'Hijum',zip:''},{label:'Hilaard',name:'Hilaard',zip:''},{label:'Hillegom',name:'Hillegom',zip:''},{label:'Hilvarenbeek',name:'Hilvarenbeek',zip:''},{label:'Hilversum',name:'Hilversum',zip:''},{label:'Hindeloopen',name:'Hindeloopen',zip:''},{label:'Hinnaard',name:'Hinnaard',zip:''},{label:'Hippolytushoef',name:'Hippolytushoef',zip:''},{label:'Hitzum',name:'Hitzum',zip:''},{label:'Hobrede',name:'Hobrede',zip:''},{label:'Hoedekenskerke',name:'Hoedekenskerke',zip:''},{label:'de Hoef',name:'de Hoef',zip:''},{label:'Hoef en Haag',name:'Hoef en Haag',zip:''},{label:'Hoek',name:'Hoek',zip:''},{label:'Hoek van Holland',name:'Hoek van Holland',zip:''},{label:'Hoenderloo (Apeldoorn)',name:'Hoenderloo (Apeldoorn)',zip:''},{label:'Hoenderloo (Ede)',name:'Hoenderloo (Ede)',zip:''},{label:'Hoensbroek',name:'Hoensbroek',zip:''},{label:'Hoenzadriel',name:'Hoenzadriel',zip:''},{label:'De Hoeve',name:'De Hoeve',zip:''},{label:'Hoevelaken',name:'Hoevelaken',zip:''},{label:'Hoeven',name:'Hoeven',zip:''},{label:'Hoge Hexel',name:'Hoge Hexel',zip:''},{label:'Hollandsche Rading',name:'Hollandsche Rading',zip:''},{label:'Hollandscheveld',name:'Hollandscheveld',zip:''},{label:'Hollum',name:'Hollum',zip:''},{label:'Holsloot',name:'Holsloot',zip:''},{label:'Holten',name:'Holten',zip:''},{label:'Holthees',name:'Holthees',zip:''},{label:'Holtheme',name:'Holtheme',zip:''},{label:'Holthone',name:'Holthone',zip:''},{label:'Holtum',name:'Holtum',zip:''},{label:'Holwerd',name:'Holwerd',zip:''},{label:'Holwierde',name:'Holwierde',zip:''},{label:'Hommerts',name:'Hommerts',zip:''},{label:'Homoet',name:'Homoet',zip:''},{label:'Honselersdijk',name:'Honselersdijk',zip:''},{label:'Hoofddorp',name:'Hoofddorp',zip:''},{label:'Hoofdplaat',name:'Hoofdplaat',zip:''},{label:'Hoog Soeren',name:'Hoog Soeren',zip:''},{label:'Hoogblokland',name:'Hoogblokland',zip:''},{label:'Hooge Mierde',name:'Hooge Mierde',zip:''},{label:'Hooge Zwaluwe',name:'Hooge Zwaluwe',zip:''},{label:'Hoogeloon',name:'Hoogeloon',zip:''},{label:'Hoogenweg',name:'Hoogenweg',zip:''},{label:'Hoogerheide',name:'Hoogerheide',zip:''},{label:'Hoogersmilde (Midden-Drenthe)',name:'Hoogersmilde (Midden-Drenthe)',zip:''},{label:'Hoogersmilde (Westerveld)',name:'Hoogersmilde (Westerveld)',zip:''},{label:'Hoogeveen',name:'Hoogeveen',zip:''},{label:'Hoogezand',name:'Hoogezand',zip:''},{label:'Hooghalen',name:'Hooghalen',zip:''},{label:'Hoogkarspel',name:'Hoogkarspel',zip:''},{label:'Hoog-Keppel',name:'Hoog-Keppel',zip:''},{label:'Hoogland',name:'Hoogland',zip:''},{label:'Hooglanderveen',name:'Hooglanderveen',zip:''},{label:'Hoogmade',name:'Hoogmade',zip:''},{label:'Hoogvliet Rotterdam',name:'Hoogvliet Rotterdam',zip:''},{label:'Hoogwoud',name:'Hoogwoud',zip:''},{label:'Hoorn (Hoorn)',name:'Hoorn (Hoorn)',zip:''},{label:'Hoorn (Terschelling)',name:'Hoorn (Terschelling)',zip:''},{label:'Den Hoorn (Texel)',name:'Den Hoorn (Texel)',zip:''},{label:'Den Hoorn (Midden-Delfland)',name:'Den Hoorn (Midden-Delfland)',zip:''},{label:'Hoornaar',name:'Hoornaar',zip:''},{label:'Hoornsterzwaag',name:'Hoornsterzwaag',zip:''},{label:'Horn',name:'Horn',zip:''},{label:'Den Horn',name:'Den Horn',zip:''},{label:'Hornhuizen',name:'Hornhuizen',zip:''},{label:'Horssen',name:'Horssen',zip:''},{label:'Horst',name:'Horst',zip:''},{label:'Den Hout',name:'Den Hout',zip:''},{label:'Houten',name:'Houten',zip:''},{label:'Houtigehage',name:'Houtigehage',zip:''},{label:'Houwerzijl',name:'Houwerzijl',zip:''},{label:'Huijbergen',name:'Huijbergen',zip:''},{label:'Huis ter Heide (Noordenveld)',name:'Huis ter Heide (Noordenveld)',zip:''},{label:'Huis ter Heide (Zeist)',name:'Huis ter Heide (Zeist)',zip:''},{label:'Huisduinen',name:'Huisduinen',zip:''},{label:'Huisseling',name:'Huisseling',zip:''},{label:'Huissen',name:'Huissen',zip:''},{label:'Huizen',name:'Huizen',zip:''},{label:'Huizinge',name:'Huizinge',zip:''},{label:'Hulsberg',name:'Hulsberg',zip:''},{label:'Hulsel',name:'Hulsel',zip:''},{label:'Hulshorst',name:'Hulshorst',zip:''},{label:'Hulst',name:'Hulst',zip:''},{label:'Hulten',name:'Hulten',zip:''},{label:'Hummelo',name:'Hummelo',zip:''},{label:'Húns',name:'Húns',zip:''},{label:'Hunsel',name:'Hunsel',zip:''},{label:'Hurdegaryp',name:'Hurdegaryp',zip:''},{label:'Hurwenen',name:'Hurwenen',zip:''},{label:'Idaerd',name:'Idaerd',zip:''},{label:'Idsegahuizum',name:'Idsegahuizum',zip:''},{label:'Idskenhuizen',name:'Idskenhuizen',zip:''},{label:'Ter Idzard',name:'Ter Idzard',zip:''},{label:'Idzega',name:'Idzega',zip:''},{label:'Iens',name:'Iens',zip:''},{label:'IJhorst',name:'IJhorst',zip:''},{label:'IJlst',name:'IJlst',zip:''},{label:'IJmuiden',name:'IJmuiden',zip:''},{label:'IJsselham',name:'IJsselham',zip:''},{label:'IJsselmuiden',name:'IJsselmuiden',zip:''},{label:'IJsselstein',name:'IJsselstein',zip:''},{label:'IJzendijke',name:'IJzendijke',zip:''},{label:'IJzendoorn',name:'IJzendoorn',zip:''},{label:'Den Ilp',name:'Den Ilp',zip:''},{label:'Ilpendam',name:'Ilpendam',zip:''},{label:'Indijk',name:'Indijk',zip:''},{label:'Ingber',name:'Ingber',zip:''},{label:'Ingelum',name:'Ingelum',zip:''},{label:'Ingen',name:'Ingen',zip:''},{label:'Itens',name:'Itens',zip:''},{label:'Ittervoort',name:'Ittervoort',zip:''},{label:'Jaarsveld',name:'Jaarsveld',zip:''},{label:'Jabeek',name:'Jabeek',zip:''},{label:'Jannum',name:'Jannum',zip:''},{label:'Jellum',name:'Jellum',zip:''},{label:'Jelsum',name:'Jelsum',zip:''},{label:'Jirnsum',name:'Jirnsum',zip:''},{label:'Jislum',name:'Jislum',zip:''},{label:'Jisp',name:'Jisp',zip:''},{label:'Jistrum',name:'Jistrum',zip:''},{label:'Jonkerslân',name:'Jonkerslân',zip:''},{label:'Jonkersvaart',name:'Jonkersvaart',zip:''},{label:'Joppe',name:'Joppe',zip:''},{label:'Jorwert',name:'Jorwert',zip:''},{label:'Joure',name:'Joure',zip:''},{label:'Jouswier',name:'Jouswier',zip:''},{label:'Jubbega',name:'Jubbega',zip:''},{label:'Julianadorp',name:'Julianadorp',zip:''},{label:'Jutrijp',name:'Jutrijp',zip:''},{label:'Kaag',name:'Kaag',zip:''},{label:'Kaard',name:'Kaard',zip:''},{label:'Kaatsheuvel',name:'Kaatsheuvel',zip:''},{label:'Kalenberg',name:'Kalenberg',zip:''},{label:'Kallenkote',name:'Kallenkote',zip:''},{label:'Kamerik',name:'Kamerik',zip:''},{label:'Kampen',name:'Kampen',zip:''},{label:'Kamperland',name:'Kamperland',zip:''},{label:'Kamperveen',name:'Kamperveen',zip:''},{label:'Kantens',name:'Kantens',zip:''},{label:'Kapel Avezaath (Tiel)',name:'Kapel Avezaath (Tiel)',zip:''},{label:'Kapel-Avezaath (Buren)',name:'Kapel-Avezaath (Buren)',zip:''},{label:'Kapelle',name:'Kapelle',zip:''},{label:'Kapellebrug',name:'Kapellebrug',zip:''},{label:'Katlijk',name:'Katlijk',zip:''},{label:'Kats',name:'Kats',zip:''},{label:'Kattendijke',name:'Kattendijke',zip:''},{label:'Katwijk (Katwijk)',name:'Katwijk (Katwijk)',zip:''},{label:'Katwijk (Cuijk)',name:'Katwijk (Cuijk)',zip:''},{label:'Katwoude',name:'Katwoude',zip:''},{label:'Kedichem',name:'Kedichem',zip:''},{label:'Keent',name:'Keent',zip:''},{label:'Keijenborg',name:'Keijenborg',zip:''},{label:'Kekerdom',name:'Kekerdom',zip:''},{label:'Kelpen-Oler',name:'Kelpen-Oler',zip:''},{label:'Kerk Avezaath (Tiel)',name:'Kerk Avezaath (Tiel)',zip:''},{label:'Kerk-Avezaath (Buren)',name:'Kerk-Avezaath (Buren)',zip:''},{label:'Kerkdriel',name:'Kerkdriel',zip:''},{label:'Kerkenveld',name:'Kerkenveld',zip:''},{label:'Kerkrade',name:'Kerkrade',zip:''},{label:'Kerkwerve',name:'Kerkwerve',zip:''},{label:'Kerkwijk',name:'Kerkwijk',zip:''},{label:'Kessel',name:'Kessel',zip:''},{label:'Kesteren',name:'Kesteren',zip:''},{label:'De Kiel',name:'De Kiel',zip:''},{label:'Kiel-Windeweer',name:'Kiel-Windeweer',zip:''},{label:'Kilder',name:'Kilder',zip:''},{label:'Kimswerd',name:'Kimswerd',zip:''},{label:'Kinderdijk',name:'Kinderdijk',zip:''},{label:'Kinnum',name:'Kinnum',zip:''},{label:'Klaaswaal',name:'Klaaswaal',zip:''},{label:'Klarenbeek (Apeldoorn)',name:'Klarenbeek (Apeldoorn)',zip:''},{label:'Klarenbeek (Voorst)',name:'Klarenbeek (Voorst)',zip:''},{label:'Klazienaveen',name:'Klazienaveen',zip:''},{label:'Klazienaveen-Noord',name:'Klazienaveen-Noord',zip:''},{label:'Klein Zundert',name:'Klein Zundert',zip:''},{label:'Klijndijk',name:'Klijndijk',zip:''},{label:'Klimmen',name:'Klimmen',zip:''},{label:'Kloetinge (Goes)',name:'Kloetinge (Goes)',zip:''},{label:'Kloetinge (Kapelle)',name:'Kloetinge (Kapelle)',zip:''},{label:'De Klomp',name:'De Klomp',zip:''},{label:'Klooster Lidlum',name:'Klooster Lidlum',zip:''},{label:'Kloosterburen',name:'Kloosterburen',zip:''},{label:'Kloosterhaar (Twenterand)',name:'Kloosterhaar (Twenterand)',zip:''},{label:'Kloosterhaar (Hardenberg)',name:'Kloosterhaar (Hardenberg)',zip:''},{label:'Kloosterzande',name:'Kloosterzande',zip:''},{label:'Klundert',name:'Klundert',zip:''},{label:'Knegsel',name:'Knegsel',zip:''},{label:'De Knipe',name:'De Knipe',zip:''},{label:'Koarnjum',name:'Koarnjum',zip:''},{label:'Kockengen',name:'Kockengen',zip:''},{label:'Koedijk (Langedijk)',name:'Koedijk (Langedijk)',zip:''},{label:'Koedijk (Alkmaar)',name:'Koedijk (Alkmaar)',zip:''},{label:'Koekange',name:'Koekange',zip:''},{label:'Koewacht',name:'Koewacht',zip:''},{label:'Kolderwolde',name:'Kolderwolde',zip:''},{label:'Kolham',name:'Kolham',zip:''},{label:'Kolhorn',name:'Kolhorn',zip:''},{label:'Kollum',name:'Kollum',zip:''},{label:'Kollumerpomp',name:'Kollumerpomp',zip:''},{label:'Kollumerzwaag',name:'Kollumerzwaag',zip:''},{label:'Kommerzijl',name:'Kommerzijl',zip:''},{label:'Koningsbosch',name:'Koningsbosch',zip:''},{label:'Koningslust',name:'Koningslust',zip:''},{label:'De Koog',name:'De Koog',zip:''},{label:'Koog aan de Zaan',name:'Koog aan de Zaan',zip:''},{label:'Kootstertille',name:'Kootstertille',zip:''},{label:'Kootwijk',name:'Kootwijk',zip:''},{label:'Kootwijkerbroek',name:'Kootwijkerbroek',zip:''},{label:'Kornhorn',name:'Kornhorn',zip:''},{label:'Kornwerderzand',name:'Kornwerderzand',zip:''},{label:'Kortehemmen',name:'Kortehemmen',zip:''},{label:'Kortenhoef',name:'Kortenhoef',zip:''},{label:'Kortgene',name:'Kortgene',zip:''},{label:'Koudekerk aan den Rijn',name:'Koudekerk aan den Rijn',zip:''},{label:'Koudekerke',name:'Koudekerke',zip:''},{label:'Koudum',name:'Koudum',zip:''},{label:'Koufurderrige',name:'Koufurderrige',zip:''},{label:'Krabbendijke',name:'Krabbendijke',zip:''},{label:'Kraggenburg',name:'Kraggenburg',zip:''},{label:'Kreileroord',name:'Kreileroord',zip:''},{label:'Krewerd',name:'Krewerd',zip:''},{label:'De Krim',name:'De Krim',zip:''},{label:'Krimpen aan de Lek',name:'Krimpen aan de Lek',zip:''},{label:'Krimpen aan den IJssel',name:'Krimpen aan den IJssel',zip:''},{label:'Kring van Dorth',name:'Kring van Dorth',zip:''},{label:'Krommenie',name:'Krommenie',zip:''},{label:'Kronenberg',name:'Kronenberg',zip:''},{label:'Kropswolde',name:'Kropswolde',zip:''},{label:'Kruiningen',name:'Kruiningen',zip:''},{label:'Kruisland',name:'Kruisland',zip:''},{label:'Kûbaard',name:'Kûbaard',zip:''},{label:'Kudelstaart',name:'Kudelstaart',zip:''},{label:'Kuinre',name:'Kuinre',zip:''},{label:'Kuitaart',name:'Kuitaart',zip:''},{label:'Kwadendamme',name:'Kwadendamme',zip:''},{label:'Kwadijk',name:'Kwadijk',zip:''},{label:'De Kwakel',name:'De Kwakel',zip:''},{label:'Kwintsheul',name:'Kwintsheul',zip:''},{label:'Laag Zuthem',name:'Laag Zuthem',zip:''},{label:'Laag-Keppel',name:'Laag-Keppel',zip:''},{label:'Laag-Soeren',name:'Laag-Soeren',zip:''},{label:'Lage Mierde',name:'Lage Mierde',zip:''},{label:'Lage Vuursche',name:'Lage Vuursche',zip:''},{label:'Lage Zwaluwe',name:'Lage Zwaluwe',zip:''},{label:'Lageland (Midden-Groningen)',name:'Lageland (Midden-Groningen)',zip:''},{label:'Lageland (Groningen)',name:'Lageland (Groningen)',zip:''},{label:'Lambertschaag',name:'Lambertschaag',zip:''},{label:'Lamswaarde',name:'Lamswaarde',zip:''},{label:'Landerum',name:'Landerum',zip:''},{label:'Landgraaf',name:'Landgraaf',zip:''},{label:'Landhorst',name:'Landhorst',zip:''},{label:'Landsmeer',name:'Landsmeer',zip:''},{label:'Langbroek',name:'Langbroek',zip:''},{label:'Langedijke',name:'Langedijke',zip:''},{label:'Langelille',name:'Langelille',zip:''},{label:'Langelo',name:'Langelo',zip:''},{label:'Langenboom',name:'Langenboom',zip:''},{label:'Langerak',name:'Langerak',zip:''},{label:'Langeveen',name:'Langeveen',zip:''},{label:'Langeweg',name:'Langeweg',zip:''},{label:'Langezwaag',name:'Langezwaag',zip:''},{label:'Langweer',name:'Langweer',zip:''},{label:'Laren (Lochem)',name:'Laren (Lochem)',zip:''},{label:'Laren (Laren)',name:'Laren (Laren)',zip:''},{label:'Lathum',name:'Lathum',zip:''},{label:'Lattrop-Breklenkamp',name:'Lattrop-Breklenkamp',zip:''},{label:'Lauwersoog',name:'Lauwersoog',zip:''},{label:'Lauwerzijl',name:'Lauwerzijl',zip:''},{label:'Ledeacker',name:'Ledeacker',zip:''},{label:'Leek',name:'Leek',zip:''},{label:'Leende',name:'Leende',zip:''},{label:'Leens',name:'Leens',zip:''},{label:'Leerbroek',name:'Leerbroek',zip:''},{label:'Leerdam',name:'Leerdam',zip:''},{label:'Leermens',name:'Leermens',zip:''},{label:'Leersum',name:'Leersum',zip:''},{label:'Leeuwarden',name:'Leeuwarden',zip:''},{label:'Legemeer',name:'Legemeer',zip:''},{label:'Leiden',name:'Leiden',zip:''},{label:'Leiderdorp',name:'Leiderdorp',zip:''},{label:'Leidschendam',name:'Leidschendam',zip:''},{label:'Leimuiden',name:'Leimuiden',zip:''},{label:'Leimuiderbrug',name:'Leimuiderbrug',zip:''},{label:'Lekkerkerk',name:'Lekkerkerk',zip:''},{label:'Lekkum',name:'Lekkum',zip:''},{label:'Lellens',name:'Lellens',zip:''},{label:'Lelystad',name:'Lelystad',zip:''},{label:'Lemele',name:'Lemele',zip:''},{label:'Lemelerveld',name:'Lemelerveld',zip:''},{label:'Lemiers',name:'Lemiers',zip:''},{label:'Lemmer',name:'Lemmer',zip:''},{label:'Lengel',name:'Lengel',zip:''},{label:'Lent',name:'Lent',zip:''},{label:'Leons',name:'Leons',zip:''},{label:'Lepelstraat',name:'Lepelstraat',zip:''},{label:'Lettelbert',name:'Lettelbert',zip:''},{label:'Lettele',name:'Lettele',zip:''},{label:'Leunen',name:'Leunen',zip:''},{label:'Leur',name:'Leur',zip:''},{label:'Leusden',name:'Leusden',zip:''},{label:'Leuth',name:'Leuth',zip:''},{label:'Leutingewolde',name:'Leutingewolde',zip:''},{label:'Leuvenheim',name:'Leuvenheim',zip:''},{label:'Leveroy',name:'Leveroy',zip:''},{label:'Lewedorp',name:'Lewedorp',zip:''},{label:'Lexmond',name:'Lexmond',zip:''},{label:'Lichtaard',name:'Lichtaard',zip:''},{label:'Lichtenvoorde',name:'Lichtenvoorde',zip:''},{label:'Liempde',name:'Liempde',zip:''},{label:'Lienden',name:'Lienden',zip:''},{label:'De Lier',name:'De Lier',zip:''},{label:'Lierderholthuis',name:'Lierderholthuis',zip:''},{label:'Lieren',name:'Lieren',zip:''},{label:'Lierop',name:'Lierop',zip:''},{label:'Lies',name:'Lies',zip:''},{label:'Lieshout',name:'Lieshout',zip:''},{label:'Liessel',name:'Liessel',zip:''},{label:'Lievelde',name:'Lievelde',zip:''},{label:'Lieveren',name:'Lieveren',zip:''},{label:'Lijnden',name:'Lijnden',zip:''},{label:'Limbricht',name:'Limbricht',zip:''},{label:'Limmen',name:'Limmen',zip:''},{label:'Linde',name:'Linde',zip:''},{label:'Linden',name:'Linden',zip:''},{label:'Linne',name:'Linne',zip:''},{label:'Linschoten',name:'Linschoten',zip:''},{label:'Lioessens',name:'Lioessens',zip:''},{label:'Lippenhuizen',name:'Lippenhuizen',zip:''},{label:'Lisse',name:'Lisse',zip:''},{label:'Lisserbroek',name:'Lisserbroek',zip:''},{label:'Lith',name:'Lith',zip:''},{label:'Lithoijen',name:'Lithoijen',zip:''},{label:'Lobith',name:'Lobith',zip:''},{label:'Lochem',name:'Lochem',zip:''},{label:'Loenen',name:'Loenen',zip:''},{label:'Loenen aan de Vecht',name:'Loenen aan de Vecht',zip:''},{label:'Loenersloot',name:'Loenersloot',zip:''},{label:'Loënga',name:'Loënga',zip:''},{label:'Loerbeek',name:'Loerbeek',zip:''},{label:'Lollum',name:'Lollum',zip:''},{label:'Lomm',name:'Lomm',zip:''},{label:'Longerhouw',name:'Longerhouw',zip:''},{label:'Loo Gld (Lingewaard)',name:'Loo Gld (Lingewaard)',zip:''},{label:'Loo Gld (Duiven)',name:'Loo Gld (Duiven)',zip:''},{label:'\'t Loo Oldebroek',name:'\'t Loo Oldebroek',zip:''},{label:'Loon',name:'Loon',zip:''},{label:'Loon op Zand',name:'Loon op Zand',zip:''},{label:'Loosbroek',name:'Loosbroek',zip:''},{label:'Loosdrecht',name:'Loosdrecht',zip:''},{label:'Loozen',name:'Loozen',zip:''},{label:'Lopik',name:'Lopik',zip:''},{label:'Lopikerkapel',name:'Lopikerkapel',zip:''},{label:'Loppersum',name:'Loppersum',zip:''},{label:'Losdorp',name:'Losdorp',zip:''},{label:'Losser',name:'Losser',zip:''},{label:'Lottum',name:'Lottum',zip:''},{label:'Lucaswolde',name:'Lucaswolde',zip:''},{label:'Luddeweer',name:'Luddeweer',zip:''},{label:'Luinjeberd',name:'Luinjeberd',zip:''},{label:'Lunteren',name:'Lunteren',zip:''},{label:'Lutjebroek',name:'Lutjebroek',zip:''},{label:'Lutjegast',name:'Lutjegast',zip:''},{label:'Lutjewinkel',name:'Lutjewinkel',zip:''},{label:'de Lutte',name:'de Lutte',zip:''},{label:'Luttelgeest',name:'Luttelgeest',zip:''},{label:'Lutten',name:'Lutten',zip:''},{label:'Luttenberg',name:'Luttenberg',zip:''},{label:'Luxwoude',name:'Luxwoude',zip:''},{label:'Luyksgestel',name:'Luyksgestel',zip:''},{label:'Lytsewierrum',name:'Lytsewierrum',zip:''},{label:'Maarheeze',name:'Maarheeze',zip:''},{label:'Maarn',name:'Maarn',zip:''},{label:'Maarsbergen',name:'Maarsbergen',zip:''},{label:'Maarssen',name:'Maarssen',zip:''},{label:'Maartensdijk',name:'Maartensdijk',zip:''},{label:'Maasbommel',name:'Maasbommel',zip:''},{label:'Maasbracht',name:'Maasbracht',zip:''},{label:'Maasbree',name:'Maasbree',zip:''},{label:'Maasdam',name:'Maasdam',zip:''},{label:'Maasdijk',name:'Maasdijk',zip:''},{label:'Maashees',name:'Maashees',zip:''},{label:'Maasland',name:'Maasland',zip:''},{label:'Maassluis',name:'Maassluis',zip:''},{label:'Maastricht',name:'Maastricht',zip:''},{label:'Maastricht-Airport',name:'Maastricht-Airport',zip:''},{label:'Maasvlakte Rotterdam',name:'Maasvlakte Rotterdam',zip:''},{label:'Macharen',name:'Macharen',zip:''},{label:'Made',name:'Made',zip:''},{label:'Makkinga',name:'Makkinga',zip:''},{label:'Makkum',name:'Makkum',zip:''},{label:'Malden',name:'Malden',zip:''},{label:'Mander',name:'Mander',zip:''},{label:'Manderveen',name:'Manderveen',zip:''},{label:'Mantgum',name:'Mantgum',zip:''},{label:'Mantinge',name:'Mantinge',zip:''},{label:'Maren-Kessel',name:'Maren-Kessel',zip:''},{label:'Margraten',name:'Margraten',zip:''},{label:'Maria Hoop',name:'Maria Hoop',zip:''},{label:'Mariahout',name:'Mariahout',zip:''},{label:'Mariaparochie',name:'Mariaparochie',zip:''},{label:'Mariënberg',name:'Mariënberg',zip:''},{label:'Mariënheem',name:'Mariënheem',zip:''},{label:'Mariënvelde',name:'Mariënvelde',zip:''},{label:'Marijenkampen',name:'Marijenkampen',zip:''},{label:'Markelo',name:'Markelo',zip:''},{label:'Marken',name:'Marken',zip:''},{label:'Markenbinnen',name:'Markenbinnen',zip:''},{label:'Marknesse',name:'Marknesse',zip:''},{label:'Marle',name:'Marle',zip:''},{label:'Marrum',name:'Marrum',zip:''},{label:'Marsum',name:'Marsum',zip:''},{label:'Marum',name:'Marum',zip:''},{label:'Marwijksoord',name:'Marwijksoord',zip:''},{label:'Mastenbroek (Zwartewaterland)',name:'Mastenbroek (Zwartewaterland)',zip:''},{label:'Mastenbroek (Kampen)',name:'Mastenbroek (Kampen)',zip:''},{label:'Matsloot',name:'Matsloot',zip:''},{label:'Maurik',name:'Maurik',zip:''},{label:'Mechelen',name:'Mechelen',zip:''},{label:'Medemblik',name:'Medemblik',zip:''},{label:'Meeden',name:'Meeden',zip:''},{label:'Meedhuizen',name:'Meedhuizen',zip:''},{label:'Meerkerk',name:'Meerkerk',zip:''},{label:'Meerlo',name:'Meerlo',zip:''},{label:'De Meern',name:'De Meern',zip:''},{label:'Meerssen',name:'Meerssen',zip:''},{label:'Meerstad',name:'Meerstad',zip:''},{label:'Meeuwen',name:'Meeuwen',zip:''},{label:'Megchelen',name:'Megchelen',zip:''},{label:'Megen',name:'Megen',zip:''},{label:'Meijel',name:'Meijel',zip:''},{label:'Melderslo',name:'Melderslo',zip:''},{label:'Melick',name:'Melick',zip:''},{label:'Meliskerke',name:'Meliskerke',zip:''},{label:'Melissant',name:'Melissant',zip:''},{label:'Menaam',name:'Menaam',zip:''},{label:'Mensingeweer',name:'Mensingeweer',zip:''},{label:'Meppel',name:'Meppel',zip:''},{label:'Meppen',name:'Meppen',zip:''},{label:'Merkelbeek',name:'Merkelbeek',zip:''},{label:'Merselo',name:'Merselo',zip:''},{label:'Meteren',name:'Meteren',zip:''},{label:'Meterik',name:'Meterik',zip:''},{label:'Metslawier',name:'Metslawier',zip:''},{label:'Mheer',name:'Mheer',zip:''},{label:'Middelaar',name:'Middelaar',zip:''},{label:'Middelburg',name:'Middelburg',zip:''},{label:'Middelharnis',name:'Middelharnis',zip:''},{label:'Middelie',name:'Middelie',zip:''},{label:'Middelstum',name:'Middelstum',zip:''},{label:'Middenbeemster',name:'Middenbeemster',zip:''},{label:'Middenmeer',name:'Middenmeer',zip:''},{label:'Midlaren',name:'Midlaren',zip:''},{label:'Midlum',name:'Midlum',zip:''},{label:'Midsland',name:'Midsland',zip:''},{label:'Midwolda',name:'Midwolda',zip:''},{label:'Midwolde',name:'Midwolde',zip:''},{label:'Midwoud',name:'Midwoud',zip:''},{label:'Miedum',name:'Miedum',zip:''},{label:'Mierlo',name:'Mierlo',zip:''},{label:'Mijdrecht',name:'Mijdrecht',zip:''},{label:'Mijnsheerenland',name:'Mijnsheerenland',zip:''},{label:'Mildam',name:'Mildam',zip:''},{label:'Milheeze',name:'Milheeze',zip:''},{label:'Mill',name:'Mill',zip:''},{label:'Millingen aan de Rijn',name:'Millingen aan de Rijn',zip:''},{label:'Milsbeek',name:'Milsbeek',zip:''},{label:'Minnertsga',name:'Minnertsga',zip:''},{label:'Mirns',name:'Mirns',zip:''},{label:'Moddergat',name:'Moddergat',zip:''},{label:'De Moer',name:'De Moer',zip:''},{label:'Moerdijk',name:'Moerdijk',zip:''},{label:'Moergestel',name:'Moergestel',zip:''},{label:'Moerkapelle',name:'Moerkapelle',zip:''},{label:'Moerstraten',name:'Moerstraten',zip:''},{label:'Molenaarsgraaf',name:'Molenaarsgraaf',zip:''},{label:'Molenhoek',name:'Molenhoek',zip:''},{label:'Molenschot',name:'Molenschot',zip:''},{label:'Molkwerum',name:'Molkwerum',zip:''},{label:'Monnickendam',name:'Monnickendam',zip:''},{label:'Monster',name:'Monster',zip:''},{label:'Montfoort',name:'Montfoort',zip:''},{label:'Montfort',name:'Montfort',zip:''},{label:'Mook',name:'Mook',zip:''},{label:'Mookhoek',name:'Mookhoek',zip:''},{label:'Moordrecht',name:'Moordrecht',zip:''},{label:'Moorveld',name:'Moorveld',zip:''},{label:'Morra',name:'Morra',zip:''},{label:'De Mortel',name:'De Mortel',zip:''},{label:'Muiden',name:'Muiden',zip:''},{label:'Muiderberg',name:'Muiderberg',zip:''},{label:'Mûnein',name:'Mûnein',zip:''},{label:'Munnekeburen',name:'Munnekeburen',zip:''},{label:'Munnekezijl',name:'Munnekezijl',zip:''},{label:'Munstergeleen',name:'Munstergeleen',zip:''},{label:'Muntendam',name:'Muntendam',zip:''},{label:'Mussel',name:'Mussel',zip:''},{label:'Musselkanaal',name:'Musselkanaal',zip:''},{label:'Naaldwijk',name:'Naaldwijk',zip:''},{label:'Naarden',name:'Naarden',zip:''},{label:'Nagele',name:'Nagele',zip:''},{label:'Nederasselt',name:'Nederasselt',zip:''},{label:'Nederhemert',name:'Nederhemert',zip:''},{label:'Nederhorst den Berg',name:'Nederhorst den Berg',zip:''},{label:'Nederland',name:'Nederland',zip:''},{label:'Nederweert',name:'Nederweert',zip:''},{label:'Nederweert-Eind',name:'Nederweert-Eind',zip:''},{label:'Neede',name:'Neede',zip:''},{label:'Neer',name:'Neer',zip:''},{label:'Neerijnen',name:'Neerijnen',zip:''},{label:'Neeritter',name:'Neeritter',zip:''},{label:'Neerkant',name:'Neerkant',zip:''},{label:'Neerlangel',name:'Neerlangel',zip:''},{label:'Neerloon',name:'Neerloon',zip:''},{label:'Nes (Heerenveen)',name:'Nes (Heerenveen)',zip:''},{label:'Nes (Ameland)',name:'Nes (Ameland)',zip:''},{label:'Nes (Dongeradeel)',name:'Nes (Dongeradeel)',zip:''},{label:'Netersel',name:'Netersel',zip:''},{label:'Netterden',name:'Netterden',zip:''},{label:'Niawier',name:'Niawier',zip:''},{label:'Nibbixwoud',name:'Nibbixwoud',zip:''},{label:'Niebert',name:'Niebert',zip:''},{label:'Niehove',name:'Niehove',zip:''},{label:'Niekerk (Grootegast)',name:'Niekerk (Grootegast)',zip:''},{label:'Niekerk (De Marne)',name:'Niekerk (De Marne)',zip:''},{label:'Nietap',name:'Nietap',zip:''},{label:'Nieuw Annerveen',name:'Nieuw Annerveen',zip:''},{label:'Nieuw Beerta',name:'Nieuw Beerta',zip:''},{label:'Nieuw- en Sint Joosland',name:'Nieuw- en Sint Joosland',zip:''},{label:'Nieuw Heeten',name:'Nieuw Heeten',zip:''},{label:'Nieuw Namen',name:'Nieuw Namen',zip:''},{label:'Nieuw Scheemda',name:'Nieuw Scheemda',zip:''},{label:'Nieuwaal',name:'Nieuwaal',zip:''},{label:'Nieuw-Amsterdam',name:'Nieuw-Amsterdam',zip:''},{label:'Nieuw-Balinge',name:'Nieuw-Balinge',zip:''},{label:'Nieuw-Beijerland',name:'Nieuw-Beijerland',zip:''},{label:'Nieuw-Buinen',name:'Nieuw-Buinen',zip:''},{label:'Nieuw-Dordrecht',name:'Nieuw-Dordrecht',zip:''},{label:'Nieuwdorp',name:'Nieuwdorp',zip:''},{label:'Nieuwe Niedorp',name:'Nieuwe Niedorp',zip:''},{label:'Nieuwe Pekela',name:'Nieuwe Pekela',zip:''},{label:'Nieuwe Wetering',name:'Nieuwe Wetering',zip:''},{label:'Nieuwebrug',name:'Nieuwebrug',zip:''},{label:'Nieuwediep',name:'Nieuwediep',zip:''},{label:'Nieuwegein',name:'Nieuwegein',zip:''},{label:'Nieuwehorne',name:'Nieuwehorne',zip:''},{label:'Nieuwendijk',name:'Nieuwendijk',zip:''},{label:'Nieuwer Ter Aa',name:'Nieuwer Ter Aa',zip:''},{label:'Nieuwerbrug aan den Rijn',name:'Nieuwerbrug aan den Rijn',zip:''},{label:'Nieuwerkerk',name:'Nieuwerkerk',zip:''},{label:'Nieuwerkerk aan den IJssel',name:'Nieuwerkerk aan den IJssel',zip:''},{label:'Nieuweroord (Hoogeveen)',name:'Nieuweroord (Hoogeveen)',zip:''},{label:'Nieuweroord (Midden-Drenthe)',name:'Nieuweroord (Midden-Drenthe)',zip:''},{label:'Nieuwersluis',name:'Nieuwersluis',zip:''},{label:'Nieuweschoot',name:'Nieuweschoot',zip:''},{label:'Nieuwe-Tonge',name:'Nieuwe-Tonge',zip:''},{label:'Nieuwkoop',name:'Nieuwkoop',zip:''},{label:'Nieuwkuijk',name:'Nieuwkuijk',zip:''},{label:'Nieuwland',name:'Nieuwland',zip:''},{label:'Nieuwlande',name:'Nieuwlande',zip:''},{label:'Nieuwlande Coevorden',name:'Nieuwlande Coevorden',zip:''},{label:'Nieuw-Lekkerland',name:'Nieuw-Lekkerland',zip:''},{label:'Nieuwleusen',name:'Nieuwleusen',zip:''},{label:'Nieuwolda',name:'Nieuwolda',zip:''},{label:'Nieuwpoort',name:'Nieuwpoort',zip:''},{label:'Nieuw-Roden',name:'Nieuw-Roden',zip:''},{label:'Nieuw-Schoonebeek',name:'Nieuw-Schoonebeek',zip:''},{label:'Nieuwstadt',name:'Nieuwstadt',zip:''},{label:'Nieuwveen',name:'Nieuwveen',zip:''},{label:'Nieuw-Vennep',name:'Nieuw-Vennep',zip:''},{label:'Nieuwvliet',name:'Nieuwvliet',zip:''},{label:'Nieuw-Vossemeer',name:'Nieuw-Vossemeer',zip:''},{label:'Nieuw-Weerdinge',name:'Nieuw-Weerdinge',zip:''},{label:'Niezijl',name:'Niezijl',zip:''},{label:'Niftrik',name:'Niftrik',zip:''},{label:'Nigtevecht',name:'Nigtevecht',zip:''},{label:'Nij Altoenae',name:'Nij Altoenae',zip:''},{label:'Nij Beets',name:'Nij Beets',zip:''},{label:'Nijbroek',name:'Nijbroek',zip:''},{label:'Nijeberkoop',name:'Nijeberkoop',zip:''},{label:'Nijega',name:'Nijega',zip:''},{label:'Nijehaske',name:'Nijehaske',zip:''},{label:'Nijeholtpade',name:'Nijeholtpade',zip:''},{label:'Nijeholtwolde',name:'Nijeholtwolde',zip:''},{label:'Nijelamer',name:'Nijelamer',zip:''},{label:'Nijemirdum',name:'Nijemirdum',zip:''},{label:'Nijensleek',name:'Nijensleek',zip:''},{label:'Nijetrijne',name:'Nijetrijne',zip:''},{label:'Nijeveen',name:'Nijeveen',zip:''},{label:'Nijhuizum',name:'Nijhuizum',zip:''},{label:'Nijkerk',name:'Nijkerk',zip:''},{label:'Nijkerkerveen',name:'Nijkerkerveen',zip:''},{label:'Nijland',name:'Nijland',zip:''},{label:'Nijlande',name:'Nijlande',zip:''},{label:'Nijmegen',name:'Nijmegen',zip:''},{label:'Nijverdal',name:'Nijverdal',zip:''},{label:'Nispen',name:'Nispen',zip:''},{label:'Nisse',name:'Nisse',zip:''},{label:'Nistelrode',name:'Nistelrode',zip:''},{label:'Noardburgum',name:'Noardburgum',zip:''},{label:'Nooitgedacht',name:'Nooitgedacht',zip:''},{label:'Noorbeek',name:'Noorbeek',zip:''},{label:'Noordbeemster',name:'Noordbeemster',zip:''},{label:'Noordbroek',name:'Noordbroek',zip:''},{label:'Noordeinde (Alkmaar)',name:'Noordeinde (Alkmaar)',zip:''},{label:'Noordeinde (Oldebroek)',name:'Noordeinde (Oldebroek)',zip:''},{label:'Noordeloos',name:'Noordeloos',zip:''},{label:'Noorden',name:'Noorden',zip:''},{label:'Noordgouwe',name:'Noordgouwe',zip:''},{label:'Noordhoek',name:'Noordhoek',zip:''},{label:'Noordhorn',name:'Noordhorn',zip:''},{label:'Noordlaren',name:'Noordlaren',zip:''},{label:'Noord-Scharwoude',name:'Noord-Scharwoude',zip:''},{label:'Noordscheschut',name:'Noordscheschut',zip:''},{label:'Noord-Sleen',name:'Noord-Sleen',zip:''},{label:'Noordwelle',name:'Noordwelle',zip:''},{label:'Noordwijk (Marum)',name:'Noordwijk (Marum)',zip:''},{label:'Noordwijk (Noordwijk)',name:'Noordwijk (Noordwijk)',zip:''},{label:'Noordwijkerhout',name:'Noordwijkerhout',zip:''},{label:'Noordwolde (Bedum)',name:'Noordwolde (Bedum)',zip:''},{label:'Noordwolde (Weststellingwerf)',name:'Noordwolde (Weststellingwerf)',zip:''},{label:'Nootdorp',name:'Nootdorp',zip:''},{label:'Norg',name:'Norg',zip:''},{label:'Notter',name:'Notter',zip:''},{label:'Nuenen',name:'Nuenen',zip:''},{label:'Nuis',name:'Nuis',zip:''},{label:'Nuland',name:'Nuland',zip:''},{label:'Numansdorp',name:'Numansdorp',zip:''},{label:'Nunhem',name:'Nunhem',zip:''},{label:'Nunspeet',name:'Nunspeet',zip:''},{label:'Nuth',name:'Nuth',zip:''},{label:'Nutter',name:'Nutter',zip:''},{label:'Obbicht',name:'Obbicht',zip:''},{label:'Obdam',name:'Obdam',zip:''},{label:'Ochten',name:'Ochten',zip:''},{label:'Odijk',name:'Odijk',zip:''},{label:'Odiliapeel',name:'Odiliapeel',zip:''},{label:'Odoorn',name:'Odoorn',zip:''},{label:'Odoornerveen',name:'Odoornerveen',zip:''},{label:'Oeffelt',name:'Oeffelt',zip:''},{label:'Oegstgeest',name:'Oegstgeest',zip:''},{label:'Oene',name:'Oene',zip:''},{label:'Oentsjerk',name:'Oentsjerk',zip:''},{label:'Den Oever',name:'Den Oever',zip:''},{label:'Offingawier',name:'Offingawier',zip:''},{label:'Ohé en Laak',name:'Ohé en Laak',zip:''},{label:'Oijen',name:'Oijen',zip:''},{label:'Oirlo',name:'Oirlo',zip:''},{label:'Oirsbeek',name:'Oirsbeek',zip:''},{label:'Oirschot',name:'Oirschot',zip:''},{label:'Oisterwijk',name:'Oisterwijk',zip:''},{label:'Okkenbroek',name:'Okkenbroek',zip:''},{label:'Olburgen',name:'Olburgen',zip:''},{label:'Oldeberkoop',name:'Oldeberkoop',zip:''},{label:'Oldebroek',name:'Oldebroek',zip:''},{label:'Oldeholtpade',name:'Oldeholtpade',zip:''},{label:'Oldeholtwolde',name:'Oldeholtwolde',zip:''},{label:'Oldehove',name:'Oldehove',zip:''},{label:'Oldekerk',name:'Oldekerk',zip:''},{label:'Oldelamer',name:'Oldelamer',zip:''},{label:'Oldemarkt',name:'Oldemarkt',zip:''},{label:'Oldenzaal',name:'Oldenzaal',zip:''},{label:'Oldenzijl',name:'Oldenzijl',zip:''},{label:'Oldeouwer',name:'Oldeouwer',zip:''},{label:'Oldetrijne',name:'Oldetrijne',zip:''},{label:'Olst',name:'Olst',zip:''},{label:'Olterterp',name:'Olterterp',zip:''},{label:'Ommel',name:'Ommel',zip:''},{label:'Ommen',name:'Ommen',zip:''},{label:'Ommeren',name:'Ommeren',zip:''},{label:'Onderdendam',name:'Onderdendam',zip:''},{label:'Onna',name:'Onna',zip:''},{label:'Onnen',name:'Onnen',zip:''},{label:'Onstwedde',name:'Onstwedde',zip:''},{label:'Ooij',name:'Ooij',zip:''},{label:'Ooltgensplaat',name:'Ooltgensplaat',zip:''},{label:'Oost West en Middelbeers',name:'Oost West en Middelbeers',zip:''},{label:'Oostburg',name:'Oostburg',zip:''},{label:'Oostdijk',name:'Oostdijk',zip:''},{label:'Oosteind',name:'Oosteind',zip:''},{label:'Oosterbeek',name:'Oosterbeek',zip:''},{label:'Oosterbierum',name:'Oosterbierum',zip:''},{label:'Oosterblokker',name:'Oosterblokker',zip:''},{label:'Oosterend (Terschelling)',name:'Oosterend (Terschelling)',zip:''},{label:'Oosterend (Texel)',name:'Oosterend (Texel)',zip:''},{label:'Oosterhesselen',name:'Oosterhesselen',zip:''},{label:'Oosterhout (Overbetuwe)',name:'Oosterhout (Overbetuwe)',zip:''},{label:'Oosterhout (Oosterhout)',name:'Oosterhout (Oosterhout)',zip:''},{label:'Oosterland',name:'Oosterland',zip:''},{label:'Oosterleek',name:'Oosterleek',zip:''},{label:'Oosternieland',name:'Oosternieland',zip:''},{label:'Oosternijkerk',name:'Oosternijkerk',zip:''},{label:'Oosterstreek',name:'Oosterstreek',zip:''},{label:'Oosterwijk',name:'Oosterwijk',zip:''},{label:'Oosterwijtwerd',name:'Oosterwijtwerd',zip:''},{label:'Oosterwolde (Ooststellingwerf)',name:'Oosterwolde (Ooststellingwerf)',zip:''},{label:'Oosterwolde (Oldebroek)',name:'Oosterwolde (Oldebroek)',zip:''},{label:'Oosterzee',name:'Oosterzee',zip:''},{label:'Oost-Graftdijk',name:'Oost-Graftdijk',zip:''},{label:'Oosthem',name:'Oosthem',zip:''},{label:'Oosthuizen',name:'Oosthuizen',zip:''},{label:'Oostkapelle',name:'Oostkapelle',zip:''},{label:'Oostknollendam',name:'Oostknollendam',zip:''},{label:'Oostrum (Venray)',name:'Oostrum (Venray)',zip:''},{label:'Oostrum (Dongeradeel)',name:'Oostrum (Dongeradeel)',zip:''},{label:'Oost-Souburg',name:'Oost-Souburg',zip:''},{label:'Oostvoorne',name:'Oostvoorne',zip:''},{label:'Oostwold (Oldambt)',name:'Oostwold (Oldambt)',zip:''},{label:'Oostwold (Leek)',name:'Oostwold (Leek)',zip:''},{label:'Oostwoud',name:'Oostwoud',zip:''},{label:'Oostzaan',name:'Oostzaan',zip:''},{label:'Ootmarsum',name:'Ootmarsum',zip:''},{label:'Opeinde',name:'Opeinde',zip:''},{label:'Opende',name:'Opende',zip:''},{label:'Ophemert',name:'Ophemert',zip:''},{label:'Opheusden',name:'Opheusden',zip:''},{label:'Opijnen',name:'Opijnen',zip:''},{label:'Oploo',name:'Oploo',zip:''},{label:'Opmeer',name:'Opmeer',zip:''},{label:'Oppenhuizen',name:'Oppenhuizen',zip:''},{label:'Opperdoes',name:'Opperdoes',zip:''},{label:'Oranje',name:'Oranje',zip:''},{label:'Oranjewoud',name:'Oranjewoud',zip:''},{label:'Orvelte',name:'Orvelte',zip:''},{label:'Ospel',name:'Ospel',zip:''},{label:'Oss',name:'Oss',zip:''},{label:'Ossendrecht',name:'Ossendrecht',zip:''},{label:'Ossenisse',name:'Ossenisse',zip:''},{label:'Ossenwaard',name:'Ossenwaard',zip:''},{label:'Ossenzijl',name:'Ossenzijl',zip:''},{label:'Oterleek',name:'Oterleek',zip:''},{label:'Otterlo',name:'Otterlo',zip:''},{label:'Ottersum',name:'Ottersum',zip:''},{label:'Ottoland',name:'Ottoland',zip:''},{label:'Oud Ade',name:'Oud Ade',zip:''},{label:'Oud Annerveen',name:'Oud Annerveen',zip:''},{label:'Oud Gastel',name:'Oud Gastel',zip:''},{label:'Oud Ootmarsum',name:'Oud Ootmarsum',zip:''},{label:'Oud Zuilen',name:'Oud Zuilen',zip:''},{label:'Oud-Alblas',name:'Oud-Alblas',zip:''},{label:'Oud-Beijerland',name:'Oud-Beijerland',zip:''},{label:'Ouddorp',name:'Ouddorp',zip:''},{label:'Oude Meer',name:'Oude Meer',zip:''},{label:'Oude Niedorp',name:'Oude Niedorp',zip:''},{label:'Oude Pekela',name:'Oude Pekela',zip:''},{label:'Oude Wetering',name:'Oude Wetering',zip:''},{label:'Oude Willem',name:'Oude Willem',zip:''},{label:'Oudebildtzijl',name:'Oudebildtzijl',zip:''},{label:'Oudega (Smallingerland)',name:'Oudega (Smallingerland)',zip:''},{label:'Oudega (De Fryske Marren)',name:'Oudega (De Fryske Marren)',zip:''},{label:'Oudega (Súdwest-Fryslân)',name:'Oudega (Súdwest-Fryslân)',zip:''},{label:'Oudehaske',name:'Oudehaske',zip:''},{label:'Oudehorne',name:'Oudehorne',zip:''},{label:'Oudelande',name:'Oudelande',zip:''},{label:'Oudemirdum',name:'Oudemirdum',zip:''},{label:'Oudemolen (Moerdijk)',name:'Oudemolen (Moerdijk)',zip:''},{label:'Oudemolen (Tynaarlo)',name:'Oudemolen (Tynaarlo)',zip:''},{label:'Oudenbosch',name:'Oudenbosch',zip:''},{label:'Oudendijk',name:'Oudendijk',zip:''},{label:'Oudenhoorn',name:'Oudenhoorn',zip:''},{label:'Ouderkerk aan de Amstel',name:'Ouderkerk aan de Amstel',zip:''},{label:'Ouderkerk aan den IJssel',name:'Ouderkerk aan den IJssel',zip:''},{label:'Oudeschans',name:'Oudeschans',zip:''},{label:'Oudeschild',name:'Oudeschild',zip:''},{label:'Oudeschip',name:'Oudeschip',zip:''},{label:'Oudeschoot',name:'Oudeschoot',zip:''},{label:'Oudesluis',name:'Oudesluis',zip:''},{label:'Oude-Tonge',name:'Oude-Tonge',zip:''},{label:'Oudewater',name:'Oudewater',zip:''},{label:'Oudezijl',name:'Oudezijl',zip:''},{label:'Oudheusden',name:'Oudheusden',zip:''},{label:'Oudkarspel (Schagen)',name:'Oudkarspel (Schagen)',zip:''},{label:'Oudkarspel (Langedijk)',name:'Oudkarspel (Langedijk)',zip:''},{label:'Oudorp',name:'Oudorp',zip:''},{label:'Oud-Vossemeer',name:'Oud-Vossemeer',zip:''},{label:'Oudwoude',name:'Oudwoude',zip:''},{label:'Ouwerkerk',name:'Ouwerkerk',zip:''},{label:'Ouwsterhaule',name:'Ouwsterhaule',zip:''},{label:'Ouwster-Nijega',name:'Ouwster-Nijega',zip:''},{label:'Overasselt',name:'Overasselt',zip:''},{label:'Overberg',name:'Overberg',zip:''},{label:'Overdinkel',name:'Overdinkel',zip:''},{label:'Overlangel',name:'Overlangel',zip:''},{label:'Overloon',name:'Overloon',zip:''},{label:'Overschild',name:'Overschild',zip:''},{label:'Overslag',name:'Overslag',zip:''},{label:'Overveen',name:'Overveen',zip:''},{label:'Ovezande',name:'Ovezande',zip:''},{label:'Paasloo',name:'Paasloo',zip:''},{label:'Paesens',name:'Paesens',zip:''},{label:'Pannerden',name:'Pannerden',zip:''},{label:'Panningen',name:'Panningen',zip:''},{label:'Papekop',name:'Papekop',zip:''},{label:'Papendrecht',name:'Papendrecht',zip:''},{label:'Papenhoven',name:'Papenhoven',zip:''},{label:'Papenvoort',name:'Papenvoort',zip:''},{label:'Parrega',name:'Parrega',zip:''},{label:'Paterswolde',name:'Paterswolde',zip:''},{label:'Peest',name:'Peest',zip:''},{label:'Peins',name:'Peins',zip:''},{label:'Peize',name:'Peize',zip:''},{label:'Peperga',name:'Peperga',zip:''},{label:'Pernis Rotterdam',name:'Pernis Rotterdam',zip:''},{label:'Persingen',name:'Persingen',zip:''},{label:'Pesse (Westerveld)',name:'Pesse (Westerveld)',zip:''},{label:'Pesse (Hoogeveen)',name:'Pesse (Hoogeveen)',zip:''},{label:'Petten',name:'Petten',zip:''},{label:'Philippine',name:'Philippine',zip:''},{label:'Piaam',name:'Piaam',zip:''},{label:'Piershil',name:'Piershil',zip:''},{label:'Pieterburen',name:'Pieterburen',zip:''},{label:'Pietersbierum',name:'Pietersbierum',zip:''},{label:'Pieterzijl',name:'Pieterzijl',zip:''},{label:'Pijnacker',name:'Pijnacker',zip:''},{label:'Pingjum',name:'Pingjum',zip:''},{label:'Plasmolen',name:'Plasmolen',zip:''},{label:'Poederoijen',name:'Poederoijen',zip:''},{label:'Poeldijk',name:'Poeldijk',zip:''},{label:'De Pol',name:'De Pol',zip:''},{label:'Polsbroek',name:'Polsbroek',zip:''},{label:'Poortugaal',name:'Poortugaal',zip:''},{label:'Poortvliet',name:'Poortvliet',zip:''},{label:'Poppenwier',name:'Poppenwier',zip:''},{label:'Ten Post',name:'Ten Post',zip:''},{label:'Posterholt',name:'Posterholt',zip:''},{label:'Prinsenbeek',name:'Prinsenbeek',zip:''},{label:'Puiflijk',name:'Puiflijk',zip:''},{label:'De Punt',name:'De Punt',zip:''},{label:'Punthorst',name:'Punthorst',zip:''},{label:'Purmer (Edam-Volendam)',name:'Purmer (Edam-Volendam)',zip:''},{label:'Purmer (Waterland)',name:'Purmer (Waterland)',zip:''},{label:'Purmerend',name:'Purmerend',zip:''},{label:'Purmerland',name:'Purmerland',zip:''},{label:'Puth',name:'Puth',zip:''},{label:'Putte',name:'Putte',zip:''},{label:'Putten',name:'Putten',zip:''},{label:'Puttershoek',name:'Puttershoek',zip:''},{label:'Raalte',name:'Raalte',zip:''},{label:'Raamsdonk',name:'Raamsdonk',zip:''},{label:'Raamsdonksveer',name:'Raamsdonksveer',zip:''},{label:'Raard',name:'Raard',zip:''},{label:'Radewijk',name:'Radewijk',zip:''},{label:'Radio Kootwijk',name:'Radio Kootwijk',zip:''},{label:'Raerd',name:'Raerd',zip:''},{label:'Randwijk',name:'Randwijk',zip:''},{label:'Ransdaal',name:'Ransdaal',zip:''},{label:'Rasquert',name:'Rasquert',zip:''},{label:'Ravenstein',name:'Ravenstein',zip:''},{label:'Ravenswaaij',name:'Ravenswaaij',zip:''},{label:'Ravenswoud',name:'Ravenswoud',zip:''},{label:'Readtsjerk',name:'Readtsjerk',zip:''},{label:'Reahûs',name:'Reahûs',zip:''},{label:'Reduzum',name:'Reduzum',zip:''},{label:'Reek',name:'Reek',zip:''},{label:'Reeuwijk',name:'Reeuwijk',zip:''},{label:'Reijmerstok',name:'Reijmerstok',zip:''},{label:'Reitsum',name:'Reitsum',zip:''},{label:'Rekken',name:'Rekken',zip:''},{label:'Renesse',name:'Renesse',zip:''},{label:'Renkum',name:'Renkum',zip:''},{label:'Renswoude',name:'Renswoude',zip:''},{label:'Ressen',name:'Ressen',zip:''},{label:'Retranchement',name:'Retranchement',zip:''},{label:'Reusel',name:'Reusel',zip:''},{label:'Reutum',name:'Reutum',zip:''},{label:'Reuver',name:'Reuver',zip:''},{label:'Rha',name:'Rha',zip:''},{label:'Rheden',name:'Rheden',zip:''},{label:'Rhee',name:'Rhee',zip:''},{label:'Rheeze',name:'Rheeze',zip:''},{label:'Rheezerveen',name:'Rheezerveen',zip:''},{label:'Rhenen',name:'Rhenen',zip:''},{label:'Rhenoy',name:'Rhenoy',zip:''},{label:'Rhoon',name:'Rhoon',zip:''},{label:'Ridderkerk',name:'Ridderkerk',zip:''},{label:'Ried',name:'Ried',zip:''},{label:'Riel',name:'Riel',zip:''},{label:'Rien',name:'Rien',zip:''},{label:'Riethoven',name:'Riethoven',zip:''},{label:'Rietmolen',name:'Rietmolen',zip:''},{label:'Rijen',name:'Rijen',zip:''},{label:'Rijkevoort',name:'Rijkevoort',zip:''},{label:'Rijkevoort-De Walsert',name:'Rijkevoort-De Walsert',zip:''},{label:'Rijnsaterwoude',name:'Rijnsaterwoude',zip:''},{label:'Rijnsburg',name:'Rijnsburg',zip:''},{label:'De Rijp',name:'De Rijp',zip:''},{label:'Rijpwetering',name:'Rijpwetering',zip:''},{label:'Rijs',name:'Rijs',zip:''},{label:'Rijsbergen',name:'Rijsbergen',zip:''},{label:'Rijsenhout',name:'Rijsenhout',zip:''},{label:'Rijssen',name:'Rijssen',zip:''},{label:'Rijswijk (Rijswijk)',name:'Rijswijk (Rijswijk)',zip:''},{label:'Rijswijk (Buren)',name:'Rijswijk (Buren)',zip:''},{label:'Rijswijk (Woudrichem)',name:'Rijswijk (Woudrichem)',zip:''},{label:'Rilland',name:'Rilland',zip:''},{label:'Rinsumageast',name:'Rinsumageast',zip:''},{label:'De Rips',name:'De Rips',zip:''},{label:'Ritthem',name:'Ritthem',zip:''},{label:'Rockanje',name:'Rockanje',zip:''},{label:'Roden',name:'Roden',zip:''},{label:'Roderesch',name:'Roderesch',zip:''},{label:'Roderwolde',name:'Roderwolde',zip:''},{label:'Roelofarendsveen',name:'Roelofarendsveen',zip:''},{label:'Roermond',name:'Roermond',zip:''},{label:'Rogat',name:'Rogat',zip:''},{label:'Roggel',name:'Roggel',zip:''},{label:'Rohel',name:'Rohel',zip:''},{label:'Rolde',name:'Rolde',zip:''},{label:'Roodeschool',name:'Roodeschool',zip:''},{label:'Roosendaal',name:'Roosendaal',zip:''},{label:'Roosteren',name:'Roosteren',zip:''},{label:'Rosmalen',name:'Rosmalen',zip:''},{label:'Rossum (Dinkelland)',name:'Rossum (Dinkelland)',zip:''},{label:'Rossum (Maasdriel)',name:'Rossum (Maasdriel)',zip:''},{label:'Roswinkel',name:'Roswinkel',zip:''},{label:'Rotstergaast',name:'Rotstergaast',zip:''},{label:'Rotsterhaule',name:'Rotsterhaule',zip:''},{label:'Rotterdam',name:'Rotterdam',zip:''},{label:'Rotterdam-Albrandswaard',name:'Rotterdam-Albrandswaard',zip:''},{label:'Rottevalle',name:'Rottevalle',zip:''},{label:'Rottum (Eemsmond)',name:'Rottum (Eemsmond)',zip:''},{label:'Rottum (De Fryske Marren)',name:'Rottum (De Fryske Marren)',zip:''},{label:'Rouveen',name:'Rouveen',zip:''},{label:'Rozenburg (Rotterdam)',name:'Rozenburg (Rotterdam)',zip:''},{label:'Rozenburg (Haarlemmermeer)',name:'Rozenburg (Haarlemmermeer)',zip:''},{label:'Rozendaal',name:'Rozendaal',zip:''},{label:'Rucphen',name:'Rucphen',zip:''},{label:'Ruigahuizen',name:'Ruigahuizen',zip:''},{label:'Ruinen (Westerveld)',name:'Ruinen (Westerveld)',zip:''},{label:'Ruinen (De Wolden)',name:'Ruinen (De Wolden)',zip:''},{label:'Ruinerwold',name:'Ruinerwold',zip:''},{label:'Rumpt',name:'Rumpt',zip:''},{label:'Rutten',name:'Rutten',zip:''},{label:'Ruurlo',name:'Ruurlo',zip:''},{label:'Ryptsjerk',name:'Ryptsjerk',zip:''},{label:'Saaksum',name:'Saaksum',zip:''},{label:'Saasveld',name:'Saasveld',zip:''},{label:'Saaxumhuizen',name:'Saaxumhuizen',zip:''},{label:'Sambeek',name:'Sambeek',zip:''},{label:'Sandfirden',name:'Sandfirden',zip:''},{label:'Santpoort-Noord',name:'Santpoort-Noord',zip:''},{label:'Santpoort-Zuid',name:'Santpoort-Zuid',zip:''},{label:'Sappemeer',name:'Sappemeer',zip:''},{label:'Sas van Gent',name:'Sas van Gent',zip:''},{label:'Sassenheim',name:'Sassenheim',zip:''},{label:'Sauwerd',name:'Sauwerd',zip:''},{label:'Schagen',name:'Schagen',zip:''},{label:'Schagerbrug',name:'Schagerbrug',zip:''},{label:'Schaijk',name:'Schaijk',zip:''},{label:'Schalkhaar',name:'Schalkhaar',zip:''},{label:'Schalkwijk',name:'Schalkwijk',zip:''},{label:'Schalsum',name:'Schalsum',zip:''},{label:'Schardam',name:'Schardam',zip:''},{label:'Scharendijke',name:'Scharendijke',zip:''},{label:'Scharmer',name:'Scharmer',zip:''},{label:'Scharnegoutum',name:'Scharnegoutum',zip:''},{label:'Scharsterbrug',name:'Scharsterbrug',zip:''},{label:'Scharwoude',name:'Scharwoude',zip:''},{label:'Scheemda',name:'Scheemda',zip:''},{label:'Scheerwolde',name:'Scheerwolde',zip:''},{label:'Schellinkhout',name:'Schellinkhout',zip:''},{label:'Schelluinen',name:'Schelluinen',zip:''},{label:'Schermerhorn',name:'Schermerhorn',zip:''},{label:'Scherpenisse',name:'Scherpenisse',zip:''},{label:'Scherpenzeel (Weststellingwerf)',name:'Scherpenzeel (Weststellingwerf)',zip:''},{label:'Scherpenzeel (Scherpenzeel)',name:'Scherpenzeel (Scherpenzeel)',zip:''},{label:'Schettens',name:'Schettens',zip:''},{label:'Scheulder',name:'Scheulder',zip:''},{label:'Schiedam',name:'Schiedam',zip:''},{label:'Schiermonnikoog',name:'Schiermonnikoog',zip:''},{label:'Schijf',name:'Schijf',zip:''},{label:'Schijndel',name:'Schijndel',zip:''},{label:'Schildwolde',name:'Schildwolde',zip:''},{label:'Schimmert',name:'Schimmert',zip:''},{label:'Schin op Geul',name:'Schin op Geul',zip:''},{label:'Schinnen',name:'Schinnen',zip:''},{label:'Schinveld',name:'Schinveld',zip:''},{label:'Schipborg',name:'Schipborg',zip:''},{label:'Schiphol',name:'Schiphol',zip:''},{label:'Schiphol-Rijk',name:'Schiphol-Rijk',zip:''},{label:'De Schiphorst',name:'De Schiphorst',zip:''},{label:'Schipluiden',name:'Schipluiden',zip:''},{label:'Schokland',name:'Schokland',zip:''},{label:'Schoondijke',name:'Schoondijke',zip:''},{label:'Schoonebeek',name:'Schoonebeek',zip:''},{label:'Schoonhoven',name:'Schoonhoven',zip:''},{label:'Schoonloo',name:'Schoonloo',zip:''},{label:'Schoonoord',name:'Schoonoord',zip:''},{label:'Schoonrewoerd',name:'Schoonrewoerd',zip:''},{label:'Schoorl',name:'Schoorl',zip:''},{label:'Schore',name:'Schore',zip:''},{label:'Schouwerzijl',name:'Schouwerzijl',zip:''},{label:'Schraard',name:'Schraard',zip:''},{label:'Schuinesloot',name:'Schuinesloot',zip:''},{label:'Sebaldeburen',name:'Sebaldeburen',zip:''},{label:'Sellingen',name:'Sellingen',zip:''},{label:'Serooskerke (Schouwen-Duiveland)',name:'Serooskerke (Schouwen-Duiveland)',zip:''},{label:'Serooskerke (Veere)',name:'Serooskerke (Veere)',zip:''},{label:'Sevenum',name:'Sevenum',zip:''},{label:'Sexbierum',name:'Sexbierum',zip:''},{label:'Sibculo (Twenterand)',name:'Sibculo (Twenterand)',zip:''},{label:'Sibculo (Hardenberg)',name:'Sibculo (Hardenberg)',zip:''},{label:'Sibrandabuorren',name:'Sibrandabuorren',zip:''},{label:'Sibrandahûs',name:'Sibrandahûs',zip:''},{label:'Siddeburen',name:'Siddeburen',zip:''},{label:'Siebengewald',name:'Siebengewald',zip:''},{label:'Siegerswoude',name:'Siegerswoude',zip:''},{label:'Sijbekarspel',name:'Sijbekarspel',zip:''},{label:'Silvolde',name:'Silvolde',zip:''},{label:'Simonshaven',name:'Simonshaven',zip:''},{label:'Simpelveld',name:'Simpelveld',zip:''},{label:'Sinderen',name:'Sinderen',zip:''},{label:'Sint Agatha',name:'Sint Agatha',zip:''},{label:'Sint Annen',name:'Sint Annen',zip:''},{label:'Sint Anthonis',name:'Sint Anthonis',zip:''},{label:'Sint Geertruid',name:'Sint Geertruid',zip:''},{label:'Sint Hubert',name:'Sint Hubert',zip:''},{label:'Sint Jansklooster',name:'Sint Jansklooster',zip:''},{label:'Sint Jansteen',name:'Sint Jansteen',zip:''},{label:'Sint Joost',name:'Sint Joost',zip:''},{label:'Sint Kruis',name:'Sint Kruis',zip:''},{label:'Sint Maarten',name:'Sint Maarten',zip:''},{label:'Sint Maartensbrug',name:'Sint Maartensbrug',zip:''},{label:'Sint Maartensvlotbrug',name:'Sint Maartensvlotbrug',zip:''},{label:'Sint Nicolaasga',name:'Sint Nicolaasga',zip:''},{label:'Sint Odiliënberg',name:'Sint Odiliënberg',zip:''},{label:'Sint Pancras',name:'Sint Pancras',zip:''},{label:'Sint Philipsland',name:'Sint Philipsland',zip:''},{label:'Sint Willebrord',name:'Sint Willebrord',zip:''},{label:'Sint-Annaland',name:'Sint-Annaland',zip:''},{label:'Sint-Annaparochie',name:'Sint-Annaparochie',zip:''},{label:'Sint-Jacobiparochie',name:'Sint-Jacobiparochie',zip:''},{label:'Sintjohannesga',name:'Sintjohannesga',zip:''},{label:'Sint-Maartensdijk',name:'Sint-Maartensdijk',zip:''},{label:'Sint-Michielsgestel',name:'Sint-Michielsgestel',zip:''},{label:'Sint-Oedenrode',name:'Sint-Oedenrode',zip:''},{label:'Sirjansland',name:'Sirjansland',zip:''},{label:'Sittard',name:'Sittard',zip:''},{label:'Skingen',name:'Skingen',zip:''},{label:'Slagharen',name:'Slagharen',zip:''},{label:'Slappeterp',name:'Slappeterp',zip:''},{label:'Sleen',name:'Sleen',zip:''},{label:'Sleeuwijk',name:'Sleeuwijk',zip:''},{label:'Slenaken',name:'Slenaken',zip:''},{label:'Sliedrecht',name:'Sliedrecht',zip:''},{label:'Slijkenburg',name:'Slijkenburg',zip:''},{label:'Slijk-Ewijk',name:'Slijk-Ewijk',zip:''},{label:'Slochteren',name:'Slochteren',zip:''},{label:'Slootdorp',name:'Slootdorp',zip:''},{label:'Sloten',name:'Sloten',zip:''},{label:'Sluis',name:'Sluis',zip:''},{label:'Sluiskil',name:'Sluiskil',zip:''},{label:'Smakt',name:'Smakt',zip:''},{label:'Smalle Ee',name:'Smalle Ee',zip:''},{label:'Smallebrugge',name:'Smallebrugge',zip:''},{label:'Smilde',name:'Smilde',zip:''},{label:'Snakkerburen',name:'Snakkerburen',zip:''},{label:'Sneek',name:'Sneek',zip:''},{label:'Snelrewaard',name:'Snelrewaard',zip:''},{label:'Snikzwaag',name:'Snikzwaag',zip:''},{label:'Soerendonk',name:'Soerendonk',zip:''},{label:'Soest',name:'Soest',zip:''},{label:'Soesterberg',name:'Soesterberg',zip:''},{label:'Someren',name:'Someren',zip:''},{label:'Sommelsdijk',name:'Sommelsdijk',zip:''},{label:'Son en Breugel',name:'Son en Breugel',zip:''},{label:'Sondel',name:'Sondel',zip:''},{label:'Sonnega',name:'Sonnega',zip:''},{label:'Spaarndam (Haarlemmerliede en Spaarnwoude)',name:'Spaarndam (Haarlemmerliede en Spaarnwoude)',zip:''},{label:'Spaarndam (Haarlem)',name:'Spaarndam (Haarlem)',zip:''},{label:'Spanbroek',name:'Spanbroek',zip:''},{label:'Spanga',name:'Spanga',zip:''},{label:'Spankeren',name:'Spankeren',zip:''},{label:'Spannum',name:'Spannum',zip:''},{label:'Spaubeek',name:'Spaubeek',zip:''},{label:'Spier (Midden-Drenthe)',name:'Spier (Midden-Drenthe)',zip:''},{label:'Spier (Westerveld)',name:'Spier (Westerveld)',zip:''},{label:'Spierdijk',name:'Spierdijk',zip:''},{label:'Spijk (Zevenaar)',name:'Spijk (Zevenaar)',zip:''},{label:'Spijk (Delfzijl)',name:'Spijk (Delfzijl)',zip:''},{label:'Spijk (Lingewaal)',name:'Spijk (Lingewaal)',zip:''},{label:'Spijkenisse',name:'Spijkenisse',zip:''},{label:'Spijkerboor (Aa en Hunze)',name:'Spijkerboor (Aa en Hunze)',zip:''},{label:'Spijkerboor (Wormerland)',name:'Spijkerboor (Wormerland)',zip:''},{label:'Sprang-Capelle',name:'Sprang-Capelle',zip:''},{label:'Sprundel',name:'Sprundel',zip:''},{label:'Spui',name:'Spui',zip:''},{label:'Stad aan \'t Haringvliet',name:'Stad aan \'t Haringvliet',zip:''},{label:'Stadskanaal',name:'Stadskanaal',zip:''},{label:'Stampersgat',name:'Stampersgat',zip:''},{label:'Standdaarbuiten',name:'Standdaarbuiten',zip:''},{label:'Staphorst',name:'Staphorst',zip:''},{label:'Starnmeer',name:'Starnmeer',zip:''},{label:'Startenhuizen (Loppersum)',name:'Startenhuizen (Loppersum)',zip:''},{label:'Startenhuizen (Eemsmond)',name:'Startenhuizen (Eemsmond)',zip:''},{label:'Stavenisse',name:'Stavenisse',zip:''},{label:'Stavoren',name:'Stavoren',zip:''},{label:'Stedum',name:'Stedum',zip:''},{label:'De Steeg',name:'De Steeg',zip:''},{label:'Steenbergen (Steenbergen)',name:'Steenbergen (Steenbergen)',zip:''},{label:'Steenbergen (Noordenveld)',name:'Steenbergen (Noordenveld)',zip:''},{label:'Steendam',name:'Steendam',zip:''},{label:'Steenderen',name:'Steenderen',zip:''},{label:'Steenenkamer',name:'Steenenkamer',zip:''},{label:'Steensel',name:'Steensel',zip:''},{label:'Steenwijk',name:'Steenwijk',zip:''},{label:'Steenwijkerwold',name:'Steenwijkerwold',zip:''},{label:'Stegeren',name:'Stegeren',zip:''},{label:'Steggerda',name:'Steggerda',zip:''},{label:'Stein',name:'Stein',zip:''},{label:'Stellendam',name:'Stellendam',zip:''},{label:'Sterksel',name:'Sterksel',zip:''},{label:'Stevensbeek',name:'Stevensbeek',zip:''},{label:'Stevensweert',name:'Stevensweert',zip:''},{label:'Steyl',name:'Steyl',zip:''},{label:'Stieltjeskanaal',name:'Stieltjeskanaal',zip:''},{label:'Stiens',name:'Stiens',zip:''},{label:'Stitswerd',name:'Stitswerd',zip:''},{label:'Stokkum',name:'Stokkum',zip:''},{label:'Stolwijk',name:'Stolwijk',zip:''},{label:'Stompetoren',name:'Stompetoren',zip:''},{label:'Stoutenburg',name:'Stoutenburg',zip:''},{label:'Stoutenburg Noord',name:'Stoutenburg Noord',zip:''},{label:'Stramproy',name:'Stramproy',zip:''},{label:'Streefkerk',name:'Streefkerk',zip:''},{label:'Striep',name:'Striep',zip:''},{label:'Strijbeek',name:'Strijbeek',zip:''},{label:'Strijen',name:'Strijen',zip:''},{label:'Strijensas',name:'Strijensas',zip:''},{label:'Stroe',name:'Stroe',zip:''},{label:'Stroobos',name:'Stroobos',zip:''},{label:'Stuifzand (Midden-Drenthe)',name:'Stuifzand (Midden-Drenthe)',zip:''},{label:'Stuifzand (Hoogeveen)',name:'Stuifzand (Hoogeveen)',zip:''},{label:'Sumar',name:'Sumar',zip:''},{label:'Surhuisterveen',name:'Surhuisterveen',zip:''},{label:'Surhuizum',name:'Surhuizum',zip:''},{label:'Susteren',name:'Susteren',zip:''},{label:'Suwâld',name:'Suwâld',zip:''},{label:'Swalmen',name:'Swalmen',zip:''},{label:'Sweikhuizen',name:'Sweikhuizen',zip:''},{label:'Swichum',name:'Swichum',zip:''},{label:'Swifterbant',name:'Swifterbant',zip:''},{label:'Swolgen',name:'Swolgen',zip:''},{label:'Taarlo',name:'Taarlo',zip:''},{label:'Teeffelen',name:'Teeffelen',zip:''},{label:'Teerns',name:'Teerns',zip:''},{label:'Tegelen',name:'Tegelen',zip:''},{label:'Terband',name:'Terband',zip:''},{label:'Terborg',name:'Terborg',zip:''},{label:'Terheijden',name:'Terheijden',zip:''},{label:'Terherne',name:'Terherne',zip:''},{label:'Terhole',name:'Terhole',zip:''},{label:'Terkaple',name:'Terkaple',zip:''},{label:'Termunten',name:'Termunten',zip:''},{label:'Termunterzijl',name:'Termunterzijl',zip:''},{label:'Ternaard',name:'Ternaard',zip:''},{label:'Terneuzen',name:'Terneuzen',zip:''},{label:'Teroele',name:'Teroele',zip:''},{label:'Terschuur',name:'Terschuur',zip:''},{label:'Tersoal',name:'Tersoal',zip:''},{label:'Terwispel',name:'Terwispel',zip:''},{label:'Terwolde',name:'Terwolde',zip:''},{label:'Teteringen',name:'Teteringen',zip:''},{label:'Teuge',name:'Teuge',zip:''},{label:'Thesinge',name:'Thesinge',zip:''},{label:'Tholen',name:'Tholen',zip:''},{label:'Thorn',name:'Thorn',zip:''},{label:'Tiel',name:'Tiel',zip:''},{label:'Tiendeveen (Hoogeveen)',name:'Tiendeveen (Hoogeveen)',zip:''},{label:'Tiendeveen (Midden-Drenthe)',name:'Tiendeveen (Midden-Drenthe)',zip:''},{label:'Tienhoven (Stichtse Vecht)',name:'Tienhoven (Stichtse Vecht)',zip:''},{label:'Tienhoven (Zederik)',name:'Tienhoven (Zederik)',zip:''},{label:'Tienray',name:'Tienray',zip:''},{label:'Tijnje',name:'Tijnje',zip:''},{label:'De Tike',name:'De Tike',zip:''},{label:'Tilburg',name:'Tilburg',zip:''},{label:'Tilligte',name:'Tilligte',zip:''},{label:'Tinallinge',name:'Tinallinge',zip:''},{label:'Tinte',name:'Tinte',zip:''},{label:'Tirns',name:'Tirns',zip:''},{label:'Tjalhuizum',name:'Tjalhuizum',zip:''},{label:'Tjalleberd',name:'Tjalleberd',zip:''},{label:'Tjerkgaast',name:'Tjerkgaast',zip:''},{label:'Tjerkwerd',name:'Tjerkwerd',zip:''},{label:'Tjuchem',name:'Tjuchem',zip:''},{label:'Tolbert',name:'Tolbert',zip:''},{label:'Toldijk',name:'Toldijk',zip:''},{label:'Tolkamer',name:'Tolkamer',zip:''},{label:'Tollebeek',name:'Tollebeek',zip:''},{label:'Tonden',name:'Tonden',zip:''},{label:'Toornwerd',name:'Toornwerd',zip:''},{label:'Tricht',name:'Tricht',zip:''},{label:'Triemen',name:'Triemen',zip:''},{label:'Tripscompagnie',name:'Tripscompagnie',zip:''},{label:'Tubbergen',name:'Tubbergen',zip:''},{label:'Tuil',name:'Tuil',zip:''},{label:'Tuitjenhorn',name:'Tuitjenhorn',zip:''},{label:'Tuk',name:'Tuk',zip:''},{label:'Tull en \'t Waal',name:'Tull en \'t Waal',zip:''},{label:'Twello',name:'Twello',zip:''},{label:'Twijzel',name:'Twijzel',zip:''},{label:'Twijzelerheide',name:'Twijzelerheide',zip:''},{label:'Twisk',name:'Twisk',zip:''},{label:'Tynaarlo',name:'Tynaarlo',zip:''},{label:'Tytsjerk',name:'Tytsjerk',zip:''},{label:'Tzum',name:'Tzum',zip:''},{label:'Tzummarum',name:'Tzummarum',zip:''},{label:'Ubbena',name:'Ubbena',zip:''},{label:'Ubbergen',name:'Ubbergen',zip:''},{label:'Uddel',name:'Uddel',zip:''},{label:'Uden',name:'Uden',zip:''},{label:'Udenhout',name:'Udenhout',zip:''},{label:'Uffelte',name:'Uffelte',zip:''},{label:'Ugchelen',name:'Ugchelen',zip:''},{label:'Uitdam',name:'Uitdam',zip:''},{label:'Uitgeest',name:'Uitgeest',zip:''},{label:'Uithoorn',name:'Uithoorn',zip:''},{label:'Uithuizen',name:'Uithuizen',zip:''},{label:'Uithuizermeeden',name:'Uithuizermeeden',zip:''},{label:'Uitwellingerga',name:'Uitwellingerga',zip:''},{label:'Uitwijk',name:'Uitwijk',zip:''},{label:'Ulestraten',name:'Ulestraten',zip:''},{label:'Ulft',name:'Ulft',zip:''},{label:'Ulicoten',name:'Ulicoten',zip:''},{label:'Ulrum',name:'Ulrum',zip:''},{label:'Ulvenhout (Breda)',name:'Ulvenhout (Breda)',zip:''},{label:'Ulvenhout (Alphen-Chaam)',name:'Ulvenhout (Alphen-Chaam)',zip:''},{label:'Ureterp',name:'Ureterp',zip:''},{label:'Urk',name:'Urk',zip:''},{label:'Urmond',name:'Urmond',zip:''},{label:'Ursem (Koggenland)',name:'Ursem (Koggenland)',zip:''},{label:'Ursem (Alkmaar)',name:'Ursem (Alkmaar)',zip:''},{label:'Usquert',name:'Usquert',zip:''},{label:'Utrecht',name:'Utrecht',zip:''},{label:'Vaals',name:'Vaals',zip:''},{label:'Vaassen',name:'Vaassen',zip:''},{label:'Valburg',name:'Valburg',zip:''},{label:'Valkenburg (Valkenburg aan de Geul)',name:'Valkenburg (Valkenburg aan de Geul)',zip:''},{label:'Valkenburg (Katwijk)',name:'Valkenburg (Katwijk)',zip:''},{label:'Valkenswaard',name:'Valkenswaard',zip:''},{label:'Valthe',name:'Valthe',zip:''},{label:'Valthermond',name:'Valthermond',zip:''},{label:'2e Valthermond',name:'2e Valthermond',zip:''},{label:'Varik',name:'Varik',zip:''},{label:'Varsselder',name:'Varsselder',zip:''},{label:'Varsseveld',name:'Varsseveld',zip:''},{label:'Vasse',name:'Vasse',zip:''},{label:'Veelerveen',name:'Veelerveen',zip:''},{label:'Veen',name:'Veen',zip:''},{label:'Veendam',name:'Veendam',zip:''},{label:'Veenendaal',name:'Veenendaal',zip:''},{label:'De Veenhoop',name:'De Veenhoop',zip:''},{label:'Veenhuizen',name:'Veenhuizen',zip:''},{label:'Veeningen',name:'Veeningen',zip:''},{label:'Veenklooster',name:'Veenklooster',zip:''},{label:'Veenoord',name:'Veenoord',zip:''},{label:'Veere',name:'Veere',zip:''},{label:'Veessen',name:'Veessen',zip:''},{label:'Vegelinsoord',name:'Vegelinsoord',zip:''},{label:'Veghel',name:'Veghel',zip:''},{label:'\'t Veld',name:'\'t Veld',zip:''},{label:'Velddriel',name:'Velddriel',zip:''},{label:'Den Velde',name:'Den Velde',zip:''},{label:'Velden',name:'Velden',zip:''},{label:'Veldhoven',name:'Veldhoven',zip:''},{label:'Velp (Rheden)',name:'Velp (Rheden)',zip:''},{label:'Velp (Grave)',name:'Velp (Grave)',zip:''},{label:'Velsen-Noord',name:'Velsen-Noord',zip:''},{label:'Velsen-Zuid',name:'Velsen-Zuid',zip:''},{label:'Velserbroek',name:'Velserbroek',zip:''},{label:'Venebrugge',name:'Venebrugge',zip:''},{label:'Venhorst',name:'Venhorst',zip:''},{label:'Venhuizen',name:'Venhuizen',zip:''},{label:'Venlo',name:'Venlo',zip:''},{label:'Venray',name:'Venray',zip:''},{label:'Ven-Zelderheide',name:'Ven-Zelderheide',zip:''},{label:'Vessem',name:'Vessem',zip:''},{label:'Vethuizen',name:'Vethuizen',zip:''},{label:'Veulen',name:'Veulen',zip:''},{label:'Vianen (Vianen)',name:'Vianen (Vianen)',zip:''},{label:'Vianen (Cuijk)',name:'Vianen (Cuijk)',zip:''},{label:'Vierakker',name:'Vierakker',zip:''},{label:'Vierhouten',name:'Vierhouten',zip:''},{label:'Vierhuizen',name:'Vierhuizen',zip:''},{label:'Vierlingsbeek',name:'Vierlingsbeek',zip:''},{label:'Vierpolders',name:'Vierpolders',zip:''},{label:'Vijfhuizen',name:'Vijfhuizen',zip:''},{label:'Vijlen',name:'Vijlen',zip:''},{label:'Vilsteren',name:'Vilsteren',zip:''},{label:'Vinkega',name:'Vinkega',zip:''},{label:'Vinkel (\'s-Hertogenbosch)',name:'Vinkel (\'s-Hertogenbosch)',zip:''},{label:'Vinkel (Bernheze)',name:'Vinkel (Bernheze)',zip:''},{label:'Vinkenbuurt',name:'Vinkenbuurt',zip:''},{label:'Vinkeveen',name:'Vinkeveen',zip:''},{label:'Visvliet',name:'Visvliet',zip:''},{label:'Vlaardingen',name:'Vlaardingen',zip:''},{label:'Vlagtwedde',name:'Vlagtwedde',zip:''},{label:'Vledder',name:'Vledder',zip:''},{label:'Vledderveen (Stadskanaal)',name:'Vledderveen (Stadskanaal)',zip:''},{label:'Vledderveen (Westerveld)',name:'Vledderveen (Westerveld)',zip:''},{label:'Vleuten',name:'Vleuten',zip:''},{label:'Vlieland',name:'Vlieland',zip:''},{label:'Vlierden',name:'Vlierden',zip:''},{label:'Vlijmen',name:'Vlijmen',zip:''},{label:'Vlissingen',name:'Vlissingen',zip:''},{label:'Vlist',name:'Vlist',zip:''},{label:'Vlodrop',name:'Vlodrop',zip:''},{label:'Voerendaal',name:'Voerendaal',zip:''},{label:'Vogelenzang',name:'Vogelenzang',zip:''},{label:'Vogelwaarde',name:'Vogelwaarde',zip:''},{label:'Volendam',name:'Volendam',zip:''},{label:'Volkel',name:'Volkel',zip:''},{label:'Vollenhove',name:'Vollenhove',zip:''},{label:'Vondelingenplaat Rotterdam',name:'Vondelingenplaat Rotterdam',zip:''},{label:'Voorburg',name:'Voorburg',zip:''},{label:'Voorhout',name:'Voorhout',zip:''},{label:'Voorschoten',name:'Voorschoten',zip:''},{label:'Voorst (Oude IJsselstreek)',name:'Voorst (Oude IJsselstreek)',zip:''},{label:'Voorst (Voorst)',name:'Voorst (Voorst)',zip:''},{label:'Voorthuizen',name:'Voorthuizen',zip:''},{label:'Vorchten',name:'Vorchten',zip:''},{label:'Vorden',name:'Vorden',zip:''},{label:'Vorstenbosch',name:'Vorstenbosch',zip:''},{label:'Vortum-Mullem',name:'Vortum-Mullem',zip:''},{label:'Vragender',name:'Vragender',zip:''},{label:'Vredenheim',name:'Vredenheim',zip:''},{label:'Vredepeel',name:'Vredepeel',zip:''},{label:'Vreeland',name:'Vreeland',zip:''},{label:'Vries',name:'Vries',zip:''},{label:'Vriescheloo',name:'Vriescheloo',zip:''},{label:'Vriezenveen',name:'Vriezenveen',zip:''},{label:'Vroomshoop',name:'Vroomshoop',zip:''},{label:'Vrouwenakker',name:'Vrouwenakker',zip:''},{label:'Vrouwenparochie',name:'Vrouwenparochie',zip:''},{label:'Vrouwenpolder',name:'Vrouwenpolder',zip:''},{label:'Vught',name:'Vught',zip:''},{label:'Vuren',name:'Vuren',zip:''},{label:'Waaksens',name:'Waaksens',zip:''},{label:'Waal',name:'Waal',zip:''},{label:'De Waal',name:'De Waal',zip:''},{label:'Waalre',name:'Waalre',zip:''},{label:'Waalwijk',name:'Waalwijk',zip:''},{label:'\'t Waar',name:'\'t Waar',zip:''},{label:'Waarde',name:'Waarde',zip:''},{label:'Waardenburg',name:'Waardenburg',zip:''},{label:'Waarder',name:'Waarder',zip:''},{label:'Waardhuizen',name:'Waardhuizen',zip:''},{label:'Waarland',name:'Waarland',zip:''},{label:'Waaxens',name:'Waaxens',zip:''},{label:'Wachtum',name:'Wachtum',zip:''},{label:'Waddinxveen',name:'Waddinxveen',zip:''},{label:'Wadenoijen',name:'Wadenoijen',zip:''},{label:'Wagenberg',name:'Wagenberg',zip:''},{label:'Wagenborgen',name:'Wagenborgen',zip:''},{label:'Wageningen',name:'Wageningen',zip:''},{label:'Walem',name:'Walem',zip:''},{label:'Walsoorden',name:'Walsoorden',zip:''},{label:'Wâlterswâld',name:'Wâlterswâld',zip:''},{label:'Wamel',name:'Wamel',zip:''},{label:'Wanneperveen',name:'Wanneperveen',zip:''},{label:'Wanroij',name:'Wanroij',zip:''},{label:'Wanssum',name:'Wanssum',zip:''},{label:'Wânswert',name:'Wânswert',zip:''},{label:'Wapenveld',name:'Wapenveld',zip:''},{label:'Wapse',name:'Wapse',zip:''},{label:'Wapserveen',name:'Wapserveen',zip:''},{label:'Warder',name:'Warder',zip:''},{label:'Warffum',name:'Warffum',zip:''},{label:'Warfhuizen',name:'Warfhuizen',zip:''},{label:'Warfstermolen',name:'Warfstermolen',zip:''},{label:'Warmenhuizen',name:'Warmenhuizen',zip:''},{label:'Warmond',name:'Warmond',zip:''},{label:'Warns',name:'Warns',zip:''},{label:'Warnsveld',name:'Warnsveld',zip:''},{label:'Warstiens',name:'Warstiens',zip:''},{label:'Warten',name:'Warten',zip:''},{label:'Waskemeer',name:'Waskemeer',zip:''},{label:'Waspik',name:'Waspik',zip:''},{label:'Wassenaar',name:'Wassenaar',zip:''},{label:'Wateren',name:'Wateren',zip:''},{label:'Watergang',name:'Watergang',zip:''},{label:'Waterhuizen',name:'Waterhuizen',zip:''},{label:'Wateringen',name:'Wateringen',zip:''},{label:'Waterlandkerkje',name:'Waterlandkerkje',zip:''},{label:'Waverveen',name:'Waverveen',zip:''},{label:'Wedde',name:'Wedde',zip:''},{label:'De Weere',name:'De Weere',zip:''},{label:'Weerselo',name:'Weerselo',zip:''},{label:'Weert',name:'Weert',zip:''},{label:'Weesp',name:'Weesp',zip:''},{label:'Wehe-den Hoorn',name:'Wehe-den Hoorn',zip:''},{label:'Wehl',name:'Wehl',zip:''},{label:'Weidum',name:'Weidum',zip:''},{label:'Weiteveen',name:'Weiteveen',zip:''},{label:'Wekerom',name:'Wekerom',zip:''},{label:'Well (Maasdriel)',name:'Well (Maasdriel)',zip:''},{label:'Well (Bergen - Limburg)',name:'Well (Bergen - Limburg)',zip:''},{label:'Wellerlooi',name:'Wellerlooi',zip:''},{label:'Welsum',name:'Welsum',zip:''},{label:'Wemeldinge',name:'Wemeldinge',zip:''},{label:'Wenum Wiesel',name:'Wenum Wiesel',zip:''},{label:'Wergea',name:'Wergea',zip:''},{label:'Werkendam',name:'Werkendam',zip:''},{label:'Werkhoven',name:'Werkhoven',zip:''},{label:'Wernhout',name:'Wernhout',zip:''},{label:'Wervershoof',name:'Wervershoof',zip:''},{label:'Wesepe',name:'Wesepe',zip:''},{label:'Wessem',name:'Wessem',zip:''},{label:'Westbeemster',name:'Westbeemster',zip:''},{label:'Westbroek',name:'Westbroek',zip:''},{label:'Westdorp',name:'Westdorp',zip:''},{label:'Westdorpe',name:'Westdorpe',zip:''},{label:'Westendorp',name:'Westendorp',zip:''},{label:'Westerbeek',name:'Westerbeek',zip:''},{label:'Westerbork',name:'Westerbork',zip:''},{label:'Westerbroek',name:'Westerbroek',zip:''},{label:'De Westereen',name:'De Westereen',zip:''},{label:'Westeremden',name:'Westeremden',zip:''},{label:'Westergeest',name:'Westergeest',zip:''},{label:'Westerhaar-Vriezenveensewijk',name:'Westerhaar-Vriezenveensewijk',zip:''},{label:'Westerhoven',name:'Westerhoven',zip:''},{label:'Westerland',name:'Westerland',zip:''},{label:'Westerlee',name:'Westerlee',zip:''},{label:'Westernieland',name:'Westernieland',zip:''},{label:'Westervelde',name:'Westervelde',zip:''},{label:'Westervoort',name:'Westervoort',zip:''},{label:'Westerwijtwerd',name:'Westerwijtwerd',zip:''},{label:'West-Graftdijk',name:'West-Graftdijk',zip:''},{label:'Westhem',name:'Westhem',zip:''},{label:'Westhoek',name:'Westhoek',zip:''},{label:'Westkapelle',name:'Westkapelle',zip:''},{label:'Westknollendam',name:'Westknollendam',zip:''},{label:'Westmaas',name:'Westmaas',zip:''},{label:'West-Terschelling',name:'West-Terschelling',zip:''},{label:'Westwoud',name:'Westwoud',zip:''},{label:'Westzaan',name:'Westzaan',zip:''},{label:'Wetering',name:'Wetering',zip:''},{label:'Weteringbrug',name:'Weteringbrug',zip:''},{label:'Wetsens',name:'Wetsens',zip:''},{label:'Wetsinge',name:'Wetsinge',zip:''},{label:'Weurt',name:'Weurt',zip:''},{label:'Wezep',name:'Wezep',zip:''},{label:'Wezup',name:'Wezup',zip:''},{label:'Wezuperbrug',name:'Wezuperbrug',zip:''},{label:'Wichmond',name:'Wichmond',zip:''},{label:'Wier',name:'Wier',zip:''},{label:'Wierden',name:'Wierden',zip:''},{label:'Wieringerwaard',name:'Wieringerwaard',zip:''},{label:'Wieringerwerf',name:'Wieringerwerf',zip:''},{label:'Wierum',name:'Wierum',zip:''},{label:'Wijchen',name:'Wijchen',zip:''},{label:'Wijckel',name:'Wijckel',zip:''},{label:'Wijdenes',name:'Wijdenes',zip:''},{label:'Wijdewormer',name:'Wijdewormer',zip:''},{label:'Wijhe',name:'Wijhe',zip:''},{label:'de Wijk',name:'de Wijk',zip:''},{label:'Wijk aan Zee',name:'Wijk aan Zee',zip:''},{label:'Wijk bij Duurstede',name:'Wijk bij Duurstede',zip:''},{label:'Wijk en Aalburg',name:'Wijk en Aalburg',zip:''},{label:'Wijlre',name:'Wijlre',zip:''},{label:'Wijnaldum',name:'Wijnaldum',zip:''},{label:'Wijnandsrade',name:'Wijnandsrade',zip:''},{label:'Wijnbergen',name:'Wijnbergen',zip:''},{label:'Wijngaarden',name:'Wijngaarden',zip:''},{label:'Wijnjewoude',name:'Wijnjewoude',zip:''},{label:'Wijster',name:'Wijster',zip:''},{label:'Wilbertoord',name:'Wilbertoord',zip:''},{label:'Wildervank',name:'Wildervank',zip:''},{label:'De Wilgen',name:'De Wilgen',zip:''},{label:'Wilhelminadorp',name:'Wilhelminadorp',zip:''},{label:'Wilhelminaoord',name:'Wilhelminaoord',zip:''},{label:'Willemsoord',name:'Willemsoord',zip:''},{label:'Willemstad',name:'Willemstad',zip:''},{label:'Wilnis',name:'Wilnis',zip:''},{label:'Wilp',name:'Wilp',zip:''},{label:'De Wilp',name:'De Wilp',zip:''},{label:'Wilsum',name:'Wilsum',zip:''},{label:'Winde',name:'Winde',zip:''},{label:'Windraak',name:'Windraak',zip:''},{label:'Winkel',name:'Winkel',zip:''},{label:'Winneweer',name:'Winneweer',zip:''},{label:'Winschoten',name:'Winschoten',zip:''},{label:'Winssen',name:'Winssen',zip:''},{label:'Winsum (Waadhoeke)',name:'Winsum (Waadhoeke)',zip:''},{label:'Winsum (Winsum)',name:'Winsum (Winsum)',zip:''},{label:'Wintelre',name:'Wintelre',zip:''},{label:'Winterswijk',name:'Winterswijk',zip:''},{label:'Winterswijk Brinkheurne',name:'Winterswijk Brinkheurne',zip:''},{label:'Winterswijk Corle',name:'Winterswijk Corle',zip:''},{label:'Winterswijk Henxel',name:'Winterswijk Henxel',zip:''},{label:'Winterswijk Huppel',name:'Winterswijk Huppel',zip:''},{label:'Winterswijk Kotten',name:'Winterswijk Kotten',zip:''},{label:'Winterswijk Meddo',name:'Winterswijk Meddo',zip:''},{label:'Winterswijk Miste',name:'Winterswijk Miste',zip:''},{label:'Winterswijk Ratum',name:'Winterswijk Ratum',zip:''},{label:'Winterswijk Woold',name:'Winterswijk Woold',zip:''},{label:'Wirdum (Loppersum)',name:'Wirdum (Loppersum)',zip:''},{label:'Wirdum (Leeuwarden)',name:'Wirdum (Leeuwarden)',zip:''},{label:'Wissenkerke',name:'Wissenkerke',zip:''},{label:'Witharen',name:'Witharen',zip:''},{label:'Witmarsum',name:'Witmarsum',zip:''},{label:'Witte Paarden',name:'Witte Paarden',zip:''},{label:'Wittelte',name:'Wittelte',zip:''},{label:'Wittem',name:'Wittem',zip:''},{label:'Witteveen',name:'Witteveen',zip:''},{label:'Wiuwert',name:'Wiuwert',zip:''},{label:'Wjelsryp',name:'Wjelsryp',zip:''},{label:'Woensdrecht',name:'Woensdrecht',zip:''},{label:'Woerden',name:'Woerden',zip:''},{label:'Woerdense Verlaat',name:'Woerdense Verlaat',zip:''},{label:'Wognum',name:'Wognum',zip:''},{label:'Woldendorp',name:'Woldendorp',zip:''},{label:'Wolfheze',name:'Wolfheze',zip:''},{label:'Wolphaartsdijk',name:'Wolphaartsdijk',zip:''},{label:'Wolsum',name:'Wolsum',zip:''},{label:'Woltersum',name:'Woltersum',zip:''},{label:'Wolvega',name:'Wolvega',zip:''},{label:'Wommels',name:'Wommels',zip:''},{label:'Wons',name:'Wons',zip:''},{label:'Workum',name:'Workum',zip:''},{label:'Wormer',name:'Wormer',zip:''},{label:'Wormerveer',name:'Wormerveer',zip:''},{label:'Woubrugge',name:'Woubrugge',zip:''},{label:'Woudbloem',name:'Woudbloem',zip:''},{label:'de Woude',name:'de Woude',zip:''},{label:'Woudenberg',name:'Woudenberg',zip:''},{label:'Woudrichem',name:'Woudrichem',zip:''},{label:'Woudsend',name:'Woudsend',zip:''},{label:'Wouw',name:'Wouw',zip:''},{label:'Wouwse Plantage',name:'Wouwse Plantage',zip:''},{label:'Wyns',name:'Wyns',zip:''},{label:'Wytgaard',name:'Wytgaard',zip:''},{label:'Yde',name:'Yde',zip:''},{label:'Yerseke',name:'Yerseke',zip:''},{label:'Ypecolsga',name:'Ypecolsga',zip:''},{label:'Ysbrechtum',name:'Ysbrechtum',zip:''},{label:'Ysselsteyn',name:'Ysselsteyn',zip:''},{label:'Zaamslag',name:'Zaamslag',zip:''},{label:'Zaandam',name:'Zaandam',zip:''},{label:'Zaandijk',name:'Zaandijk',zip:''},{label:'Zalk',name:'Zalk',zip:''},{label:'Zaltbommel',name:'Zaltbommel',zip:''},{label:'\'t Zand',name:'\'t Zand',zip:''},{label:'Zandberg',name:'Zandberg',zip:''},{label:'Zandeweer',name:'Zandeweer',zip:''},{label:'Zandhuizen',name:'Zandhuizen',zip:''},{label:'Zandpol',name:'Zandpol',zip:''},{label:'\'t Zandt',name:'\'t Zandt',zip:''},{label:'Zandvoort',name:'Zandvoort',zip:''},{label:'Zeddam',name:'Zeddam',zip:''},{label:'Zeegse',name:'Zeegse',zip:''},{label:'Zeeland',name:'Zeeland',zip:''},{label:'Zeerijp',name:'Zeerijp',zip:''},{label:'Zeewolde',name:'Zeewolde',zip:''},{label:'Zegge',name:'Zegge',zip:''},{label:'Zegveld',name:'Zegveld',zip:''},{label:'Zeijen',name:'Zeijen',zip:''},{label:'Zeijerveen',name:'Zeijerveen',zip:''},{label:'Zeijerveld',name:'Zeijerveld',zip:''},{label:'Zeist',name:'Zeist',zip:''},{label:'Zelhem',name:'Zelhem',zip:''},{label:'Zenderen',name:'Zenderen',zip:''},{label:'Zennewijnen (Tiel)',name:'Zennewijnen (Tiel)',zip:''},{label:'Zennewijnen (Neerijnen)',name:'Zennewijnen (Neerijnen)',zip:''},{label:'Zetten',name:'Zetten',zip:''},{label:'Zevenaar',name:'Zevenaar',zip:''},{label:'Zevenbergen',name:'Zevenbergen',zip:''},{label:'Zevenbergschen Hoek (Moerdijk)',name:'Zevenbergschen Hoek (Moerdijk)',zip:''},{label:'Zevenbergschen Hoek (Drimmelen)',name:'Zevenbergschen Hoek (Drimmelen)',zip:''},{label:'Zevenhoven',name:'Zevenhoven',zip:''},{label:'Zevenhuizen (Zuidplas)',name:'Zevenhuizen (Zuidplas)',zip:''},{label:'Zevenhuizen (Leek)',name:'Zevenhuizen (Leek)',zip:''},{label:'Zierikzee',name:'Zierikzee',zip:''},{label:'Zieuwent',name:'Zieuwent',zip:''},{label:'Zijderveld',name:'Zijderveld',zip:''},{label:'Zijdewind',name:'Zijdewind',zip:''},{label:'Zijldijk',name:'Zijldijk',zip:''},{label:'De Zilk',name:'De Zilk',zip:''},{label:'Zoelen',name:'Zoelen',zip:''},{label:'Zoelmond',name:'Zoelmond',zip:''},{label:'Zoetermeer',name:'Zoetermeer',zip:''},{label:'Zoeterwoude',name:'Zoeterwoude',zip:''},{label:'Zonnemaire',name:'Zonnemaire',zip:''},{label:'Zorgvlied',name:'Zorgvlied',zip:''},{label:'Zoutelande',name:'Zoutelande',zip:''},{label:'Zoutkamp',name:'Zoutkamp',zip:''},{label:'Zuid-Beijerland',name:'Zuid-Beijerland',zip:''},{label:'Zuidbroek',name:'Zuidbroek',zip:''},{label:'Zuiddorpe',name:'Zuiddorpe',zip:''},{label:'Zuidermeer',name:'Zuidermeer',zip:''},{label:'Zuiderwoude',name:'Zuiderwoude',zip:''},{label:'Zuidhorn',name:'Zuidhorn',zip:''},{label:'Zuidlaarderveen',name:'Zuidlaarderveen',zip:''},{label:'Zuidland',name:'Zuidland',zip:''},{label:'Zuidlaren',name:'Zuidlaren',zip:''},{label:'Zuidoostbeemster',name:'Zuidoostbeemster',zip:''},{label:'Zuid-Scharwoude',name:'Zuid-Scharwoude',zip:''},{label:'Zuidschermer',name:'Zuidschermer',zip:''},{label:'Zuidveen',name:'Zuidveen',zip:''},{label:'Zuidveld',name:'Zuidveld',zip:''},{label:'Zuidvelde',name:'Zuidvelde',zip:''},{label:'Zuidwolde (Bedum)',name:'Zuidwolde (Bedum)',zip:''},{label:'Zuidwolde (De Wolden)',name:'Zuidwolde (De Wolden)',zip:''},{label:'Zuidzande',name:'Zuidzande',zip:''},{label:'Zuilichem',name:'Zuilichem',zip:''},{label:'Zuna',name:'Zuna',zip:''},{label:'Zundert',name:'Zundert',zip:''},{label:'Zurich',name:'Zurich',zip:''},{label:'Zutphen',name:'Zutphen',zip:''},{label:'Zuurdijk',name:'Zuurdijk',zip:''},{label:'Zwaag',name:'Zwaag',zip:''},{label:'Zwaagdijk-Oost',name:'Zwaagdijk-Oost',zip:''},{label:'Zwaagdijk-West',name:'Zwaagdijk-West',zip:''},{label:'Zwaanshoek',name:'Zwaanshoek',zip:''},{label:'Zwagerbosch',name:'Zwagerbosch',zip:''},{label:'Zwammerdam',name:'Zwammerdam',zip:''},{label:'Zwanenburg',name:'Zwanenburg',zip:''},{label:'Zwartebroek',name:'Zwartebroek',zip:''},{label:'Zwartemeer',name:'Zwartemeer',zip:''},{label:'Zwartewaal',name:'Zwartewaal',zip:''},{label:'Zwartsluis',name:'Zwartsluis',zip:''},{label:'Zweeloo',name:'Zweeloo',zip:''},{label:'Zweins',name:'Zweins',zip:''},{label:'Zwiggelte',name:'Zwiggelte',zip:''},{label:'Zwijndrecht',name:'Zwijndrecht',zip:''},{label:'Zwinderen',name:'Zwinderen',zip:''},{label:'Zwolle',name:'Zwolle',zip:''}]) - -; -'use strict'; - -/** - * @ngdoc module - * @name udb.search - * @description - * The udb search module - */ -angular - .module('udb.search', [ - 'ngCookies', - 'ngSanitize', - 'ui.bootstrap', - 'peg', - 'udb.core', - 'udb.config', - 'udb.router', - 'udb.entry', - 'btford.socket-io', - 'pascalprecht.translate', - 'xeditable' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.event-form - * @description - * The udb form module - */ -angular - .module('udb.event-form', [ - 'ngSanitize', - 'ngMessages', - 'ui.bootstrap', - 'udb.config', - 'udb.entry', - 'udb.search', - 'udb.uitpas', - 'ngFileUpload', - 'duScroll', - 'focus-if', - 'angular.filter' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.offer-translate - * @description - * The udb form module - */ -angular - .module('udb.offer-translate', [ - 'ngSanitize', - 'ngMessages', - 'ui.bootstrap', - 'udb.config', - 'udb.entry', - 'udb.search', - 'udb.uitpas', - 'ngFileUpload', - 'duScroll', - 'focus-if', - 'angular.filter' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.dashboard - * @description - * The udb dashboard module - */ -angular - .module('udb.dashboard', [ - 'ngSanitize', - 'ui.bootstrap', - 'udb.config' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.entry - * @description - * The udb entry module - */ -angular - .module('udb.entry', [ - 'ngCookies', - 'ngSanitize', - 'ui.bootstrap', - 'udb.config', - 'udb.search', - 'btford.socket-io', - 'pascalprecht.translate', - 'angularMoment' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.event-detail - * @description - * The udb event-detail module - */ -angular - .module('udb.event-detail', [ - 'ngSanitize', - 'ui.bootstrap', - 'udb.config', - 'udb.entry' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.place-detail - * @description - * The udb place-detail module - */ -angular - .module('udb.place-detail', [ - 'ngSanitize', - 'ui.bootstrap', - 'udb.config', - 'udb.entry' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.saved-searches - * @description - * The udb saved-searches module - */ -angular - .module('udb.saved-searches', [ - 'udb.core', - 'ui.bootstrap', - 'ui.codemirror' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.export - * @description - * The udb export module - */ -angular - .module('udb.export', [ - 'ngSanitize', - 'ui.bootstrap', - 'udb.config', - 'udb.search' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.media - * @description - * The udb media module - */ -angular - .module('udb.media', [ - 'ngSanitize', - 'ui.bootstrap', - 'udb.core', - 'udb.config' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.management.roles - * @description - * # Roles Management Module - */ -angular - .module('udb.management.roles', [ - 'rx' - ]); -'use strict'; - -/** - * @ngdoc module - * @name udb.management.labels - * @description - * # Label Management Module - */ -angular - .module('udb.management.labels', [ - 'rx' - ]); -'use strict'; - -/** - * @ngdoc module - * @name udb.management.users - * @description - * # User Management Module - */ -angular - .module('udb.management.users', [ - 'rx' - ]); -'use strict'; - -/** - * @ngdoc module - * @name udb.management.moderation - * @description - * # Moderation Management Module - */ -angular - .module('udb.management.moderation', [ - 'rx' - ]); -'use strict'; - -/** - * @ngdoc module - * @name udb.management.organizers - * @description - * # Organizers Management Module - */ -angular - .module('udb.management.organizers', [ - 'rx', - 'udb.event-form', - 'udb.organizers', - 'ngTagsInput' - ]); -'use strict'; - -/** - * @ngdoc module - * @name udb.management - * @description - * # Management Module - */ -angular - .module('udb.management', [ - 'udb.core', - 'udb.management.labels', - 'udb.management.roles', - 'udb.management.users', - 'udb.management.moderation', - 'udb.management.organizers' - ]); - -'use strict'; -angular.module('peg', []).factory('LuceneQueryParser', function () { - return (function() { - /* - * Generated by PEG.js 0.8.0. - * - * http://pegjs.majda.cz/ - */ - - function peg$subclass(child, parent) { - function ctor() { this.constructor = child; } - ctor.prototype = parent.prototype; - child.prototype = new ctor(); - } - - function SyntaxError(message, expected, found, offset, line, column) { - this.message = message; - this.expected = expected; - this.found = found; - this.offset = offset; - this.line = line; - this.column = column; - - this.name = "SyntaxError"; - } - - peg$subclass(SyntaxError, Error); - - function parse(input) { - var options = arguments.length > 1 ? arguments[1] : {}, - - peg$FAILED = {}, - - peg$startRuleFunctions = { start: peg$parsestart }, - peg$startRuleFunction = peg$parsestart, - - peg$c0 = peg$FAILED, - peg$c1 = [], - peg$c2 = function(node) { - return node[0]; - }, - peg$c3 = function() { - return {}; - }, - peg$c4 = function(operator) { - return { - 'operator': operator - }; - }, - peg$c5 = function(operator, right) { - return right; - }, - peg$c6 = function(left, operator, right) { - var node= { - 'left':left - }; - - var right = - right.length == 0 - ? null - : right[0]['right'] == null - ? right[0]['left'] - : right[0]; - - if (right != null) - { - node['operator'] = operator==''? '' : operator[0]; - node['right'] = right; - } - - return node; - }, - peg$c7 = function(field_exp) { - return field_exp; - }, - peg$c8 = "(", - peg$c9 = { type: "literal", value: "(", description: "\"(\"" }, - peg$c10 = ")", - peg$c11 = { type: "literal", value: ")", description: "\")\"" }, - peg$c12 = null, - peg$c13 = function(fieldname, range) { - range['field'] = fieldname || ''; - - return range; - }, - peg$c14 = function(po, fieldname, node) { - node['field']= fieldname; - - if(po) { - node.transformer = po; - } - - return node; - }, - peg$c15 = function(po, fieldname, term) { - var fieldexp = { - 'field': (fieldname || '') - }; - - if(po) { - fieldexp.transformer = po; - } - - if(!fieldname && po) { - fieldexp.prefix = po; - } - - for(var key in term) - fieldexp[key] = term[key]; - - return fieldexp; - }, - peg$c16 = /^[:<>]/, - peg$c17 = { type: "class", value: "[:<>]", description: "[:<>]" }, - peg$c18 = function(fieldname) { - return fieldname; - }, - peg$c19 = /^[^: \t\r\n\f{}()+\-!"\^~[\]]/, - peg$c20 = { type: "class", value: "[^: \\t\\r\\n\\f{}()+\\-!\"\\^~[\\]]", description: "[^: \\t\\r\\n\\f{}()+\\-!\"\\^~[\\]]" }, - peg$c21 = function(first_character, field) { - return first_character + field.join(''); - }, - peg$c22 = /^[^: \t\r\n\f{}()+"\^~[\]]/, - peg$c23 = { type: "class", value: "[^: \\t\\r\\n\\f{}()+\"\\^~[\\]]", description: "[^: \\t\\r\\n\\f{}()+\"\\^~[\\]]" }, - peg$c24 = function(op, term, proximity, boost) { - var result = { 'term': term, 'quoted': true }; - - if(proximity) - { - result['proximity'] = proximity; - } - if(boost) - { - result['boost'] = boost; - } - if(op) - { - result['prefix'] = op; - } - - return result; - }, - peg$c25 = function(op, term, similarity, boost) { - var result = { 'term': term }; - if(similarity) - { - result['similarity'] = similarity; - } - if(boost) - { - result['boost'] = boost; - } - if(op) - { - result['prefix'] = op; - } - return result; - }, - peg$c26 = /^[^,: \t\r\n\f{}()+\-"\^~[\]]/, - peg$c27 = { type: "class", value: "[^,: \\t\\r\\n\\f{}()+\\-\"\\^~[\\]]", description: "[^,: \\t\\r\\n\\f{}()+\\-\"\\^~[\\]]" }, - peg$c28 = function(first_character, term) { - return first_character + term.join(''); - }, - peg$c29 = /^[^, <>\t\r\n\f{}()"\^~[\]]/, - peg$c30 = { type: "class", value: "[^, <>\\t\\r\\n\\f{}()\"\\^~[\\]]", description: "[^, <>\\t\\r\\n\\f{}()\"\\^~[\\]]" }, - peg$c31 = "\"", - peg$c32 = { type: "literal", value: "\"", description: "\"\\\"\"" }, - peg$c33 = /^[^"]/, - peg$c34 = { type: "class", value: "[^\"]", description: "[^\"]" }, - peg$c35 = function(term) { - return term.join(''); - }, - peg$c36 = "~", - peg$c37 = { type: "literal", value: "~", description: "\"~\"" }, - peg$c38 = function(proximity) { - return proximity; - }, - peg$c39 = "^", - peg$c40 = { type: "literal", value: "^", description: "\"^\"" }, - peg$c41 = function(boost) { - return boost; - }, - peg$c42 = function(fuzziness) { - return fuzziness || 0.5; - }, - peg$c43 = "0.", - peg$c44 = { type: "literal", value: "0.", description: "\"0.\"" }, - peg$c45 = /^[0-9]/, - peg$c46 = { type: "class", value: "[0-9]", description: "[0-9]" }, - peg$c47 = function(val) { - return parseFloat('0.' + val.join('')); - }, - peg$c48 = function(val) { - return parseInt(val.join('')); - }, - peg$c49 = "[", - peg$c50 = { type: "literal", value: "[", description: "\"[\"" }, - peg$c51 = "TO", - peg$c52 = { type: "literal", value: "TO", description: "\"TO\"" }, - peg$c53 = "]", - peg$c54 = { type: "literal", value: "]", description: "\"]\"" }, - peg$c55 = function(term_min, term_max) { - return { - 'lowerBound': term_min, - 'upperBound': term_max, - 'inclusive': true - }; - }, - peg$c56 = "{", - peg$c57 = { type: "literal", value: "{", description: "\"{\"" }, - peg$c58 = "}", - peg$c59 = { type: "literal", value: "}", description: "\"}\"" }, - peg$c60 = function(term_min, term_max) { - return { - 'lowerBound': term_min, - 'upperBound': term_max, - 'inclusive': false - }; - }, - peg$c61 = function(operator) { - return operator; - }, - peg$c62 = "OR", - peg$c63 = { type: "literal", value: "OR", description: "\"OR\"" }, - peg$c64 = "AND", - peg$c65 = { type: "literal", value: "AND", description: "\"AND\"" }, - peg$c66 = "NOT", - peg$c67 = { type: "literal", value: "NOT", description: "\"NOT\"" }, - peg$c68 = "||", - peg$c69 = { type: "literal", value: "||", description: "\"||\"" }, - peg$c70 = function() { return 'OR'; }, - peg$c71 = "&&", - peg$c72 = { type: "literal", value: "&&", description: "\"&&\"" }, - peg$c73 = function() { return 'AND'; }, - peg$c74 = "+", - peg$c75 = { type: "literal", value: "+", description: "\"+\"" }, - peg$c76 = "-", - peg$c77 = { type: "literal", value: "-", description: "\"-\"" }, - peg$c78 = "!", - peg$c79 = { type: "literal", value: "!", description: "\"!\"" }, - peg$c80 = { type: "other", description: "whitespace" }, - peg$c81 = /^[ \t\r\n\f]/, - peg$c82 = { type: "class", value: "[ \\t\\r\\n\\f]", description: "[ \\t\\r\\n\\f]" }, - peg$c83 = void 0, - peg$c84 = { type: "any", description: "any character" }, - - peg$currPos = 0, - peg$reportedPos = 0, - peg$cachedPos = 0, - peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }, - peg$maxFailPos = 0, - peg$maxFailExpected = [], - peg$silentFails = 0, - - peg$result; - - if ("startRule" in options) { - if (!(options.startRule in peg$startRuleFunctions)) { - throw new Error("Can't start parsing from rule \"" + options.startRule + "\"."); - } - - peg$startRuleFunction = peg$startRuleFunctions[options.startRule]; - } - - function text() { - return input.substring(peg$reportedPos, peg$currPos); - } - - function offset() { - return peg$reportedPos; - } - - function line() { - return peg$computePosDetails(peg$reportedPos).line; - } - - function column() { - return peg$computePosDetails(peg$reportedPos).column; - } - - function expected(description) { - throw peg$buildException( - null, - [{ type: "other", description: description }], - peg$reportedPos - ); - } - - function error(message) { - throw peg$buildException(message, null, peg$reportedPos); - } - - function peg$computePosDetails(pos) { - function advance(details, startPos, endPos) { - var p, ch; - - for (p = startPos; p < endPos; p++) { - ch = input.charAt(p); - if (ch === "\n") { - if (!details.seenCR) { details.line++; } - details.column = 1; - details.seenCR = false; - } else if (ch === "\r" || ch === "\u2028" || ch === "\u2029") { - details.line++; - details.column = 1; - details.seenCR = true; - } else { - details.column++; - details.seenCR = false; - } - } - } - - if (peg$cachedPos !== pos) { - if (peg$cachedPos > pos) { - peg$cachedPos = 0; - peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }; - } - advance(peg$cachedPosDetails, peg$cachedPos, pos); - peg$cachedPos = pos; - } - - return peg$cachedPosDetails; - } - - function peg$fail(expected) { - if (peg$currPos < peg$maxFailPos) { return; } - - if (peg$currPos > peg$maxFailPos) { - peg$maxFailPos = peg$currPos; - peg$maxFailExpected = []; - } - - peg$maxFailExpected.push(expected); - } - - function peg$buildException(message, expected, pos) { - function cleanupExpected(expected) { - var i = 1; - - expected.sort(function(a, b) { - if (a.description < b.description) { - return -1; - } else if (a.description > b.description) { - return 1; - } else { - return 0; - } - }); - - while (i < expected.length) { - if (expected[i - 1] === expected[i]) { - expected.splice(i, 1); - } else { - i++; - } - } - } - - function buildMessage(expected, found) { - function stringEscape(s) { - function hex(ch) { return ch.charCodeAt(0).toString(16).toUpperCase(); } - - return s - .replace(/\\/g, '\\\\') - .replace(/"/g, '\\"') - .replace(/\x08/g, '\\b') - .replace(/\t/g, '\\t') - .replace(/\n/g, '\\n') - .replace(/\f/g, '\\f') - .replace(/\r/g, '\\r') - .replace(/[\x00-\x07\x0B\x0E\x0F]/g, function(ch) { return '\\x0' + hex(ch); }) - .replace(/[\x10-\x1F\x80-\xFF]/g, function(ch) { return '\\x' + hex(ch); }) - .replace(/[\u0180-\u0FFF]/g, function(ch) { return '\\u0' + hex(ch); }) - .replace(/[\u1080-\uFFFF]/g, function(ch) { return '\\u' + hex(ch); }); - } - - var expectedDescs = new Array(expected.length), - expectedDesc, foundDesc, i; - - for (i = 0; i < expected.length; i++) { - expectedDescs[i] = expected[i].description; - } - - expectedDesc = expected.length > 1 - ? expectedDescs.slice(0, -1).join(", ") - + " or " - + expectedDescs[expected.length - 1] - : expectedDescs[0]; - - foundDesc = found ? "\"" + stringEscape(found) + "\"" : "end of input"; - - return "Expected " + expectedDesc + " but " + foundDesc + " found."; - } - - var posDetails = peg$computePosDetails(pos), - found = pos < input.length ? input.charAt(pos) : null; - - if (expected !== null) { - cleanupExpected(expected); - } - - return new SyntaxError( - message !== null ? message : buildMessage(expected, found), - expected, - found, - pos, - posDetails.line, - posDetails.column - ); - } - - function peg$parsestart() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - s1 = []; - s2 = peg$parse_(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parse_(); - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parsenode(); - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parsenode(); - } - } else { - s2 = peg$c0; - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c2(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parse_(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parse_(); - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c3(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseEOF(); - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c3(); - } - s0 = s1; - } - } - - return s0; - } - - function peg$parsenode() { - var s0, s1, s2, s3, s4; - - s0 = peg$currPos; - s1 = peg$parseoperator_exp(); - if (s1 !== peg$FAILED) { - s2 = peg$parseEOF(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c4(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseoperator_exp(); - if (s1 !== peg$FAILED) { - s2 = peg$parsenode(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c5(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parsegroup_exp(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseoperator_exp(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseoperator_exp(); - } - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parsenode(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parsenode(); - } - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c6(s1, s2, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } - } - - return s0; - } - - function peg$parsegroup_exp() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - s1 = peg$parsefield_exp(); - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parse_(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parse_(); - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c7(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$parseparen_exp(); - } - - return s0; - } - - function peg$parseparen_exp() { - var s0, s1, s2, s3, s4, s5; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c8; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c9); } - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parsenode(); - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parsenode(); - } - } else { - s2 = peg$c0; - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 41) { - s3 = peg$c10; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c11); } - } - if (s3 !== peg$FAILED) { - s4 = []; - s5 = peg$parse_(); - while (s5 !== peg$FAILED) { - s4.push(s5); - s5 = peg$parse_(); - } - if (s4 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c2(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parsefield_exp() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - s1 = peg$parsefieldname(); - if (s1 === peg$FAILED) { - s1 = peg$c12; - } - if (s1 !== peg$FAILED) { - s2 = peg$parserange_operator_exp(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c13(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseprefix_operator(); - if (s1 === peg$FAILED) { - s1 = peg$c12; - } - if (s1 !== peg$FAILED) { - s2 = peg$parsefieldname(); - if (s2 !== peg$FAILED) { - s3 = peg$parseparen_exp(); - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c14(s1, s2, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseprefix_operator(); - if (s1 === peg$FAILED) { - s1 = peg$c12; - } - if (s1 !== peg$FAILED) { - s2 = peg$parsefieldname(); - if (s2 === peg$FAILED) { - s2 = peg$c12; - } - if (s2 !== peg$FAILED) { - s3 = peg$parseterm(); - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c15(s1, s2, s3); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } - } - - return s0; - } - - function peg$parsefieldname() { - var s0, s1, s2; - - s0 = peg$currPos; - s1 = peg$parseunquoted_field(); - if (s1 !== peg$FAILED) { - if (peg$c16.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c17); } - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c18(s1); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseunquoted_field() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - if (peg$c19.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c20); } - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parsefield_char(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parsefield_char(); - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c21(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parsefield_char() { - var s0; - - if (peg$c22.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c23); } - } - - return s0; - } - - function peg$parseterm() { - var s0, s1, s2, s3, s4, s5, s6; - - s0 = peg$currPos; - s1 = peg$parseprefix_operator_exp(); - if (s1 === peg$FAILED) { - s1 = peg$c12; - } - if (s1 !== peg$FAILED) { - s2 = peg$parsequoted_term(); - if (s2 !== peg$FAILED) { - s3 = peg$parseproximity_modifier(); - if (s3 === peg$FAILED) { - s3 = peg$c12; - } - if (s3 !== peg$FAILED) { - s4 = peg$parseboost_modifier(); - if (s4 === peg$FAILED) { - s4 = peg$c12; - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - if (s5 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c24(s1, s2, s3, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = peg$parseprefix_operator_exp(); - if (s1 === peg$FAILED) { - s1 = peg$c12; - } - if (s1 !== peg$FAILED) { - s2 = peg$parseunquoted_term(); - if (s2 !== peg$FAILED) { - s3 = peg$parsefuzzy_modifier(); - if (s3 === peg$FAILED) { - s3 = peg$c12; - } - if (s3 !== peg$FAILED) { - s4 = peg$parseboost_modifier(); - if (s4 === peg$FAILED) { - s4 = peg$c12; - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - if (s5 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c25(s1, s2, s3, s4); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } - - return s0; - } - - function peg$parseunquoted_term() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - if (peg$c26.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c27); } - } - if (s1 !== peg$FAILED) { - s2 = []; - s3 = peg$parseterm_char(); - while (s3 !== peg$FAILED) { - s2.push(s3); - s3 = peg$parseterm_char(); - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c28(s1, s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseterm_char() { - var s0; - - if (peg$c29.test(input.charAt(peg$currPos))) { - s0 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c30); } - } - - return s0; - } - - function peg$parsequoted_term() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 34) { - s1 = peg$c31; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c32); } - } - if (s1 !== peg$FAILED) { - s2 = []; - if (peg$c33.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c34); } - } - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - if (peg$c33.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c34); } - } - } - } else { - s2 = peg$c0; - } - if (s2 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 34) { - s3 = peg$c31; - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c32); } - } - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c35(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseproximity_modifier() { - var s0, s1, s2; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 126) { - s1 = peg$c36; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c37); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseint_exp(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c38(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseboost_modifier() { - var s0, s1, s2; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 94) { - s1 = peg$c39; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c40); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parsedecimal_or_int_exp(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c41(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parsefuzzy_modifier() { - var s0, s1, s2; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 126) { - s1 = peg$c36; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c37); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parsedecimal_exp(); - if (s2 === peg$FAILED) { - s2 = peg$c12; - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c42(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parsedecimal_or_int_exp() { - var s0; - - s0 = peg$parsedecimal_exp(); - if (s0 === peg$FAILED) { - s0 = peg$parseint_exp(); - } - - return s0; - } - - function peg$parsedecimal_exp() { - var s0, s1, s2, s3; - - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c43) { - s1 = peg$c43; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c44); } - } - if (s1 !== peg$FAILED) { - s2 = []; - if (peg$c45.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c46); } - } - if (s3 !== peg$FAILED) { - while (s3 !== peg$FAILED) { - s2.push(s3); - if (peg$c45.test(input.charAt(peg$currPos))) { - s3 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c46); } - } - } - } else { - s2 = peg$c0; - } - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c47(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseint_exp() { - var s0, s1, s2; - - s0 = peg$currPos; - s1 = []; - if (peg$c45.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c46); } - } - if (s2 !== peg$FAILED) { - while (s2 !== peg$FAILED) { - s1.push(s2); - if (peg$c45.test(input.charAt(peg$currPos))) { - s2 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c46); } - } - } - } else { - s1 = peg$c0; - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c48(s1); - } - s0 = s1; - - return s0; - } - - function peg$parserange_operator_exp() { - var s0, s1, s2, s3, s4, s5, s6, s7; - - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 91) { - s1 = peg$c49; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c50); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseunquoted_term(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parse_(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parse_(); - } - if (s3 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c51) { - s4 = peg$c51; - peg$currPos += 2; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c52); } - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - } else { - s5 = peg$c0; - } - if (s5 !== peg$FAILED) { - s6 = peg$parseunquoted_term(); - if (s6 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 93) { - s7 = peg$c53; - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c54); } - } - if (s7 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c55(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c56; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c57); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseunquoted_term(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parse_(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parse_(); - } - if (s3 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c51) { - s4 = peg$c51; - peg$currPos += 2; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c52); } - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - } else { - s5 = peg$c0; - } - if (s5 !== peg$FAILED) { - s6 = peg$parseunquoted_term(); - if (s6 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s7 = peg$c58; - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c59); } - } - if (s7 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c60(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c56; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c57); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseunquoted_term(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parse_(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parse_(); - } - if (s3 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c51) { - s4 = peg$c51; - peg$currPos += 2; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c52); } - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - } else { - s5 = peg$c0; - } - if (s5 !== peg$FAILED) { - s6 = peg$parseunquoted_term(); - if (s6 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 93) { - s7 = peg$c53; - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c54); } - } - if (s7 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c55(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.charCodeAt(peg$currPos) === 91) { - s1 = peg$c49; - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c50); } - } - if (s1 !== peg$FAILED) { - s2 = peg$parseunquoted_term(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parse_(); - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parse_(); - } - if (s3 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c51) { - s4 = peg$c51; - peg$currPos += 2; - } else { - s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c52); } - } - if (s4 !== peg$FAILED) { - s5 = []; - s6 = peg$parse_(); - if (s6 !== peg$FAILED) { - while (s6 !== peg$FAILED) { - s5.push(s6); - s6 = peg$parse_(); - } - } else { - s5 = peg$c0; - } - if (s5 !== peg$FAILED) { - s6 = peg$parseunquoted_term(); - if (s6 !== peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 125) { - s7 = peg$c58; - peg$currPos++; - } else { - s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c59); } - } - if (s7 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c55(s2, s6); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } - } - } - - return s0; - } - - function peg$parseoperator_exp() { - var s0, s1, s2, s3, s4; - - s0 = peg$currPos; - s1 = []; - s2 = peg$parse_(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parse_(); - } - if (s1 !== peg$FAILED) { - s2 = peg$parseoperator(); - if (s2 !== peg$FAILED) { - s3 = []; - s4 = peg$parse_(); - if (s4 !== peg$FAILED) { - while (s4 !== peg$FAILED) { - s3.push(s4); - s4 = peg$parse_(); - } - } else { - s3 = peg$c0; - } - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c61(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - s1 = []; - s2 = peg$parse_(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parse_(); - } - if (s1 !== peg$FAILED) { - s2 = peg$parseoperator(); - if (s2 !== peg$FAILED) { - s3 = peg$parseEOF(); - if (s3 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c61(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } - - return s0; - } - - function peg$parseoperator() { - var s0, s1; - - if (input.substr(peg$currPos, 2) === peg$c62) { - s0 = peg$c62; - peg$currPos += 2; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c63); } - } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c64) { - s0 = peg$c64; - peg$currPos += 3; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c65); } - } - if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c66) { - s0 = peg$c66; - peg$currPos += 3; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c67); } - } - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c68) { - s1 = peg$c68; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c69); } - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c70(); - } - s0 = s1; - if (s0 === peg$FAILED) { - s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c71) { - s1 = peg$c71; - peg$currPos += 2; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c72); } - } - if (s1 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c73(); - } - s0 = s1; - } - } - } - } - - return s0; - } - - function peg$parseprefix_operator_exp() { - var s0, s1, s2; - - s0 = peg$currPos; - s1 = []; - s2 = peg$parse_(); - while (s2 !== peg$FAILED) { - s1.push(s2); - s2 = peg$parse_(); - } - if (s1 !== peg$FAILED) { - s2 = peg$parseprefix_operator(); - if (s2 !== peg$FAILED) { - peg$reportedPos = s0; - s1 = peg$c61(s2); - s0 = s1; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - function peg$parseprefix_operator() { - var s0; - - if (input.charCodeAt(peg$currPos) === 43) { - s0 = peg$c74; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c75); } - } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 45) { - s0 = peg$c76; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c77); } - } - if (s0 === peg$FAILED) { - if (input.charCodeAt(peg$currPos) === 33) { - s0 = peg$c78; - peg$currPos++; - } else { - s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c79); } - } - } - } - - return s0; - } - - function peg$parse_() { - var s0, s1; - - peg$silentFails++; - s0 = []; - if (peg$c81.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c82); } - } - if (s1 !== peg$FAILED) { - while (s1 !== peg$FAILED) { - s0.push(s1); - if (peg$c81.test(input.charAt(peg$currPos))) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c82); } - } - } - } else { - s0 = peg$c0; - } - peg$silentFails--; - if (s0 === peg$FAILED) { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c80); } - } - - return s0; - } - - function peg$parseEOF() { - var s0, s1; - - s0 = peg$currPos; - peg$silentFails++; - if (input.length > peg$currPos) { - s1 = input.charAt(peg$currPos); - peg$currPos++; - } else { - s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c84); } - } - peg$silentFails--; - if (s1 === peg$FAILED) { - s0 = peg$c83; - } else { - peg$currPos = s0; - s0 = peg$c0; - } - - return s0; - } - - peg$result = peg$startRuleFunction(); - - if (peg$result !== peg$FAILED && peg$currPos === input.length) { - return peg$result; - } else { - if (peg$result !== peg$FAILED && peg$currPos < input.length) { - peg$fail({ type: "end", description: "end of input" }); - } - - throw peg$buildException(null, peg$maxFailExpected, peg$maxFailPos); - } - } - - return { - SyntaxError: SyntaxError, - parse: parse - }; -})() -}); -'use strict'; - -/** - * @ngdoc module - * @name udb.uitpas - * @description - * The UDB UiTPAS module - */ -angular - .module('udb.uitpas', [ - 'ui.bootstrap' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.migration - * @description - * # Migration Module - */ -angular - .module('udb.migration', [ - 'udb.core', - 'udb.event-form', - 'ui.router' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.duplication - * @description - * # Duplication Module - */ -angular - .module('udb.duplication', [ - 'udb.core', - 'udb.event-form', - 'udb.migration' - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.cultuurkuur - * @description - * # Cultuurkuur Module - */ -angular - .module('udb.cultuurkuur', [ - 'udb.core', - 'udb.event-detail', - ]); - -'use strict'; - -/** - * @ngdoc module - * @name udb.organizers - * @description - * # Organizers Module - */ -angular - .module('udb.organizers', [ - 'rx', - 'udb.event-form', - 'ngTagsInput' - ]);})(); - -// Source: src/core/authorization-service.service.js -(function () { -'use strict'; - -/** - * @ngdoc service - * @name udb.core.authorizationService - * @description - * # authorizationService - * Service in the udb.core. - */ -angular - .module('udb.core') - .constant('authorization', { - 'editOffer': 'AANBOD_BEWERKEN', - 'moderateOffer': 'AANBOD_MODEREREN', - 'removeOffer': 'AANBOD_VERWIJDEREN', - 'manageOrganisations': 'ORGANISATIES_BEHEREN', - 'manageUsers': 'GEBRUIKERS_BEHEREN', - 'manageLabels': 'LABELS_BEHEREN', - 'editFacilities': 'VOORZIENINGEN_BEWERKEN', - 'createProductions': 'PRODUCTIES_AANMAKEN', - 'createMovies': 'FILMS_AANMAKEN', - }) - .service('authorizationService', AuthorizationService); - -/* @ngInject */ -function AuthorizationService($q, uitidAuth, udbApi, $location, $rootScope, $translate) { - this.isLoggedIn = function () { - var deferred = $q.defer(); - - var deferredUser = udbApi.getMe(); - deferredUser.then( - function (user) { - $rootScope.$emit('userLoggedIn', user); - deferred.resolve(user); - }, - function () { - uitidAuth.login(); - - // We are redirecting away from the current page, so no need to - // resolve or reject the deferred. - } - ); - - return deferred.promise; - }; - - /** - * @param {string} path - * @return {Promise.} - * Resolves to TRUE when no user is logged in and no redirect has occurred. - */ - this.redirectIfLoggedIn = function (path) { - var deferredRedirect = $q.defer(); - - function redirect() { - $location.path(path); - deferredRedirect.resolve(false); - } - - if (uitidAuth.getToken()) { - udbApi - .getMe() - .then(redirect, deferredRedirect.reject) - // Send an emit u - .finally(function () { - $rootScope.$emit('$changeLocales', $translate.use()); - }); - } else { - deferredRedirect.resolve(true); - } - - return deferredRedirect.promise; - }; - - /** - * @param {string} permission - One of the authorization constants - */ - this.hasPermission = function (permission) { - var deferredHasPermission = $q.defer(); - - function findPermission(permissionList) { - var foundPermission = _.find(permissionList, function(p) { return p === permission; }); - deferredHasPermission.resolve(foundPermission ? true : false); - } - - udbApi - .getMyPermissions() - .then(findPermission, deferredHasPermission.reject); - - return deferredHasPermission.promise; - }; - - /** - * @return RolePermission[] - */ - this.getPermissions = function () { - return udbApi.getMyPermissions(); - }; - - this.isGodUser = function () { - return this.hasPermission('GEBRUIKERS_BEHEREN'); - }; -} -AuthorizationService.$inject = ["$q", "uitidAuth", "udbApi", "$location", "$rootScope", "$translate"]; -})(); - -// Source: src/core/city-autocomplete.service.js -(function () { -'use strict'; - -/** - * @ngdoc service - * @name udb.core.CityAutocomplete - * @description - * Service for city autocompletes. - */ -angular - .module('udb.core') - .service('cityAutocomplete', CityAutocomplete); - -/* @ngInject */ -function CityAutocomplete($q, $http, appConfig, UdbPlace, jsonLDLangFilter) { - /** - * - * Get the places for a city - * - * @param {string} zipcode - * @param {string} country - * @param {string} freeTextSearch - * @returns {Promise} - */ - this.getPlacesByZipcode = function(zipcode, country, freeTextSearch) { - var deferredPlaces = $q.defer(); - var url = appConfig.baseUrl + 'places/'; - var config = { - headers: { - 'X-Api-Key': _.get(appConfig, 'apiKey') - }, - params: { - 'postalCode': zipcode, - 'addressCountry': country, - 'workflowStatus': 'DRAFT,READY_FOR_VALIDATION,APPROVED', - 'disableDefaultFilters': true, - 'isDuplicate': false, - 'embed': true, - 'limit': 1000, - 'sort[created]': 'asc' - } - }; - - // Add extra param to config if the free text search is defined - if (freeTextSearch) { - config.params.text = '*' + freeTextSearch + '*'; - } - - var parsePagedCollection = function (response) { - var locations = _.map(response.data.member, function (placeJson) { - var place = new UdbPlace(placeJson); - return jsonLDLangFilter(place, 'nl'); - }); - - deferredPlaces.resolve(locations); - }; - - var failed = function () { - deferredPlaces.reject('something went wrong while getting places for city with zipcode: ' + zipcode); - }; - - $http.get(url, config).then(parsePagedCollection, failed); - - return deferredPlaces.promise; - }; - - /** - * - * Get the places for a city - * - * @param {string} city - * @param {string} country - * @returns {Promise} - */ - this.getPlacesByCity = function(city, country) { - - var deferredPlaces = $q.defer(); - var url = appConfig.baseUrl + 'places/'; - var config = { - headers: { - 'X-Api-Key': _.get(appConfig, 'apiKey') - }, - params: { - 'q': 'address.\\*.addressLocality:' + city, - 'addressCountry': country, - 'workflowStatus': 'DRAFT,READY_FOR_VALIDATION,APPROVED', - 'disableDefaultFilters': true, - 'embed': true, - 'limit': 1000, - 'sort[created]': 'asc' - } - }; - - var parsePagedCollection = function (response) { - var locations = _.map(response.data.member, function (placeJson) { - var place = new UdbPlace(placeJson); - return jsonLDLangFilter(place, 'nl'); - }); - - deferredPlaces.resolve(locations); - }; - - var failed = function () { - deferredPlaces.reject('something went wrong while getting places for city with city: ' + city); - }; - - $http.get(url, config).then(parsePagedCollection, failed); - - return deferredPlaces.promise; - }; - - /** - * - * Get place by id - * - * @param {string} id - * @returns {Promise} - */ - this.getPlaceById = function(id) { - - var deferredPlace = $q.defer(); - var url = appConfig.baseUrl + 'place/' + id; - var config = { - headers: { - 'X-Api-Key': _.get(appConfig, 'apiKey') - } - }; - - var parsePagedCollection = function (response) { - var location = new UdbPlace(response.data); - location = jsonLDLangFilter(location, 'nl'); - - deferredPlace.resolve(location); - }; - - var failed = function () { - deferredPlace.reject('something went wrong while getting place by id with id: ' + id); - }; - - $http.get(url, config).then(parsePagedCollection, failed); - - return deferredPlace.promise; - }; - -} -CityAutocomplete.$inject = ["$q", "$http", "appConfig", "UdbPlace", "jsonLDLangFilter"]; -})(); - -// Source: src/core/components/calendar-summary/calendar-summary.controller.js -(function () { -'use strict'; - -angular - .module('udb.core') - .controller('CalendarSummaryController', calendarSummaryController); - -function calendarSummaryController($scope) { - $scope.getOpeningHoursCount = function(offer) { - if (offer.calendarType === 'single' && offer.startDate !== offer.endDate) { - offer.openingHours = [{ - startDate: offer.startDate, - endDate: offer.endDate - }]; - } - return offer.openingHours.length; - }; -} -calendarSummaryController.$inject = ["$scope"]; -})(); - -// Source: src/core/components/calendar-summary/calendar-summary.directive.js -(function () { -'use strict'; - -angular - .module('udb.core') - .directive('udbCalendarSummary', udbCalendarSummary); - -function udbCalendarSummary() { - return { - restrict: 'E', - scope: { - offer: '=', - showOpeningHours: '=' - }, - templateUrl: 'templates/calendar-summary.directive.html', - controller: 'CalendarSummaryController' - }; -} -})(); - -// Source: src/core/components/image-detail/image-detail.directive.js -(function () { -'use strict'; - -/** - * @ngdoc component - * @name udb.image-detail.directive:Image-detail - * @description - * # Image-detail - */ -angular - .module('udb.core') - .directive('udbImageDetail', function () { - return { - templateUrl: 'templates/image-detail.directive.html', - controller: ImageDetailController, - restrict: 'A', - scope: { - images: ' 0) { - var labels = []; - options.each(function() { - labels.push(angular.element(this).html().substring(0, 2)); - }); - return labels.join(', ') + ' '; - } - else { - return attrs.startLabel; - } - } - }); - - // Watch for any changes from outside the directive and refresh - scope.$watch(attrs.ngModel, function () { - elem.multiselect('refresh'); - }); - - } - - }; - } - -})(); -})(); - -// Source: src/core/components/time/time.directive.js -(function () { -(function () { -'use strict'; - -/** - * @ngdoc directive - * @name udb.core.directive:udbTime - * @description - * # udbTime - */ -angular - .module('udb.core') - .directive('udbTime', udbTimeDirective); - -function udbTimeDirective() { - return { - restrict: 'A', - require: 'ngModel', - link: link - }; - - function link (scope, elem, attr, ngModel) { - - if (!ngModel) { - return; - } - - if (attr.type !== 'time') { - return; - } - - ngModel.$formatters.unshift(function(value) { - return value.replace(/:\d{2}[.,]\d{3}$/, ''); - }); - - /*elem.bind('blur', function() { - elem.toggleClass('has-error', elem.$invalid); - });*/ - } -} -})(); -})(); - -// Source: src/core/components/workflow-status/udb.workflow-status.directive.js -(function () { -'use strict'; - -/** - * @ngdoc directive - * @name udb.core.directive: udbWorkflowStatus - * @description - * # udbWorkflowStatus - */ -angular - .module('udb.core') - .directive('udbWorkflowStatus', function () { - return { - templateUrl: 'templates/udb.workflow-status.directive.html', - controller: WorkflowStatusDirectiveController, - controllerAs: 'cm', - restrict: 'A', - scope: { - event: '<': 'tussen', - '+': 'is gelijk aan', - '!': 'is niet gelijk aan', - '-': 'is niet gelijk aan', - '>': 'is groter of gelijk aan', - '<': 'is kleiner of gelijk aan', - '>_DATE': 'later dan', - '<_DATE': 'vroeger dan', - '=_DATE': 'is gelijk aan', - '><_DATE': 'tussen', - 'choice': { - 'everyone': 'iedereen', - 'members': 'leden', - 'education': 'onderwijs', - 'Available': 'Gaat door', - 'Unavailable': 'Geannuleerd', - 'TemporarilyUnavailable': 'Uitgesteld', - 'available': 'Beschikbaar', - 'unavailable': 'Volzet of uitverkocht', - 'online': 'online', - 'offline': 'fysiek', - 'mixed': 'gemengd (fysiek / online)', - 'asc': 'oplopend', - 'desc': 'aflopend', - 'today': 'vandaag', - 'tomorrow': 'morgen', - 'thisweekend': 'dit weekend', - 'nextweekend': 'volgend weekend', - 'next7days': 'volgende 7 dagen', - 'next14days': 'volgende 14 dagen', - 'next30days': 'volgende 30 dagen', - 'next3months': 'volgende 3 maanden', - 'next6months': 'volgende 6 maanden', - 'next12months': 'volgende 12 maanden', - 'permanent': 'permanent', - 'event': 'event', - 'place': 'locatie', - 'actor': 'actor', - 'production': 'productie', - 'nl': 'Nederlands', - 'fr': 'Frans', - 'en': 'Engels', - 'de': 'Duits', - 'AF': 'Afghanistan', - 'AX': 'Alandeilanden', - 'AL': 'Albanië', - 'DZ': 'Algerije', - 'AS': 'Amerikaans Samoa', - 'VI': 'Amerikaanse Maagdeneilanden', - 'UM': 'Amerikaanse kleinere afgelegen eilanden', - 'AD': 'Andorra', - 'AO': 'Angola', - 'AI': 'Anguilla', - 'AQ': 'Antarctica', - 'AG': 'Antigua en Barbuda', - 'AR': 'Argentinië', - 'AM': 'Armenië', - 'AW': 'Aruba', - 'AU': 'Australië', - 'AZ': 'Azerbeidzjan', - 'BS': 'Bahama’s', - 'BH': 'Bahrein', - 'BD': 'Bangladesh', - 'BB': 'Barbados', - 'BE': 'België', - 'BZ': 'Belize', - 'BJ': 'Benin', - 'BM': 'Bermuda', - 'BT': 'Bhutan', - 'BO': 'Bolivia', - 'BA': 'Bosnië en Herzegovina', - 'BW': 'Botswana', - 'BV': 'Bouveteiland', - 'BR': 'Brazilië', - 'IO': 'Britse Gebieden in de Indische Oceaan', - 'VG': 'Britse Maagdeneilanden', - 'BN': 'Brunei', - 'BG': 'Bulgarije', - 'BF': 'Burkina Faso', - 'BI': 'Burundi', - 'KH': 'Cambodja', - 'CA': 'Canada', - 'KY': 'Caymaneilanden', - 'CF': 'Centraal-Afrikaanse Republiek', - 'CL': 'Chili', - 'CN': 'China', - 'CX': 'Christmaseiland', - 'CC': 'Cocoseilanden', - 'CO': 'Colombia', - 'KM': 'Comoren', - 'CG': 'Congo', - 'CD': 'Congo-Kinshasa', - 'CK': 'Cookeilanden', - 'CR': 'Costa Rica', - 'CU': 'Cuba', - 'CY': 'Cyprus', - 'DK': 'Denemarken', - 'DJ': 'Djibouti', - 'DM': 'Dominica', - 'DO': 'Dominicaanse Republiek', - 'DE': 'Duitsland', - 'EC': 'Ecuador', - 'EG': 'Egypte', - 'SV': 'El Salvador', - 'GQ': 'Equatoriaal-Guinea', - 'ER': 'Eritrea', - 'EE': 'Estland', - 'ET': 'Ethiopië', - 'FO': 'Faeröer', - 'FK': 'Falklandeilanden', - 'FJ': 'Fiji', - 'PH': 'Filipijnen', - 'FI': 'Finland', - 'FR': 'Frankrijk', - 'GF': 'Frans-Guyana', - 'PF': 'Frans-Polynesië', - 'TF': 'Franse Gebieden in de zuidelijke Indische Oceaan', - 'GA': 'Gabon', - 'GM': 'Gambia', - 'GE': 'Georgië', - 'GH': 'Ghana', - 'GI': 'Gibraltar', - 'GD': 'Grenada', - 'GR': 'Griekenland', - 'GL': 'Groenland', - 'GP': 'Guadeloupe', - 'GU': 'Guam', - 'GT': 'Guatemala', - 'GG': 'Guernsey', - 'GN': 'Guinee', - 'GW': 'Guinee-Bissau', - 'GY': 'Guyana', - 'HT': 'Haïti', - 'HM': 'Heard- en McDonaldeilanden', - 'IM': 'Het Eiland Man', - 'HN': 'Honduras', - 'HU': 'Hongarije', - 'HK': 'Hongkong SAR van China', - 'IS': 'IJsland', - 'IE': 'Ierland', - 'IN': 'India', - 'ID': 'Indonesië', - 'IQ': 'Irak', - 'IR': 'Iran', - 'IL': 'Israël', - 'IT': 'Italië', - 'CI': 'Ivoorkust', - 'JM': 'Jamaica', - 'JP': 'Japan', - 'YE': 'Jemen', - 'JE': 'Jersey', - 'JO': 'Jordanië', - 'CV': 'Kaapverdië', - 'CM': 'Kameroen', - 'KZ': 'Kazachstan', - 'KE': 'Kenia', - 'KG': 'Kirgizië', - 'KI': 'Kiribati', - 'KW': 'Koeweit', - 'HR': 'Kroatië', - 'LA': 'Laos', - 'LS': 'Lesotho', - 'LV': 'Letland', - 'LB': 'Libanon', - 'LR': 'Liberia', - 'LY': 'Libië', - 'LI': 'Liechtenstein', - 'LT': 'Litouwen', - 'LU': 'Luxemburg', - 'MO': 'Macao SAR van China', - 'MK': 'Macedonië', - 'MG': 'Madagaskar', - 'MW': 'Malawi', - 'MV': 'Malediven', - 'MY': 'Maleisië', - 'ML': 'Mali', - 'MT': 'Malta', - 'MA': 'Marokko', - 'MH': 'Marshalleilanden', - 'MQ': 'Martinique', - 'MR': 'Mauritanië', - 'MU': 'Mauritius', - 'YT': 'Mayotte', - 'MX': 'Mexico', - 'FM': 'Micronesië', - 'MD': 'Moldavië', - 'MC': 'Monaco', - 'MN': 'Mongolië', - 'ME': 'Montenegro', - 'MS': 'Montserrat', - 'MZ': 'Mozambique', - 'MM': 'Myanmar', - 'NA': 'Namibië', - 'NR': 'Nauru', - 'NL': 'Nederland', - 'AN': 'Nederlandse Antillen', - 'NP': 'Nepal', - 'NI': 'Nicaragua', - 'NC': 'Nieuw-Caledonië', - 'NZ': 'Nieuw-Zeeland', - 'NE': 'Niger', - 'NG': 'Nigeria', - 'NU': 'Niue', - 'KP': 'Noord-Korea', - 'MP': 'Noordelijke Marianeneilanden', - 'NO': 'Noorwegen', - 'NF': 'Norfolkeiland', - 'UG': 'Oeganda', - 'UA': 'Oekraïne', - 'UZ': 'Oezbekistan', - 'OM': 'Oman', - 'ZZ': 'Onbekend of onjuist gebied', - 'TL': 'Oost-Timor', - 'AT': 'Oostenrijk', - 'PK': 'Pakistan', - 'PW': 'Palau', - 'PS': 'Palestijns Gebied', - 'PA': 'Panama', - 'PG': 'Papoea-Nieuw-Guinea', - 'PY': 'Paraguay', - 'PE': 'Peru', - 'PN': 'Pitcairn', - 'PL': 'Polen', - 'PT': 'Portugal', - 'PR': 'Puerto Rico', - 'QA': 'Qatar', - 'RO': 'Roemenië', - 'RU': 'Rusland', - 'RW': 'Rwanda', - 'RE': 'Réunion', - 'BL': 'Saint Barthélemy', - 'KN': 'Saint Kitts en Nevis', - 'LC': 'Saint Lucia', - 'PM': 'Saint Pierre en Miquelon', - 'VC': 'Saint Vincent en de Grenadines', - 'SB': 'Salomoneilanden', - 'WS': 'Samoa', - 'SM': 'San Marino', - 'ST': 'Sao Tomé en Principe', - 'SA': 'Saoedi-Arabië', - 'SN': 'Senegal', - 'RS': 'Servië', - 'CS': 'Servië en Montenegro', - 'SC': 'Seychellen', - 'SL': 'Sierra Leone', - 'SG': 'Singapore', - 'SH': 'Sint-Helena', - 'MF': 'Sint-Maarten', - 'SI': 'Slovenië', - 'SK': 'Slowakije', - 'SD': 'Soedan', - 'SO': 'Somalië', - 'ES': 'Spanje', - 'LK': 'Sri Lanka', - 'SR': 'Suriname', - 'SJ': 'Svalbard en Jan Mayen', - 'SZ': 'Swaziland', - 'SY': 'Syrië', - 'TJ': 'Tadzjikistan', - 'TW': 'Taiwan', - 'TZ': 'Tanzania', - 'TH': 'Thailand', - 'TG': 'Togo', - 'TK': 'Tokelau', - 'TO': 'Tonga', - 'TT': 'Trinidad en Tobago', - 'TD': 'Tsjaad', - 'CZ': 'Tsjechië', - 'TN': 'Tunesië', - 'TR': 'Turkije', - 'TM': 'Turkmenistan', - 'TC': 'Turks- en Caicoseilanden', - 'TV': 'Tuvalu', - 'UY': 'Uruguay', - 'VU': 'Vanuatu', - 'VA': 'Vaticaanstad', - 'VE': 'Venezuela', - 'GB': 'Verenigd Koninkrijk', - 'AE': 'Verenigde Arabische Emiraten', - 'US': 'Verenigde Staten', - 'VN': 'Vietnam', - 'WF': 'Wallis en Futuna', - 'EH': 'Westelijke Sahara', - 'BY': 'Wit-Rusland', - 'ZM': 'Zambia', - 'ZW': 'Zimbabwe', - 'ZA': 'Zuid-Afrika', - 'GS': 'Zuid-Georgië en Zuidelijke Sandwicheilanden', - 'KR': 'Zuid-Korea', - 'SE': 'Zweden', - 'CH': 'Zwitserland' - }, - property: { - 'name': 'Titel', - 'description': 'Beschrijving', - 'labels': 'Labels', - 'calendarSummary': 'Kalendersamenvatting', - 'image': 'Afbeelding', - 'videos': 'Videos', - 'location': 'Locatie', - 'address': 'Adres', - 'organizer': 'Organisator', - 'priceInfo': 'Prijsinformatie', - 'kansentarief': 'Kansentarief', - 'bookingInfo': 'Reservatie-info', - 'contactPoint': 'Contactinfo', - 'status': 'Status', - 'bookingAvailability': 'Tickets & plaatsen', - 'attendance': 'Aanwezigheidsvorm (fysiek / online / beide)', - 'creator': 'Auteur', - 'terms.theme': 'Thema', - 'terms.eventtype': 'Type', - 'created': 'Datum aangemaakt', - 'modified': 'Datum laatste aanpassing', - 'publisher': 'Auteur', - 'available': 'Embargodatum', - 'endDate': 'Einddatum', - 'startDate': 'Begindatum', - 'calendarType': 'Tijd type', - 'sameAs': 'Externe IDs', - 'typicalAgeRange': 'Leeftijd', - 'language': 'Taal', - 'audience': 'Toegang' - }, - preview: { - tabs: { - 'data': 'Gegevens', - 'history': 'Historiek', - 'publication': 'Publicatie' - }, - 'not_found': 'Pagina niet gevonden', - 'not_found_help': 'Deze pagina kon niet gevonden worden.', - 'loading': 'Aan het laden...', - 'edit': 'Bewerken', - 'editMovie': 'Bewerken als film', - 'duplicate': 'Kopiëren en aanpassen', - 'duplicate_as_movie': 'Kopiëren en aanpassen als film', - 'change_availability': 'Beschikbaarheid wijzigen', - 'delete': 'Verwijderen', - 'title': 'Titel', - 'type': 'Type', - 'entrance': 'Toegang', - 'description': 'Beschrijving', - 'no_description': 'Geen beschrijving', - 'where': 'Waar', - 'bookable_event_location_info': 'Locatie in overleg met de school.', - 'online': 'Online', - 'online_location': 'Online deelname', - 'online_location_missing': 'Geen url voor online deelname', - 'when': 'Wanneer', - 'labels': 'Labels', - 'labels_error': 'Het toevoegen van het label \'{{labelName}}\' is niet gelukt.', - 'labels_success': 'Het label \'{{addedLabel}}\' werd succesvol toegevoegd.', - 'organizer': 'Organisatie', - 'no_organizer': 'Geen organisatie-informatie', - 'price': 'Prijs', - 'free': 'Gratis', - 'currency': 'euro', - 'no_price': 'Geen prijsinformatie', - 'booking_availability': 'Tickets & plaatsen', - 'booking_unavailable': 'Volzet of uitverkocht', - 'booking_available': 'Beschikbaar', - 'age_label': 'Geschikt voor', - 'all_ages': 'Alle leeftijden', - 'no_age': 'Geen leeftijdsinformatie', - 'videos_label': 'Videos', - 'no_videos': 'Geen video\'s', - 'publiq_url': 'Bekijk op {{publicationBrand}}', - 'translate': 'Vertalen', - 'info_lesson_series': 'Je lessenreeks verschijnt in UiTagenda\'s tot aan het eerste lesmoment.', - 'info_holiday_camp': 'Je kamp of vakantie verschijnt in UiTagenda\'s tot aan de startdag.' - }, - translate: { - 'ready': 'Klaar met vertalen', - 'translate': 'vertalen', - 'original': 'origineel', - 'edit': 'Bewerk', - 'translation': 'Vertaling', - 'description': 'Beschrijving', - 'title': 'Titel', - 'tariff': 'Prijstarief', - 'address': 'Adres', - 'street': 'Straat en nummer' - }, - labels: { - 'what': 'Met een label voeg je korte, specifieke trefwoorden toe.', - 'invalid': 'Dit lijkt een ongeldig label. Een label', - 'chars': 'bestaat enkel uit letters of cijfers', - 'excluded': 'bevat enkel \'-\' en \'_\', maar mag niet met deze tekens beginnen', - 'length': 'telt 2 tot 50 karakters' - }, - calendarSummary: { - 'openinghours': 'meerdere tijdstippen', - 'from': 'Van', - 'till': 'tot', - 'permanent': 'Permanent' - }, - moderate: { - 'infoAlert': '

Welkom op de validatiepagina. Op deze pagina kan je als decentrale validator evenementen goed -of afkeuren:

  • Afkeuren. Afgekeurde evenementen worden niet meer gepubliceerd op UiTinVlaanderen of andere UiTagenda\'s en kunnen niet meer bewerkt worden door de invoerder.
  • Goedkeuren. Goedgekeurde evenementen blijven gepubliceerd op UiTinVlaanderen en de eigen UiTagenda en komen niet opnieuw ter validatie.

Een leidraad voor het valideren vind je in de contentregels van UiTdatabank.

', - 'validate': 'Valideren', - 'approve': 'Goedkeuren', - 'approved': 'Goedgekeurd', - 'reject': 'Afkeuren', - 'rejected': 'Afgekeurd', - 'continue_validation': 'Verder valideren' - }, - cultuurkuur: { - 'info': 'Dit evenement bevat extra informatie voor scholen en leerkrachten.', - 'subject': 'Onderwerp', - 'target_group': 'Doelgroep', - 'levels': 'Geschikt voor', - 'grades': 'onderwijsgraden', - 'edit_link': 'Wijzig op cultuurkuur.be', - 'incomplete_help': 'Vervolledig dit evenement op cultuurkuur.be met extra informatie voor scholen en leerkrachten.', - 'continue': 'Doorgaan' - }, - booking: { - 'label': 'Reservatie', - 'no_booking': 'Geen reservatie-informatie' - }, - contact: { - 'label': 'Contact', - 'or': 'of', - 'no_contact': 'Geen contactinformatie' - }, - imageDetail: { - 'label': 'Afbeeldingen', - 'alt_image': 'Afbeelding {{index}}', - 'main_image': 'Hoofdafbeelding', - 'no_images': 'Geen afbeeldingen' - }, - prices: { - 'title': 'Prijzen toevoegen', - 'base': 'Basistarief', - 'target_group': 'Doelgroep', - 'free': 'Gratis', - 'currency': 'euro', - 'add_price': 'Prijs invoeren', - 'add_tarriff': 'Tarief toevoegen', - 'error': 'Er ging iets fout bij het opslaan van de prijs.', - 'invalid': 'Deze prijsinformatie lijkt ongeldig en kan je daarom niet bewaren.', - 'invalid_tip1': 'Noteer decimalen met een komma.', - 'invalid_tip2': 'Laat geen enkel rij leeg, vul steeds een doelgroep en een bedrag in.', - 'invalid_tip3': 'Geef maximum twee cijfers na de komma.', - 'close': 'Sluiten', - 'save': 'Bewaren' - }, - location: { - 'title': 'Nieuwe locatie toevoegen', - 'name': 'Naam locatie', - 'name_validation': 'De naam van de locatie is een verplicht veld.', - 'street': 'Straat en nummer', - 'street_validation': 'Straat is een verplicht veld.', - 'city': 'Gemeente', - 'category': 'Categorie', - 'category_help': 'Kies een categorie die deze locatie het best omschrijft.', - 'category_validation': 'Categorie is een verplicht veld.', - 'error': 'Er ging iets fout tijdens het opslaan van je locatie.', - 'invalid_street': 'Dit lijkt een ongeldig adres. Wanneer je spaties gebruikt in het adres, mogen er na de laatste spatie niet meer dan 15 karakters staan.', - 'cancel': 'Annuleren', - 'add': 'Toevoegen', - 'zip': 'Postcode', - 'nlPostalCode_validation': 'Postcode is een verplicht veld.', - 'invalid_PostalCode': 'Dit lijkt een ongeldige postcode. Een postcode bestaat uit 4 cijfers en 2 letters, zonder een spatie ertussen.' - }, - eventForm: { - 'langWarning': 'Opgelet, je (be)werkt in een andere taal: {{language}}. Is dit niet de bedoeling, neem dan contact op met vragen@uitdatabank.be.', - step1: { - 'title': 'Wat wil je toevoegen?', - 'label_event': 'Een evenement', - 'show_everything': 'Toon alles', - 'or': 'of', - 'location_label': 'Een locatie', - 'change': 'Wijzigen', - 'refine': 'Verfijn', - 'info_lesson_series': 'Je lessenreeks verschijnt in UiTagenda\'s tot aan het eerste lesmoment.' - }, - step2: { - 'date_help_event': 'Wanneer vindt dit evenement of deze activiteit plaats?', - 'date_help_place': 'Wanneer is deze plaats of locatie open?', - }, - step3: { - 'title_event': 'Waar vindt dit evenement of deze activiteit plaats?', - 'title_place': 'Waar is deze plaats of locatie?', - 'choose_city': 'Kies een gemeente', - 'choose_city_helper': 'bv. Gent of 9000', - 'choose_residence': 'Kies een woonplaats', - 'choose_residence_helper': 'bv. Groningen of Amsterdam', - 'placeholder_city': 'Gemeente of postcode', - 'problem_city': 'Er was een probleem tijdens het ophalen van de steden', - 'change': 'Wijzigen', - 'choose_location': 'Kies een locatie', - 'placeholder_location': 'Naam of adres', - 'location_not_found': 'Locatie niet gevonden?', - 'add_location': 'Een locatie toevoegen', - 'location_error': 'Er was een probleem tijdens het ophalen van de locaties', - 'street': 'Straat en nummer', - 'placeholder_street': 'Kerkstraat 1', - 'street_validate': 'Straat en nummer is een verplicht veld.', - 'street_validate_long': 'Dit lijkt een ongeldig adres. Wanneer je spaties gebruikt in het adres, mogen er na de laatste spatie niet meer dan 15 karakters staan.', - 'ok': 'OK', - 'zip': 'Postcode', - 'zip_validate': 'Postcode is een verplicht veld.', - 'invalid_zip': 'Dit lijkt een ongeldige postcode. Een postcode bestaat uit 4 cijfers en 2 letters, zonder een spatie ertussen.', - 'bookable_event_info_alert': 'Evenementen waarvan de locatie in overleg wordt bepaald, worden niet gepubliceerd op UiTinVlaanderen of andere publiekskanalen. Je evenement verschijnt wel op cultuurkuur.be', - 'bookable_event_next_button': 'Ga verder', - 'bookable_event_success_message': 'De locatie wordt bepaald in overleg met de school.' - }, - step4: { - age: { - 'age_label': 'Geschikt voor', - 'All ages': 'Alle leeftijden', - 'Toddlers': 'Peuters', - 'Preschoolers': 'Kleuters', - 'Kids': 'Kinderen', - 'Teenagers': 'Tieners', - 'Youngsters': 'Jongeren', - 'Adults': 'Volwassenen', - 'Seniors': 'Senioren', - 'Custom': 'Andere', - 'from': 'Van', - 'till': 'Tot', - 'age': 'jaar', - 'error_max_lower_than_min': 'De maximumleeftijd kan niet lager zijn dan de minimumleeftijd.' - }, - 'basic_data': 'Basisgegevens', - 'name_event': 'Naam van het evenement', - 'name_place': 'Naam van de locatie', - 'help_event': 'Gebruik een sprekende titel, bv. \"Fietsen langs kapelletjes\", \"De Sage van de Eenhoorn\".', - 'help_place': 'Gebruik de officiële benaming, bv. \"Gravensteen\", \"Abdijsite Herkenrode\", \"Cultuurcentrum De Werf\".', - 'help_description': 'Een uitgebreide beschrijving kan je in stap 5 toevoegen.', - 'info_missing': 'Je vulde niet alle verplichte informatie in:', - 'save_error': 'Er ging iets fout tijdens het opslaan van je activiteit. Gelieve later opnieuw te proberen.', - 'continue': 'Doorgaan', - 'doubles_title': 'Vermijd dubbel werk', - 'doubles_help': 'We vonden gelijkaardige items. Controleer deze eerder ingevoerde items.', - 'sure': 'Ben je zeker dat je \"{{name}}\" wil toevoegen?', - 'return_dashboard': 'Nee, keer terug naar dashboard', - 'yes_continue': 'Ja, doorgaan met invoeren', - suggestions: { - 'from': 'Van', - 'till': 'tot', - 'permanent': 'Permanent' - } - }, - step5: { - 'expose_event': 'Laat je evenement extra opvallen', - 'expose_place': 'Laat deze locatie extra opvallen', - 'title': 'Titel', - 'description': 'Beschrijving', - 'add_text': 'Tekst toevoegen', - 'required_200': 'De eerste 200 tekens zijn het belangrijkst om een nieuw publiek aan te spreken.', - 'required_still': 'Nog', - 'required_signs': 'tekens.', - 'required_200_help': 'Plaats de belangrijkste boodschap in de eerste 200 tekens. Je kan nog verder aanvullen met achtergrondinformatie.', - 'empty': 'Leegmaken', - 'tips': { - 'Concert': 'Geef een enthousiaste omschrijving van het concert.
  • Welk(e) artiest(en) treden op? 
  • Welk genre is het?
  • Welk album of werk wordt voorgesteld?
', - 'Dansvoorstelling': 'Geef een enthousiaste omschrijving van de dansvoorstelling.
  • Wie is de choreograaf?
  • Wie zijn de dansers?
  • In welke stijl dansen ze?
  • Over welk thema of onderwerp gaat de voorstelling?
', - 'Festival': 'Geef een enthousiaste omschrijving van het festival. 
  • Wie of wat staat er op het programma? 
  • Welke (rand)animatie is er?
', - 'Film': 'Geef een enthousiaste omschrijving van de film. 
  • Schets kort het verhaal
  • Wie is de regisseur? 
  • Wie zijn de  hoofdrolspelers? 
  • Heeft de film prijzen gewonnen?
', - 'Lezing of congres': 'Geef een enthousiaste omschrijving van de lezing of het congres. 
  • Welke thema’s komen aan bod? 
  • Welke sprekers nemen het woord?
', - 'Theatervoorstelling': 'Geef een enthousiaste omschrijving van de voorstelling. 
  • Schets kort het verhaal of het thema
  • Welk theatergezelschap brengt het stuk? 
  • Welke acteurs spelen mee?
', - 'Sportwedstrijd bekijken': 'Geef een enthousiaste omschrijving van de sportwedstrijd. 
  • Welke ploegen of deelnemers spelen er mee? 
  • In welke competitie kadert de wedstrijd?
', - 'Markt of braderie': 'Geef een enthousiaste omschrijving van de markt of braderie.
  • In welke straten vindt ze plaats? 
  • Welke kramen of standjes zullen er zijn? 
  • Is er (rand)animatie?
', - 'Opendeurdag': 'Geef een enthousiaste omschrijving van de opendeurdag. Wat kan je bekijken of beleven?', - 'Beurs': 'Geef een enthousiaste omschrijving van de beurs. Wat kan je kan bekijken, beleven of kopen?', - 'Tentoonstelling': 'Geef een enthousiaste omschrijving van de tentoonstelling. 
  • Welke kunstenaars stellen tentoon?
  • Welke collecties kan je bekijken? 
  • Is er een (audio)gids of brochure beschikbaar?
', - 'Begeleide uitstap of rondleiding': 'Geef een enthousiaste omschrijving van de rondleiding. 
  • Wat valt er langs de route te bekijken of beleven
  • Is er een maximaal aantal deelnemers
  • Wordt de rondleiding doorlopend of op bepaalde tijdstippen georganiseerd? 
  • Zijn er speciale aandachtspunten (bv. laarzen aangewezen)?
', - 'Lessenreeks': 'Geef een enthousiaste omschrijving van de lessenreeks. 
  • Wat leer je er precies? 
  • Is er voorkennis nodig om deel te nemen? 
  • Wat is het niveau van de lessen? 
  • Krijg je op het einde een diploma of certificaat?
', - 'Cursus met open sessies': 'Geef een enthousiaste omschrijving van de workshop of cursus met open sessies. 
  • Wat leer je er precies? 
  • Is er voorkennis nodig om deel te nemen? 
  • Wat is het niveau van de lessen? 
  • Krijg je op het einde een diploma of certificaat?
', - 'Kamp of vakantie': 'Geef een enthousiaste omschrijving van het kamp of de vakantie. 
  • Welke activiteiten kan je er doen? 
  • Is er een thema
  • Is het kamp met of zonder overnachtingen
  • Wat is het start en einduur voor dagkampen en is er vooraf en nadien opvang voorzien?
', - 'Festiviteit': 'Geef een enthousiaste omschrijving van de kermis. 
  • Welke attracties zijn er? 
  • Zijn er (rand)activiteiten (quiz, concerten, foodtrucks, marktje ...)?
', - 'Route': 'Geef een enthousiaste omschrijving van de route. 
  • Leg je de route af te voet, per fiets, per boot …? 
  • Welke mogelijke tussenstops zijn er? 
  • Wat is de afstand of duur van de route?
  • Is de route begeleid, met een gids, brochure of wegwijzers?
', - 'Party of fuif': 'Geef een enthousiaste omschrijving van de party of fuif. Welke dj’s of bands treden er op?', - 'Eet of drankfestijn': 'Geef een enthousiaste omschrijving van het eet -of drankfestijn. 
  • Wat staat er op het menu? 
  • Gaat de opbrengst naar een goed doel
  • Is er (rand)animatie?
', - 'Spel of quiz': 'Geef een enthousiaste omschrijving van de quiz of het spel. 
  • Over welke onderwerpen gaat de quiz?
  • Heeft het spel een thema?
  • Valt er iets te winnen?
  • Is er een maximaal aantal deelnemers?
', - 'Sport en beweging': 'Geef een enthousiaste omschrijving van de sportactiviteit. 
  • Welke sport(en) kan je beoefenen? 
  • Welk materiaal wordt (niet) voorzien?
', - 'Monument': 'Geef hier een wervende omschrijving van het monument. Geef ook aan indien het monument slechts beperkt opengesteld is (vb. enkel salons).' - }, - 'description_error': 'Er ging iets fout bij het opslaan van de beschrijving.', - 'organizer': 'Organisatie', - 'add_organizer': 'Organisatie toevoegen', - 'choose_organizer': 'Kies een organisatie', - 'organizer_not_found': 'Organisatie niet gevonden?', - 'add_new_organizer': 'Nieuwe organisator toevoegen', - 'organizer_error': 'Er ging iets fout bij het opslaan van de organisator.', - 'contact': 'Contact & reservatie', - 'add_contact': 'Contactinformatie toevoegen', - 'website': 'Website', - 'phone': 'Telefoonnummer', - 'e-mail': 'E-mailadres', - 'use_booking': 'Gebruik voor reservatie', - 'booking_exposure': 'Hoe mag deze link verschijnen?', - 'buy_tickets': 'Koop tickets', - 'reserve_places': 'Reserveer plaatsen', - 'check_availability': 'Controleer beschikbaarheid', - 'subscribe': 'Schrijf je in', - 'add_more_contact': 'Meer contactgegevens toevoegen', - 'contact_error': 'Er ging iets fout bij het opslaan van de contact info.', - 'facilities': 'Toegankelijkheid', - 'add_facility': 'Voorzieningen toevoegen', - 'facility_inapplicable': 'Niet van toepassing', - 'change': 'Wijzigen', - 'image_help': 'Voeg een afbeelding toe zodat je bezoekers je activiteit beter herkennen.', - 'images': 'Afbeeldingen', - 'copyright': 'Copyright', - 'delete': 'Verwijderen', - 'main_image': 'Maak hoofdafbeelding', - 'add_image': 'Afbeelding toevoegen', - priceInfo: { - 'price_label': 'Prijs', - 'add_prices': 'Prijzen toevoegen', - 'free': 'Gratis', - 'prices': 'Prijzen', - 'change': 'Wijzigen', - 'currency': 'euro' - }, - reservationPeriod: { - 'add_reservation_period': 'Reservatieperiode toevoegen', - 'reservation_period': 'Reservatie periode', - 'from': 'Van', - 'till': 'Tot' - } - }, - publish: { - 'publish_now': 'Meteen publiceren', - 'publish_later': 'Later publiceren', - 'edit_done': 'Klaar met bewerken', - 'online_from': 'Online vanaf' - }, - timeTracker: { - 'automatic_saved': 'Automatisch bewaard om', - 'hour': 'uur', - }, - embargo: { - 'title': 'Kies een publicatiedatum', - 'help': 'Vanaf wanneer mag dit online verschijnen? Opgelet, deze datum kan je maar één keer instellen.', - 'error_past': 'Een publicatiedatum kan niet in het verleden liggen.', - 'error_empty': 'Kies een publicatiedatum.', - 'cancel': 'Annuleren', - 'ready': 'Klaar met bewerken' - }, - imageUpload: { - 'modalTitle': 'Afbeelding toevoegen', - 'defaultError': 'Het geselecteerde bestand voldoet niet aan onze voorwaarden.', - 'noFileSelectedError': 'Er is geen bestand geselecteerd', - 'somethingWentWrongError': 'Er ging iets mis bij het opslaan van de afbeelding.', - 'maxSize': 'Het bestand dat je probeert te uploaden is te groot. De maximum grootte is ', - 'formatNotValidError': 'Het geüpload bestand is geen geldige afbeelding.', - 'extensionsAllowed': 'Enkel bestanden met de extenties .jpeg, .gif of .png zijn toegelaten.', - 'sizeError': 'Het geüpload bestand is te groot.' - } - }, - offerStatus: { - 'scheduled': 'Gaat door', - 'cancelled': 'Geannuleerd', - 'postponed': 'Uitgesteld', - 'open': 'Open', - 'temporarilyClosed': 'Tijdelijk gesloten', - 'permanentlyClosed': 'Permanent gesloten', - }, - bookingAvailability: { - 'unavailable': 'Volzet of uitverkocht' - }, - calendar: { - 'one_more_days': 'Eén of meerdere dagen', - 'or': 'of', - 'default_days': 'Vaste dagen per week', - 'start_label': 'Start', - 'end_label': 'Einde', - 'whole_day_label': 'Hele dag', - 'start_hour_label': 'Beginuur', - 'end_hour_label': 'Einduur', - 'add_days': 'Dag(en) toevoegen', - period: { - 'title': 'Start- en einddatum', - 'from': 'Van', - 'till': 'Tot', - 'alert': 'Geef zowel een begin- als einddatum in. De einddatum kan niet voor de begindatum vallen.' - }, - openingHours: { - 'permanent_title': '24/24, 7/7', - 'permanent_subtitle': 'Elke dag, ieder uur', - 'add_hours': 'Uren toevoegen', - 'opening_hours': 'Openingsuren', - 'change': 'Wijzigen', - 'days': 'Dagen', - 'from': 'Van', - 'till': 'Tot', - 'more_hours': 'Meer openingstijden toevoegen', - 'cancel': 'Annuleren', - 'save': 'Opslaan' - } - }, - 'facilityLabel': { - 'motor': 'Voorzieningen voor personen met een motorische beperking', - 'visual': 'Voorzieningen voor personen met een visuele beperking', - 'hearing': 'Voorzieningen voor personen met een auditieve beperking', - 'other': 'Andere voorzieningen', - 'place': 'Voorzieningen op deze locatie', - 'mental': 'Voorzieningen voor personen met een verstandelijke beperking', - 'neurodivers': 'Voorzieningen voor neurodiverse personen', - }, - audience: { - 'entrance': 'Toegang', - 'everyone': 'Voor iedereen', - 'members': 'Enkel voor leden', - 'members_help': 'Je item wordt enkel gepubliceerd op kanalen voor verenigingen en hun leden.', - 'education': 'Specifiek voor scholen', - 'education_help': 'Je item wordt enkel gepubliceerd op cultuureducatieve kanalen zoals cultuurkuur.be. Na het publiceren kan je nog specifieke informatie voor scholen toevoegen.' - }, - workflowStatus: { - 'label': 'Publicatiestatus', - 'id': 'ID', - 'DRAFT': 'Niet gepubliceerd', - 'READY_FOR_VALIDATION': 'Gepubliceerd', - 'APPROVED': 'Online vanaf', - 'REJECTED': 'Publicatie afgewezen', - 'DELETED': 'Niet gepubliceerd', - 'rules': 'Bekijk de regels', - 'rejected_full': 'Dit item werd afgewezen voor publicatie.' - }, - queryFieldGroup: { - 'what': 'Wat', - 'where': 'Waar', - 'when': 'Wanneer', - 'input-information': 'Invoerdersinformatie', - 'translations': 'Vertalingen', - 'other': 'Andere' - }, - 'queryFieldLabel': { - 'cdbid': 'identificatiecode (CDBID)', - 'offertype': 'type (aanbod)', - 'keywords': 'label', - 'title': 'titel', - 'category_eventtype_name': 'type (activiteit)', - 'locationtype': 'type (locatie)', - 'category_theme_name': 'thema', - 'text': 'tekst', - 'city': 'gemeente (naam)', - 'zipcode': 'postcode', - 'location_id': 'locatie (id)', - 'country': 'land', - 'location_name': 'locatie (naam)', - 'location_labels': 'locatie (labels)', - 'category_flandersregion_name': 'regio / gemeente', - 'nisRegions': 'regio / gemeente', - 'date': 'datum', - 'permanent': 'permanent', - 'lastupdated': 'laatst aangepast', - 'creationdate': 'gecreëerd', - 'createdby': 'gecreëerd door', - 'availablefrom': 'datum beschikbaar', - 'detail_lang': 'vertaling', - 'organiser_keywords': 'label organisatie', - 'organiser_id': 'organisatie (id)', - 'agefrom': 'leeftijd', - 'attendance_mode': 'aanwezigheidsvorm', - 'price': 'prijs', - 'status': 'status', - 'booking_availability': 'tickets & plaatsen', - 'organiser_label': 'organisatie (naam)', - 'category_facility_name': 'voorzieningen', - 'category_targetaudience_name': 'doelgroep', - 'startdate': 'startdatum', - 'enddate': 'einddatum', - 'lastupdatedby': 'laatst aangepast door', - 'category_publicscope_name': 'publieksbereik' - }, - 'EVENT-EXPORT': { - 'QUERY-IS-MISSING': 'Een export is pas mogelijk nadat je een zoekopdracht hebt uitgevoerd', - 'TOO-MANY-ITEMS': 'Een manuele export met meer dan {{limit}} items is niet mogelijk. Contacteer vragen@uitdatabank.be voor een oplossing op maat.' - }, - 'AANBOD_INVOEREN': 'Aanbod invoeren', - 'AANBOD_BEWERKEN': 'Aanbod bewerken', - 'AANBOD_MODEREREN': 'Aanbod modereren', - 'AANBOD_VERWIJDEREN': 'Aanbod verwijderen', - 'AANBOD_HISTORIEK': 'Historiek raadplegen', - 'ORGANISATIES_BEHEREN': 'Organisaties beheren', - 'GEBRUIKERS_BEHEREN': 'Gebruikers beheren', - 'LABELS_BEHEREN': 'Labels beheren', - 'VOORZIENINGEN_BEWERKEN': 'Voorzieningen bewerken', - 'ORGANISATIES_BEWERKEN': 'Organisaties bewerken', - 'PRODUCTIES_AANMAKEN': 'Producties aanmaken', - 'FILMS_AANMAKEN': 'Films aanmaken', - 'event type missing': 'Koos je een type in stap 1?', - 'timestamp missing': 'Koos je een datum in stap 2?', - 'start or end date missing': 'Koos je een begin- en einddatum in stap 2?', - 'when missing': 'Maakte je een keuze in stap 2?', - 'place missing for event': 'Koos je een plaats in stap 3?', - 'location missing for place': 'Koos je een locatie in stap 3?', - 'title is missing': 'Gaf je je aanbod een titel in stap 4?', - 'age range is missing': 'Gaf je je aanbod een leeftijdsgroep in stap 4?', - 'UNIQUE_ORGANIZER_NOTICE': 'Om organisaties in de UiTdatabank uniek bij te houden, vragen we elke organisatie een unieke & geldige hyperlink.', - 'OPENING_HOURS_ERROR': { - 'openAndClose': 'Vul alle openings- en sluitingstijden in.', - 'dayOfWeek': 'Kies minstens één dag in elke rij die je toevoegde.', - 'openIsBeforeClose': 'Gelieve een sluitingstijd in te geven die later is dan de openingstijd.' - }, - 'TIME_SPAN_REQUIREMENTS': { - 'timedWhenNotAllDay': 'Een eind- en beginuur zijn verplicht wanneer een evenement niet de hele dag duurt.', - 'startBeforeEndDay': 'De einddatum kan niet voor de begindatum vallen.', - 'startBeforeEnd': 'Het einduur kan niet voor het beginuur vallen.', - 'tooFarInFuture': 'De gekozen einddatum en startdatum mogen niet verder dan 10 jaar in de toekomst liggen.' - }, - uitpas: { - uitpasInfo: { - 'uitpas': 'UiTPAS', - 'uitpas_alert': 'Dit is een UiTPAS organisator. Selecteer een prijs om specifieke UiTPAS-informatie toe te voegen.', - 'uitpas_info': 'Dit is een UiTPAS activiteit.', - 'cantChangePrice': 'Voor dit evenement zijn al UiTPAS-tickets verkocht met de bestaande prijsinformatie. Je kan de prijsinformatie niet meer wijzigen.', - 'cantChangeOrganiser': 'Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen.', - 'unavailable': 'Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen.' - }, - cardSystems: { - 'card_systems': 'Kaartsystemen', - 'choose': '--Selecteer een verdeelsleutel--', - 'retry': 'Opnieuw registreren', - 'already_has_ticketsales': 'Voor dit evenement zijn al UiTPAS-tickets verkocht. Je kan de organisatie niet meer wijzigen.', - 'not_found': 'Deze activiteit is nog niet gekend bij UiTPAS.' - } - }, - images: { - 'agreement': 'Je staat op het punt (een) afbeelding(en) toe te voegen en openbaar te verspreiden. Je dient daartoe alle geldende auteurs- en portretrechten te respecteren, alsook alle andere toepasselijke wetgeving. Je kan daarvoor aansprakelijk worden gehouden, zoals vastgelegd in de', - 'conditions': 'algemene voorwaarden', - 'conditions_url': 'https://www.publiq.be/nl/gebruikersovereenkomst-uitdatabank', - 'copyright_info': 'Meer informatie over copyright', - 'description': 'Beschrijving', - 'description_help': 'Maximum 250 karakters', - 'copyright': 'Copyright', - 'copyright_help': 'Vermeld de naam van de rechtenhoudende fotograaf. Vul alleen de naam van je eigen vereniging of organisatie in als je zelf de rechten bezit (minimum 2 karakters).', - 'cancel': 'Annuleren', - 'agree': 'Akkoord', - upload: { - 'select_image': 'Selecteer je foto', - 'choose_file': 'Kies bestand', - 'max_filesize': 'De maximale grootte van je afbeelding is {{maxFileSize}} en heeft als type .jpeg, .gif of .png', - 'upload': 'Opladen' - }, - edit: { - 'title': 'Afbeelding info bewerken', - 'description_help': 'Een goede beschrijving van je afbeelding wordt gelezen door zoekmachines en gebruikers met een visuele beperking. (max. 250 karakters)', - 'save_error': 'Er ging iets mis bij het opslaan van de afbeelding.', - 'update': 'Bijwerken' - }, - remove: { - 'title': 'Afbeeldingen verwijderen', - 'sure': 'Ben je zeker dat je deze afbeelding wil verwijderen?', - 'save_error': 'Er ging iets mis bij het verwijderen van de afbeelding.', - } - }, - organizer: { - modal: { - 'title': 'Nieuwe organisatie toevoegen', - 'avoid_doubles': 'Vermijd dubbel werk', - 'unique_notice': 'Om organisaties in de UiTdatabank uniek bij te houden, vragen we elke organisatie een unieke & geldige hyperlink.', - 'website': 'Website', - 'alert_warning': 'Dit adres is al gebruikt door de organisatie \'{{organizerName}}\'. Geef een unieke website of', - 'alert_button': 'gebruik {{organizerName}} als organisatie', - 'name_help': 'De officiële publieke naam van de organisatie.', - 'name_required': 'Gelieve een naam in te vullen', - 'name_maxlength': 'De naam van de organisatie kan maar 250 karakters bevatten.', - 'add_confirm': 'Ben je zeker dat je \"{{newOrganizerName}}\" wil toevoegen als organisatie? Dubbele invoer van organisaties is niet toegelaten.', - 'doubles': 'We vonden deze gelijkaardige items:', - 'select': 'Selecteren', - 'your_input': 'Jij voerde in:', - 'still_enter': 'Toch invoeren', - 'save_error': 'Er ging iets fout tijdens het opslaan van je organisatie.', - 'address_error': 'Gelieve een geldig adres in te vullen.', - 'contact_error': 'Gelieve alle contactinfo correct in te vullen.', - 'close': 'Sluiten', - 'save': 'Bewaren', - 'label_name': 'Naam' - }, - address: { - 'label_street': 'Straat en nummer', - 'help_street': 'Gelieve straat en nummer in te geven.', - 'help_zip': 'Gelieve een postcode in te geven.', - 'validate_zip': 'Dit lijkt een ongeldige postcode. Een postcode bestaat uit 4 cijfers en 2 letters, zonder een spatie ertussen.', - 'label_city': 'Gemeente', - 'label_residence': 'Woonplaats', - 'help_city': 'Er was een probleem tijdens het ophalen van de steden.', - 'error_city': 'Gelieve een gemeente in te geven.', - 'change': 'Wijzigen', - 'zip': 'Postcode', - 'delete': 'Leegmaken', - 'delete_success': 'Adres succesvol verwijderd', - 'delete_error': 'Er liep iets fout tijdens het verwijderen van jouw adres' - }, - contact: { - 'title': 'Contact', - 'enter_url': 'Geef een URL in', - 'enter_email': 'Geef een e-mailadres in', - 'enter_phone': 'Geef een telefoonnummer in, bv. 011 32 43 54', - 'required': 'Gelieve dit veld niet leeg te laten.', - 'valid_url': 'Gelieve een geldige url in te vullen.', - 'valid_email': 'Gelieve een geldig e-mailadres in te vullen.', - 'valid_phone': 'Gelieve een geldig telefoonnummer in te vullen.', - 'cancel': 'Annuleren', - 'add': 'Toevoegen', - 'add_phone': 'Telefoonnummer toevoegen', - 'add_email': 'E-mailadres toevoegen', - 'add_url': 'Andere website toevoegen' - }, - manage: { - 'edit': 'Bewerken', - 'delete': 'Verwijderen', - 'overview': 'Terug naar overzicht', - 'dashboard': 'Terug naar dashboard', - 'name': 'Naam', - 'description': 'Beschrijving', - 'educational_description': 'Beschrijving Cultuurkuur', - 'address': 'Adres', - 'website': 'Website', - 'phone': 'Telefoonnummer', - 'email': 'E-mailadres', - 'labels': 'Labels', - 'removed': 'Deze organisatie is verwijderd.' - } - }, - duplicate: { - title: 'Kopiëren en aanpassen', - description: 'Je staat op het punt een evenement te kopiëren. Kies een tijdstip voor dit evenement.', - error: 'Er ging iets mis tijdens het aanmaken van een kopie!' - }, - dashboard: { - 'welcome': 'Welkom,', - 'no_items': 'Je hebt nog geen items toegevoegd.', - 'add_activity': 'Een activiteit of locatie toevoegen?', - 'my_activities': 'Mijn activiteiten en locaties', - 'my_organizers': 'Mijn organisaties', - 'add': 'Toevoegen', - 'add_organizer': 'Organisatie toevoegen', - directive: { - 'no_publish': 'Niet gepubliceerd!', - 'online': 'Online op', - 'edit': 'Bewerken', - 'example': 'Voorbeeld', - 'delete': 'Verwijderen', - 'expired_event': 'Afgelopen evenement' - }, - delete: { - 'sure': 'Ben je zeker dat je \"{{name}}\" wil verwijderen?', - 'error_location': 'De locatie \"{{name}}\" kan niet verwijderd worden omdat er activiteiten gepland zijn.', - 'error': 'Er ging iets fout bij het verwijderen van de activiteit.', - 'cancel': 'Annuleren', - 'delete': 'Verwijderen' - } - }, - entry: { - 'exported_documents': 'Geëxporteerde documenten', - 'notifications': 'Meldingen', - 'in_progress': 'Bezig' - }, - offerTypes: { - 'Concert': 'Concert', - 'Theatervoorstelling': 'Theatervoorstelling', - 'Lezing of congres': 'Lezing of congres', - 'Dansvoorstelling': 'Dansvoorstelling', - 'Festival': 'Festival', - 'Film': 'Film', - 'Sportwedstrijd bekijken': 'Sportwedstrijd bekijken', - 'Cursus met open sessies': 'Cursus met open sessies', - 'Lessenreeks': 'Lessenreeks', - 'Sport en beweging': 'Sport en beweging', - 'Kamp of vakantie': 'Kamp of vakantie', - 'Begeleide uitstap of rondleiding': 'Begeleide rondleiding', - 'Route': 'Route', - 'Spel of quiz': 'Spel of quiz', - 'Party of fuif': 'Party of fuif', - 'Festiviteit': 'Festiviteit', - 'Congres of studiedag': 'Congres of studiedag', - 'Eet- of drankfestijn': 'Eet- of drankfestijn', - 'Thema of pretpark': 'Thema of pretpark', - 'Theater': 'Theater', - 'Jeugdhuis of jeugdcentrum': 'Jeugdhuis of jeugdcentrum', - 'Cultuur- of ontmoetingscentrum': 'Cultuur- of ontmoetingscentrum', - 'Discotheek': 'Discotheek', - 'Bibliotheek of documentatiecentrum': 'Bibliotheek of documentatiecentrum', - 'Bioscoop': 'Bioscoop', - 'Horeca': 'Horeca', - 'Openbare ruimte': 'Openbare ruimte', - 'Tentoonstelling': 'Tentoonstelling', - 'Markt, braderie of kermis': 'Markt, braderie of kermis', - 'Natuur, park of tuin': 'Natuur, park of tuin', - 'Beurs': 'Beurs', - 'Monument': 'Monument', - 'Opendeurdag': 'Opendeurdag', - 'Recreatiedomein of centrum': 'Recreatiedomein of centrum', - 'Park of tuin': 'Park of tuin', - 'Archeologische Site': 'Archeologische Site', - 'School of onderwijscentrum': 'School of onderwijscentrum', - 'Sportcentrum': 'Sportcentrum', - 'Winkel': 'Winkel', - 'Speeltuin': 'Speeltuin', - 'Museum of galerij': 'Museum of galerij', - 'Zaal of expohal': 'Zaal of expohal' - }, - offerThemes: { - 'Antiek en brocante': 'Antiek en brocante', - 'Architectuur': 'Architectuur', - 'Audiovisuele kunst': 'Audiovisuele kunst', - 'Beeldhouwkunst': 'Beeldhouwkunst', - 'Fotografie': 'Fotografie', - 'Grafiek': 'Grafiek', - 'Installatiekunst': 'Installatiekunst', - 'Schilderkunst': 'Schilderkunst', - 'Decoratieve kunst': 'Decoratieve kunst', - 'Design': 'Design', - 'Mode': 'Mode', - 'Meerdere kunstvormen': 'Meerdere kunstvormen', - 'Ballet en klassieke dans': 'Ballet en klassieke dans', - 'Volksdans en werelddans': 'Volksdans en werelddans', - 'Stijl en salondansen': 'Stijl en salondansen', - 'Moderne dans': 'Moderne dans', - 'Erfgoed': 'Erfgoed', - 'Actie- en avonturenfilm': 'Actie- en avonturenfilm', - 'Animatie en kinderfilms': 'Animatie en kinderfilms', - 'Documentaires en reportages': 'Documentaires en reportages', - 'Griezelfilm of horror': 'Griezelfilm of horror', - 'Historische film': 'Historische film', - 'Komedie': 'Komedie', - 'Kortfilm': 'Kortfilm', - 'Filmmusical': 'Filmmusical', - 'Drama': 'Drama', - 'Science fiction': 'Science fiction', - 'Cinefiel': 'Cinefiel', - 'Thriller': 'Thriller', - 'Meerdere filmgenres': 'Meerdere filmgenres', - 'Geschiedenis': 'Geschiedenis', - 'Gezondheid en wellness': 'Gezondheid en wellness', - 'Landbouw en platteland': 'Landbouw en platteland', - 'Milieu en natuur': 'Milieu en natuur', - 'Literatuur': 'Literatuur', - 'Poëzie': 'Poëzie', - 'Fictie': 'Fictie', - 'Non fictie': 'Non fictie', - 'Strips': 'Strips', - 'Klassieke muziek': 'Klassieke muziek', - 'Jazz en blues': 'Jazz en blues', - 'Pop en rock': 'Pop en rock', - 'Hiphop, r&b en rap': 'Hiphop, r&b en rap', - 'Dance muziek': 'Dance muziek', - 'Folk en wereldmuziek': 'Folk en wereldmuziek', - 'Amusementsmuziek': 'Amusementsmuziek', - 'Politiek en maatschappij': 'Politiek en maatschappij', - 'Creativiteit': 'Creativiteit', - 'Computer en techniek': 'Computer en techniek', - 'Opvoeding': 'Opvoeding', - 'Persoon en relaties': 'Persoon en relaties', - 'Interculturele vorming': 'Interculturele vorming', - 'Kunst en kunsteducatie': 'Kunst en kunsteducatie', - 'Gezondheid en zorg': 'Gezondheid en zorg', - 'Samenleving': 'Samenleving', - 'Bal en racketsport': 'Bal en racketsport', - 'Atletiek, wandelen en fietsen': 'Atletiek, wandelen en fietsen', - 'Zwemmen en watersport': 'Zwemmen en watersport', - 'Fitness, gymnastiek, dans en vechtsport': 'Fitness, gymnastiek, dans en vechtsport', - 'Outdoor en Adventure sport': 'Outdoor en Adventure sport', - 'Lucht en motorsport': 'Lucht en motorsport', - 'Volkssporten': 'Volkssporten', - 'Omnisport en andere': 'Omnisport en andere', - 'Tekst- en muziektheater': 'Tekst- en muziektheater', - 'Humor en comedy': 'Humor en comedy', - 'Musical': 'Musical', - 'Figuren en poppentheater': 'Figuren en poppentheater', - 'Opera en operette': 'Opera en operette', - 'Mime en bewegingstheater': 'Mime en bewegingstheater', - 'Wetenschap': 'Wetenschap', - 'Zingeving, filosofie en religie': 'Zingeving, filosofie en religie', - 'Thema onbepaald': 'Thema onbepaald', - 'Circus': 'Circus', - 'Voeding': 'Voeding', - 'Economie': 'Economie', - 'Avontuur': 'Avontuur', - 'Natuur': 'Natuur', - 'Sport': 'Sport', - 'Technologie': 'Technologie', - 'Koken': 'Koken', - 'Themakamp': 'Themakamp', - 'Taal en communicatie': 'Taal' - }, - offerThemesGroups: { - 'Dans': 'Dans', - 'Kunst en erfgoed': 'Kunst en erfgoed', - 'Muziek': 'Muziek', - 'Sport': 'Sport', - 'Varia': 'Varia' - }, - weekdays: { - monday: { - label: 'Ma', - name: 'Maandag' - }, - tuesday: { - label: 'Di', - name: 'Dinsdag' - }, - wednesday: { - label: 'Wo', - name: 'Woensdag' - }, - thursday: { - label: 'Do', - name: 'Donderdag' - }, - friday: { - label: 'Vr', - name: 'Vrijdag' - }, - saturday: { - label: 'Za', - name: 'Zaterdag' - }, - sunday: { - label: 'Zo', - name: 'Zondag' - } - }, - search: { - search: 'Zoeken', - advanced: 'Geavanceerd', - label: 'Labelen', - languageIcons: 'Taaliconen toevoegen', - deselect: 'Deselecteren', - savedSearches: { - savedSearches: 'Bewaarde zoekopdrachten', - items: { - 'Door mij ingevoerd': 'Door mij ingevoerd' - }, - mySearches: 'Mijn zoekopdrachten', - title: 'Titel', - viewResults: 'Resultaten bekijken', - yourSearch: 'Jouw zoekopdracht', - save: 'Bewaren', - }, - manage: 'Beheren', - oneResult: '1 resultaat', - multipleResults: '{{count}} resultaten', - description: 'Beschrijving', - labels: 'Labels', - picture: 'Afbeelding', - what: 'Wat', - where: 'Waar', - when: 'Wanneer', - inputInformation: 'Invoer-informatie', - noEventsFound: 'Geen evenementen gevonden, probeer een andere zoekopdracht.', - exportButton: 'Activiteiten exporteren', - modal: 'Je selectie bevat geen activiteiten, probeer een andere zoekopdracht te exporteren.', - advancedQueryBuilder: { - title: 'Geavanceerde zoekopdracht bouwer', - header: { - info: 'Hier kan je complexe zoekopdrachten bouwen. Hulp nodig? Lees ', - link: 'onze handleiding' - }, - group: 'Groep ', - include: 'Insluiten', - exclude: 'Uitsluiten', - addGroup: 'Groep toevoegen', - cancel: 'Annuleren', - search: 'Zoeken', - syntaxError: 'Je query bevat een fout. Op deze pagina vind je meer informatie over hoe je een zoekopdracht kan samenstellen.', - invalidField: '{{field}} is geen geldig zoekveld. Op deze pagina vind je meer informatie over hoe je een zoekopdracht kan samenstellen.', - } - } - } -); -})(); - -// Source: src/core/translations/french-translations.constant.js -(function () { -'use strict'; -// jscs:disable maximumLineLength - -/** - * @ngdoc service - * @name udbApp.udbFrenchTranslations - * @description - * # udbFrenchTranslations - * Constant in the udbApp. - */ -angular.module('udb.core') - .constant('udbFrenchTranslations', - { - 'BE': 'Belgique', - 'NL': 'Pays-Bas', - 'ZZ': 'Lieu en concertation avec l\'école', - 'EN_ADJECTIVE': 'Anglais', - 'FR_ADJECTIVE': 'Français', - 'DE_ADJECTIVE': 'Duitse', - 'NL_ADJECTIVE': 'Nederlandse', - 'datepicker': { - 'CURRENT': 'Aujourd\'hui', - 'CLEAR': 'Supprimer', - 'CLOSE': 'Fermer' - }, - '=': 'égale', - '><': 'entre', - '+': 'égale', - '!': 'n\'égale pas', - '-': 'n\'égale pas', - '>': 'est plus grand ou égal', - '<': 'est plus petit ou égal', - '>_DATE': 'plus tard que', - '<_DATE': 'plus tôt que', - '=_DATE': 'égale', - '><_DATE': 'entre', - 'choix': { - 'everyone': 'tout le monde', - 'members': 'membres', - 'education': 'éducation', - 'Available': 'A lieu', - 'Unavailable': 'Annulé', - 'TemporarilyUnavailable': 'Reporté', - 'available': 'Disponible', - 'unavailable': 'Complet', - 'online': 'en ligne', - 'offline': 'hors ligne', - 'mixed': 'mixte (en ligne / hors ligne)', - 'asc': 'ascendant', - 'desc': 'descendant', - 'today': 'aujourd\'hui', - 'tomorrow': 'demain', - 'thisweekend': 'ce week-end', - 'nextweekend': 'le week-end prochain', - 'next7days': 'les 7 jours suivants', - 'next14days': 'les 14 jours suivants', - 'next30days': 'les 30 jours suivants', - 'next3months': 'les 3 mois suivants', - 'next6months': 'les 6 mois suivants', - 'next12months': 'les 12 mois suivants', - 'permanent': 'permanent', - 'event': 'événement', - 'place': 'lieu', - 'actor': 'acteur', - 'production': 'production', - 'nl': 'néerlandais', - 'fr': 'français', - 'en': 'anglais', - 'de': 'allemand', - 'AF': 'Afghanistan', - 'AX': 'Îles Åland', - 'AL': 'Albanie', - 'DZ': 'Algérie', - 'AS': 'Samoa américaines', - 'VI': 'Îles Vierges des États-Unis', - 'UM': 'Îles mineures éloignées des États-Unis', - 'AD': 'Andorre', - 'AO': 'Angola', - 'AI': 'Anguilla', - 'AQ': 'Antarctique', - 'AG': 'Antigua-et-Barbuda', - 'AR': 'Argentine', - 'AM': 'Arménie', - 'AW': 'Aruba', - 'AU': 'Australie', - 'AZ': 'Azerbaïdjan', - 'BS': 'Bahamas', - 'BH': 'Bahreïn', - 'BD': 'Bangladesh', - 'BB': 'Barbade', - 'BE': 'Belgique', - 'BZ': 'Belize', - 'BJ': 'Bénin', - 'BM': 'Bermudes', - 'BT': 'Bhoutan', - 'BO': 'Bolivie', - 'BA': 'Bosnie-Herzégovine', - 'BW': 'Botswana', - 'BV': 'Île Bouvet', - 'BR': 'Brésil', - 'IO': 'Territoire britannique de l\'océan Indien', - 'VG': 'Îles Vierges britanniques', - 'BN': 'Brunei', - 'BG': 'Bulgarie', - 'BF': 'Burkina Faso', - 'BI': 'Burundi', - 'KH': 'Cambodge', - 'CA': 'Canada', - 'KY': 'Îles Caïmans', - 'CF': 'République centrafricaine', - 'CL': 'Chili', - 'CN': 'Chine', - 'CX': 'Île Christmas', - 'CC': 'Îles Cocos', - 'CO': 'Colombie', - 'KM': 'Comores', - 'CG': 'République du Congo', - 'CD': 'République démocratique du Congo', - 'CK': 'Îles Cook', - 'CR': 'Costa Rica', - 'CU': 'Cuba', - 'CY': 'Chypre', - 'DK': 'Danemark', - 'DJ': 'Djibouti', - 'DM': 'Dominique', - 'DO': 'République dominicaine', - 'DE': 'Allemagne', - 'EC': 'Équateur', - 'EG': 'Égypte', - 'SV': 'Salvador', - 'GQ': 'Guinée équatoriale', - 'ER': 'Érythrée', - 'EE': 'Estonie', - 'ET': 'Éthiopie', - 'FO': 'Îles Féroé', - 'FK': 'Malouines', - 'FJ': 'Fidji', - 'PH': 'Philippines', - 'FI': 'Finlande', - 'FR': 'France', - 'GF': 'Guyane', - 'PF': 'Polynésie française', - 'TF': 'Terres australes et antarctiques françaises', - 'GA': 'Gabon', - 'GM': 'Gambie', - 'GE': 'Géorgie', - 'GH': 'Ghana', - 'GI': 'Gibraltar', - 'GD': 'Grenade', - 'GR': 'Grèce', - 'GL': 'Groenland', - 'GP': 'Guadeloupe', - 'GU': 'Guam', - 'GT': 'Guatemala', - 'GG': 'Guernesey', - 'GN': 'Guinée', - 'GW': 'Guinée-Bissau', - 'GY': 'Guyana', - 'HT': 'Haïti', - 'HM': 'Îles Heard-et-MacDonald', - 'IM': 'Île de Man', - 'HN': 'Honduras', - 'HU': 'Hongrie', - 'HK': 'Hong Kong', - 'IS': 'Islande', - 'IE': 'Irlande ', - 'IN': 'Inde', - 'ID': 'Indonésie', - 'IQ': 'Irak', - 'IR': 'Iran', - 'IL': 'Israël', - 'IT': 'Italie', - 'CI': 'Côte d\'Ivoire', - 'JM': 'Jamaïque', - 'JP': 'Japon', - 'YE': 'Yémen', - 'JE': 'Jersey', - 'JO': 'Jordanie', - 'CV': 'Cap-Vert', - 'CM': 'Cameroun', - 'KZ': 'Kazakhstan', - 'KE': 'Kenya', - 'KG': 'Kirghizistan', - 'KI': 'Kiribati', - 'KW': 'Koweït', - 'HR': 'Croatie', - 'LA': 'Laos', - 'LS': 'Lesotho', - 'LV': 'Lettonie', - 'LB': 'Liban', - 'LR': 'Liberia', - 'LY': 'Libye', - 'LI': 'Liechtenstein', - 'LT': 'Lituanie', - 'LU': 'Luxembourg', - 'MO': 'Macao', - 'MK': 'République de Macédoine', - 'MG': 'Madagascar', - 'MW': 'Malawi', - 'MV': 'Maldives', - 'MY': 'Malaisie', - 'ML': 'Mali', - 'MT': 'Malte', - 'MA': 'Maroc', - 'MH': 'Îles Marshall', - 'MQ': 'Martinique', - 'MR': 'Mauritanie', - 'MU': 'Maurice', - 'YT': 'Mayotte', - 'MX': 'Mexique', - 'FM': 'Micronésie', - 'MD': 'Moldavie', - 'MC': 'Monaco', - 'MN': 'Mongolie', - 'ME': 'Monténégro', - 'MS': 'Montserrat', - 'MZ': 'Mozambique', - 'MM': 'Birmanie', - 'NA': 'Namibie', - 'NR': 'Nauru', - 'NL': 'Pays-Bas', - 'AN': 'Antilles néerlandaises', - 'NP': 'Népal', - 'NI': 'Nicaragua', - 'NC': 'Nouvelle-Calédonie', - 'NZ': 'Nouvelle-Zélande', - 'NE': 'Niger', - 'NG': 'Nigeria', - 'NU': 'Niue', - 'KP': 'Corée du Nord', - 'MP': 'Îles Mariannes du Nord', - 'NO': 'Norvège', - 'NF': 'Île Norfolk', - 'UG': 'Ouganda', - 'UA': 'Ukraine', - 'UZ': 'Ouzbékistan', - 'OM': 'Oman', - 'ZZ': 'Inconnu', - 'TL': 'Timor oriental', - 'AT': 'Autriche', - 'PK': 'Pakistan', - 'PW': 'Palaos', - 'PS': 'Palestine', - 'PA': 'Panama', - 'PG': 'Papouasie-Nouvelle-Guinée', - 'PY': 'Paraguay', - 'PE': 'Pérou', - 'PN': 'Îles Pitcairn', - 'PL': 'Pologne', - 'PT': 'Portugal', - 'PR': 'Porto Rico', - 'QA': 'Qatar', - 'RO': 'Roumanie', - 'RU': 'Russie', - 'RW': 'Rwanda', - 'RE': 'La Réunion', - 'BL': 'Saint-Barthélemy', - 'KN': 'Saint-Christophe-et-Niévès', - 'LC': 'Sainte-Lucie', - 'PM': 'Saint-Pierre-et-Miquelon', - 'VC': 'Saint-Vincent-et-les Grenadines', - 'SB': 'Salomon', - 'WS': 'Samoa', - 'SM': 'Saint-Marin', - 'ST': 'Sao Tomé-et-Principe', - 'SA': 'Arabie saoudite', - 'SN': 'Sénégal', - 'RS': 'Serbie', - 'CS': 'Serbie-et-Monténégro, ', - 'SC': 'Seychelles', - 'SL': 'Sierra Leone', - 'SG': 'Singapour', - 'SH': 'Sainte-Hélène, Ascension et Tristan da Cunha', - 'MF': 'Saint-Martin', - 'SI': 'Slovénie', - 'SK': 'Slovaquie', - 'SD': 'Soudan', - 'SO': 'Somalie', - 'ES': 'Espagne', - 'LK': 'Sri Lanka', - 'SR': 'Suriname', - 'SJ': 'Svalbard et ile Jan Mayen', - 'SZ': 'Swaziland', - 'SY': 'Syrie', - 'TJ': 'Tadjikistan', - 'TW': 'Taïwan / (République de Chine (Taïwan))', - 'TZ': 'Tanzanie', - 'TH': 'Thaïlande', - 'TG': 'Togo', - 'TK': 'Tokelau', - 'TO': 'Tonga', - 'TT': 'Trinité-et-Tobago', - 'TD': 'Tchad', - 'CZ': 'Tchéquie', - 'TN': 'Tunisie', - 'TR': 'Turquie', - 'TM': 'Turkménistan', - 'TC': 'Îles Turques-et-Caïques', - 'TV': 'Tuvalu', - 'UY': 'Uruguay', - 'VU': 'Vanuatu', - 'VA': 'Saint-Siège(État de la Cité du Vatican)', - 'VE': 'Venezuela', - 'GB': 'Royaume-Uni', - 'AE': 'Émirats arabes unis', - 'US': 'États-Unis', - 'VN': 'Viêt Nam', - 'WF': 'Wallis-et-Futuna', - 'EH': 'République arabe sahraouie démocratique', - 'BY': 'Biélorussie', - 'ZM': 'Zambie', - 'ZW': 'Zimbabwe', - 'ZA': 'Afrique du Sud', - 'GS': 'Géorgie du Sud-et-les Îles Sandwich du Sud', - 'KR': 'Corée du Sud', - 'SE': 'Suède', - 'CH': 'Suisse' - }, - property: { - 'name': 'Titre', - 'description': 'Description', - 'labels': 'Labels', - 'calendarSummary': 'Aperçu du calendre', - 'image': 'Image', - 'videos': 'Vidéos', - 'location': 'Lieu', - 'address': 'Adresse', - 'organizer': 'Organisateur', - 'priceInfo': 'Information du prix', - 'kansentarief': 'Allocataires sociaux', - 'bookingInfo': 'Info réservation', - 'contactPoint': 'Info contact', - 'status': 'État', - 'bookingAvailability': 'Billets & places', - 'attendance': 'forme de présence', - 'creator': 'Auteur', - 'terms.theme': 'Thème', - 'terms.eventtype': 'Type', - 'created': 'Date début', - 'modified': 'Date dernière modification', - 'publisher': 'Auteur', - 'available': 'Disponible', - 'endDate': 'Date fin', - 'startDate': 'Date départ', - 'calendarType': 'Type temps', - 'sameAs': 'IDs externes', - 'typicalAgeRange': ' ge', - 'language': 'Langue', - 'audience': 'Accès' - }, - preview: { - tabs: { - 'data': 'Données', - 'history': 'Historique', - 'publication': 'Publication' - }, - 'not_found': 'Page introuvable', - 'not_found_help': 'Cette page n\'a pas pu être trouvée.', - 'loading': 'Chargement...', - 'edit': 'Modifier', - 'duplicate': 'Copier et modifier', - 'change_availability': 'Modifier la disponibilité', - 'delete': 'Supprimer', - 'title': 'Titre', - 'type': 'Type', - 'entrance': 'Entrée', - 'description': 'Description', - 'no_description': 'Aucune description', - 'where': 'Où', - 'when': 'Quand', - 'online': 'Online', - 'online_location': 'Participation en ligne', - 'online_location_missing': 'Pas d\'url pour la participation en ligne', - 'labels': 'Labels', - 'labels_error': 'Le label \'{{labelName}}\' n\'a pas pu être ajouté.', - 'labels_success': 'Le label \'{{addedLabel}}\' a été ajouté avec succès.', - 'organizer': 'Organisation', - 'no_organizer': 'Pas d\'information de l\'organisation', - 'price': 'Prix', - 'free': 'Gratuit', - 'booking_availability': 'Billets & places', - 'booking_unavailable': 'Complet', - 'booking_available': 'Disponible', - 'no_price': 'Pas d\'information du prix', - 'currency': 'euro', - 'age_label': 'Adapté à', - 'all_ages': 'Tous les âges', - 'no_age': 'Pas d\'information de l\'âge', - 'videos_label': 'Vidéos', - 'no_videos': 'Aucune vidéo', - 'publiq_url': 'Voir sur {{publicationBrand}}', - 'translate': 'Traduire', - 'info_lesson_series': 'Votre série de cours apparaît dans les agendas UiT jusqu\'au premier moment de la cours.', - 'info_holiday_camp': 'Votre camp de vacances apparaîtront dans des calendriers en ligne jusqu\'au jour du début.' - }, - translate: { - 'ready': 'Prêt à traduire', - 'translate': 'traduire', - 'original': 'l\'original', - 'edit': 'Modifier', - 'translation': 'Traduction', - 'description': 'Description', - 'title': 'Titre', - 'tariff': 'Prix', - 'address': 'Adresse', - 'street': 'Rue et numéro' - }, - labels: { - 'what': 'Ajoutez des mots clés courts et spécifiques.', - 'invalid': 'Ce label ne semble pas valable. Un label ', - 'chars': 'Ne comporte que des lettres ou des chiffres', - 'excluded': 'Ne comporte que \'-\' ou \'_\' mais ne peut commencer avec ces caractêres', - 'length': 'Comporte de 2 à 50 caractères' - }, - calendarSummary: { - 'openinghours': 'plusieurs moments', - 'from': 'De', - 'till': 'à', - 'permanent': 'Permanent' - }, - moderate: { - 'infoAlert': '

Bienvenue sur la page de validation. Sur cette page, vous pouvez approuver ou rejeter les événements en tant que validateur décentralisé :

  • Rejeter. Les événements rejetés ne sont plus publiés sur UiTinVlaanderen ou d\'autres agendas et ne peuvent plus être modifiés par l\'importateur.
  • Approuver. Les événements approuvés resteront publiés sur UiTinVlaanderen et d\'autres calendriers UiT. Ils ne seront pas soumis à une nouvelle validation.

Vous trouverez des directives pour la validation dans les règles de contenu de la base de données UiTdatabank.

', - 'validate': 'Valider', - 'approve': 'Approuver', - 'approved': 'Approuvé', - 'reject': 'Rejeter', - 'rejected': 'Rejeté', - 'continue_validation': 'Continuer la validation' - }, - cultuurkuur: { - 'info': 'Cet événement contient de l\'information extra pour les écoles et les enseignants.', - 'subject': 'Sujet', - 'target_group': 'Public cible', - 'levels': 'Adapté à', - 'grades': 'degrés d\'éducation', - 'edit_link': 'Modifier sur cultuurkuur.be', - 'incomplete_help': 'Introduisez cet événement sur cultuurkuur.be avec de l\'information extra pour les écoles et les enseignants.', - 'continue': 'Continuer' - }, - booking: { - 'label': 'Réservation', - 'no_booking': 'Pas d\'information de réservation' - }, - contact: { - 'label': 'Contact', - 'or': 'ou', - 'no_contact': 'Pas d\'information du contact' - }, - imageDetail: { - 'label': 'Images', - 'alt_image': 'Image {{index}}', - 'main_image': 'Image principale', - 'no_images': 'Pas d\'images' - }, - prices: { - 'title': 'Ajouter des prix', - 'base': 'Tarif de base', - 'target_group': 'Public cible', - 'free': 'Gratuit', - 'currency': 'euro', - 'add_price': 'Ajouter prix', - 'add_tarriff': 'Ajouter tarif', - 'error': 'Il y a eu une erreur dans l\'enregistrement du prix.', - 'invalid': 'Cette information du prix semble invalide et ne peut pas être enregistrée.', - 'invalid_tip1': 'Notez les décimales avec une virgule.', - 'invalid_tip2': 'Ne laissez aucune ligne vide, remplissez toujours un public cible et un montant.', - 'invalid_tip3': 'Donnez au maximum deux chiffres après la virgule.', - 'close': 'Fermer', - 'save': 'Sauver' - }, - location: { - 'title': 'Ajouter un nouveau lieu', - 'name': 'Nom de lieu', - 'name_validation': 'Le nom du lieu est un domaine obligatoire.', - 'street': 'Rue et numéro', - 'street_validation': 'Rue est un domaine obligatoire.', - 'city': 'Commune', - 'category': 'Catégorie', - 'category_help': 'Choisissez la catégorie qui décrit le mieux ce lieu.', - 'category_validation': 'Catégorie est un domaine obligatoire.', - 'error': 'Il s\'est produit une erreur lors de l\'enregistrement du lieu.', - 'invalid_street': 'Cela semble une adresse invalide. Si vous utilisez des espaces dans l\'adresse, vous ne pouvez pas avoir plus de 15 caractères après le dernier espace.', - 'cancel': 'Annuler', - 'add': 'Ajouter', - 'zip': 'Code postal', - 'nlPostalCode_validation': 'Code postal est un domaine obligatoire.', - 'invalid_PostalCode': 'Il semble que le code postale n\'est pas valable. Un code postal comporte 4 chiffres et 2 lettres sans espace.' - }, - eventForm: { - 'langWarning': 'Attention, vous éditez dans une autre langue: {{language}}. Si ce n\'est pas votre intention, contactez-nous à vragen@uitdatabank.be.', - step1: { - 'title': 'Qu\'est-ce que vous voulez ajouter ?', - 'label_event': 'Un événement', - 'show_everything': 'Montrez tout', - 'or': 'ou', - 'location_label': 'Un lieu', - 'change': 'Modifier', - 'refine': 'Affiner', - 'info_lesson_series': 'Votre série de cours apparaît dans les agendas UiT jusqu\'au premier moment de la cours.' - }, - step2: { - 'date_help_event': 'L\'événement ou l\'activité a lieu quand ?', - 'date_help_place': 'Cet endroit ou ce lieu est ouvert(e) quand ?', - }, - step3: { - 'title_event': 'Où l\'événement ou l\'activité a-t-il/elle lieu ?', - 'title_place': 'Où se trouve cet endroit ou ce lieu ?', - 'choose_city': 'Choisissez une commune', - 'choose_city_helper': 'p. ex Mons ou 7000', - 'choose_residence': 'Choisir le lieu de résidence', - 'choose_residence_helper': 'par ex. Groningue ou Amsterdam', - 'placeholder_city': 'Commune ou code postal', - 'problem_city': 'Il y a eu un problème durant la collection des villes', - 'change': 'Modifier', - 'choose_location': 'Choisissez un lieu', - 'placeholder_location': 'Nom ou adresse', - 'location_not_found': 'Lieu non trouvé ?', - 'add_location': 'Ajouter un lieu', - 'location_error': 'Il y a eu un problème dans la collection des lieux', - 'street': 'Rue et numéro', - 'placeholder_street': 'Rue de l\'église 1', - 'straat_validate': 'Rue et numéro sont des domaines obligatoires.', - 'street_validate_long': 'Cela semble une adresse invalide. Si vous utilisez des espaces dans l\'adresse, vous ne pouvez pas avoir plus de 15 caractères après le dernier espace.', - 'ok': 'OK', - 'zip': 'Code postal', - 'bookable_event_info_alert': 'Les événements dont le lieu est déterminée en consultation ne sont pas publiés sur UiTinVlaanderen ou d\'autres chaînes publiques. Votre événement apparaîtra sur cultuurkuur.be', - 'bookable_event_next_button': 'Continuer', - 'bookable_event_success_message': 'Le lieu est déterminé en consultation avec l\'école.' - }, - step4: { - age: { - 'age_label': 'Adapté à', - 'All ages': 'De tous âges', - 'Toddlers': 'Tout-petits', - 'Preschoolers': 'Jeunes enfants', - 'Kids': 'Enfants d’âge scolaire', - 'Teenagers': 'Adolescents', - 'Youngsters': 'Jeunes', - 'Adults': 'Adultes', - 'Seniors': 'Seniors', - 'Custom': 'Autres', - 'from': 'De', - 'till': 'à', - 'age': 'ans', - 'error_max_lower_than_min': 'L\'âge maximum ne peut être inférieur à l\'âge minimum.' - }, - 'basic_data': 'Données de base', - 'name_event': 'Nom de l\'événement', - 'name_place': 'Nom du lieu', - 'help_event': 'Choisissez un bon titre, p.ex. \"Rouler à vélo le long des chapelles\", \"La Saga de la Licorne\".', - 'help_place': 'Utilisez la dénomination officielle, p.ex. \"Argos, centre pour l\'art et les médias\", \"Site de l\'abbaye Herkenrode\", \"Centre culturel De Werf\".', - 'help_description': 'Vous pouvez ajouter une description détaillée dans l\'étape 5.', - 'info_missing': 'Vous n\'avez pas rempli tous les champs d\'informations obligatoires:', - 'save_error': 'Une erreur s\'est produite lors de l\'enregistrement de votre activité. Merci de réessayer un peu plus tard.', - 'continue': 'Continuer', - 'doubles_title': 'Évitez les doubles emplois', - 'doubles_help': 'Nous avons trouvé des éléments similaires. Controlez les éléments importés auparavant.', - 'sure': 'Vous êtes sûr que vous voulez ajouter \"{{name}}\" ?', - 'return_dashboard': 'Non, retourner au tableau de bord', - 'yes_continue': 'Oui, procéder l\'importation', - suggestions: { - 'from': 'De', - 'till': 'à', - 'permanent': 'Permanent' - } - }, - step5: { - 'expose_event': 'Augmentez la visibilité de votre évènement', - 'expose_place': 'Augmentez la visibilité de votre lieu', - 'title': 'Titre', - 'description': 'Description', - 'add_text': 'Ajouter texte', - 'required_200': 'Pour attirer un nouveau public, les 200 premier caractères sont les plus importants.', - 'required_still': 'Encore', - 'required_signs': 'caractères.', - 'required_200_help': 'Intégrez le message le plus important dans les 200 premiers caractères. Vous pouvez ensuite ajouter des informations générales.', - 'empty': 'Vider', - 'tips': { - 'Concert': 'Donnez une description enthousiaste du concert.
  • Quel(s) artiste(s) se produisent ?
  • De quel genre s\'agit-il ?
  • Quel album ou œuvre sera présenté ?
', - 'Dansvoorstelling': 'Donnez une description enthousiaste du spectacle de danse.
  • Qui est le chorégraphe ?
  • Qui sont les danseurs ?
  • Dans quel style dansent-ils ?
  • Quel est le thème ou le sujet de la représentation ?
', - 'Festival': 'Donnez une description enthousiaste du festival.
  • Qui ou quoi est au programme ?
  • Quelle est l\'animation (périphérique) ?
', - 'Film': 'Donnez une description enthousiaste du cinéma.
  • Faites une brève description de l\'histoire.
  • Qui est le réalisateur ?
  • Qui sont les protagonistes ?
  • Le film a-t-il remporté des prix ?
', - 'Lezing of congres': 'Donnez une description enthousiaste de la conférence où congrès
  • Quels thèmes sont couverts ?
  • Quels orateurs prennent la parole ?
', - 'Theatervoorstelling': 'Donnez une description enthousiaste du théâtre.
  • Esquissez brièvement l\'histoire ou le thème.
  • Quelle compagnie de théâtre jouera la pièce ?
  • Quels sont les acteurs qui jouent ?
', - 'Sportwedstrijd bekijken': 'Donnez une description enthousiaste de la compétition sportive.
  • Quelles équipes ou quels participants jouent ?
  • Dans quelle compétition se déroule la compétition ?
', - 'Markt of braderie': 'Donnez une description enthousiaste du marché, foire ou fête foraine
  • Dans quelles rues a-t-il lieu ?
  • Quels seront les stands ou les stands de vente ?
  • Y a-t-il une animation (de bord) ?
', - 'Opendeurdag': 'Donnez une description enthousiaste de la journée portes ouvertes. Que pouvez-vous voir ou vivre ?', - 'Beurs': 'Donnez une description enthousiaste de la foire. Que pouvez-vous voir, vivre ou acheter ?', - 'Tentoonstelling': 'Donnez une description enthousiaste de l\'exposition.
  • Quels sont les artistes qui exposent ?
  • Quelles collections peuvent être vues ?
  • Existe-t-il un guide (audio) ou une brochure ?
', - 'Begeleide uitstap of rondleiding': 'Donnez une description enthousiaste de la visite guidée.
  • Qu\'y a-t-il à voir ou à vivre le long du parcours ?
  • Y a-t-il un nombre maximum de participants ?
  • La visite guidée est-elle organisée en continu ou à des moments précis ?
  • Y a-t-il des points d\'attention particuliers (par exemple, des bottes indiquées) ?
', - 'Lessenreeks': 'Donnez une description enthousiaste de la série de cours.
  • Qu\'y apprenez-vous exactement ?
  • Des connaissances préalables sont-elles nécessaires pour participer ?
  • Quel est le niveau des cours ?
  • Recevez-vous un diplôme ou un certificat à la fin ?
', - 'Cursus met open sessies': 'Donnez une description enthousiaste du cours avec sessions ouvertes ou workshop.
  • Qu\'y apprenez-vous exactement ?
  • Des connaissances préalables sont-elles nécessaires pour participer ?
  • Quel est le niveau des cours ?
  • Recevez-vous un diplôme ou un certificat à la fin ?
', - 'Kamp of vakantie': 'Donnez une description enthousiaste du camp de vacances
  • Quelles activités pouvez-vous y faire ?
  • Y a-t-il un thème ?
  • Est-il avec ou sans nuitées ?
  • Quelle est l\'heure de début et de fin des camps de jour et les soins sont-ils fournis avant et après ?
', - 'Festiviteit': 'Donnez une description enthousiaste de la festivité
  • Quelles sont les attractions ?
  • Y a-t-il des activités (périphériques): quiz, concerts, food trucks, marché,... ?
', - 'Route': 'Donnez une description enthousiaste de l\'itinéraire.
  • Faites-vous le trajet à pied, en vélo, en bateau,.. ?
  • Quels sont les arrêts possibles ?
  • Quelle est la distance ou la durée de l\'itinéraire ?
  • L\'itinéraire est-il accompagné, avec un guide, une brochure ou des panneaux indicateurs ?
', - 'Party of fuif': 'Donnez une description enthousiaste de la soirée. Quels deejays ou groupes se produisent ?', - 'Eet of drankfestijn': 'Donnez une description enthousiaste du festin de nourriture ou de boisson.
  • Qu\'y a-t-il au menu ?
  • Les recettes seront-elles versées à une organisation caritative ?
  • Y a-t-il une animation (périphérique) ?
', - 'Spel of quiz': 'Donnez une description enthousiaste du quiz ou du jeu.
  • Sur quels sujets porte le quiz ?
  • Le jeu a-t-il un thème ?
  • Y a-t-il quelque chose à gagner ?
  • Y a-t-il un nombre maximum de participants ?
', - 'Sport en beweging': 'Donnez une description enthousiaste de l\'activité sportive.
  • Quel(s) sport(s) pouvez-vous pratiquer ?
  • Quel matériel est (non) fourni ?
', - 'Monument': 'Donnez ici une description saillante du monument. Indiquez également si l\'ouverture du monument est limitée (p.ex. seulement des salons).' - }, - 'description_error': 'Il y a eu une erreur dans l\'enregistrement de la description.', - 'organizer': 'Organisation', - 'add_organizer': 'Ajouter l\'organisation', - 'choose_organizer': 'Choisissez une organisation', - 'organizer_not_found': 'L\'organisation n\'a pas été trouvée ?', - 'add_new_organizer': 'Ajouter un nouvel organisateur', - 'organizer_error': 'Il y a eu une erreur dans l\'enregistrement de l\'organisateur.', - 'contact': 'Contact & réservation', - 'add_contact': 'Ajouter plus de coordonnées', - 'website': 'Site web', - 'phone': 'Numéro de téléphone', - 'e-mail': 'Adresse mail', - 'use_booking': 'Utiliser pour la réservation', - 'booking_exposure': 'Comment ce lien peut-il apparaître ?', - 'buy_tickets': 'Achetez des tickets', - 'reserve_places': 'Réservez des places', - 'check_availability': 'Controlez la disponibilité', - 'subscribe': 'Inscrivez-vous', - 'add_more_contact': 'Ajouter plus de coordonnées', - 'contact_error': 'Il y a eu une erreur dans l\'enregistrement de l\'information du contact.', - 'facilities': 'Accessibilité', - 'add_facility': 'Ajouter des dispositions', - 'facility_inapplicable': 'Pas d\'application', - 'change': 'Modifier', - 'image_help': 'Ajoutez une image de sorte que les visiteurs reconnaissent mieux votre activité.', - 'images': 'Images', - 'copyright': 'Copyright', - 'delete': 'Supprimer', - 'main_image': 'Créer image principale', - 'add_image': 'Ajouter une image', - priceInfo: { - 'price_label': 'Tarif', - 'add_prices': 'Ajouter prix', - 'free': 'Gratuit', - 'prices': 'Prix', - 'change': 'Modifier', - 'currency': 'euro' - }, - reservationPeriod: { - 'add_reservation_period': 'Ajouter une période de réservation', - 'reservation_period': 'Période de réservation', - 'from': 'De', - 'till': 'à' - } - }, - publish: { - 'publish_now': 'Publier immédiatement', - 'publish_later': 'Publier plus tard', - 'edit_done': 'Modification terminée', - 'online_from': 'Publié le' - }, - timeTracker: { - 'automatic_saved': 'Sauvegardé automatiquement à', - 'hour': 'heures', - }, - embargo: { - 'title': 'Choisissez une date de publication', - 'help': 'A partir de quand l\'activité peut-elle apparaître en ligne ? Attention, vous ne pouvez définir cette date qu\'une seule fois.', - 'error_past': 'Une date de publication ne peut pas être antérieure.', - 'error_empty': 'Choisissez une date de publication.', - 'cancel': 'Annuler', - 'ready': 'Prêt à modifier' - }, - imageUpload: { - 'modalTitle': 'Ajouter une image', - 'defaultError': 'Le fichier sélectionné ne répond pas à nos critères.', - 'noFileSelectedError': 'Il n\'y a pas de fichier sélectionné', - 'somethingWentWrongError': 'Une erreur s\'est produite lors de l\'enregistrement de l\'image.', - 'maxSize': 'Le fichier que vous souhaitez télécharger est trop gros. La taille maximale est ', - 'formatNotValidError': 'Le fichier téléchargé n\'est pas une image valable.', - 'extensionsAllowed': 'Seuls les fichiers avec les extensions .jpeg, .gif ou .png sont autorisés.', - 'sizeError': 'Le fichier téléchargé est trop grand.' - } - }, - offerStatus: { - 'scheduled': 'A lieu', - 'cancelled': 'Annulé', - 'postponed': 'Reporté', - 'open': 'Ouvert', - 'temporarilyClosed': 'Fermé temporairement', - 'permanentlyClosed': 'Fermé définitivement', - }, - bookingAvailability: { - 'unavailable': 'Complet' - }, - calendar: { - 'one_more_days': 'Jours récurrents ou variables', - 'or': 'ou', - 'default_days': 'Période continue', - 'start_label': 'Début', - 'end_label': 'Fin', - 'whole_day_label': 'Toute la journée', - 'start_hour_label': 'Heure de début', - 'end_hour_label': 'Heure de fin', - 'add_days': 'Ajouter des jours', - period: { - 'title': 'Date de début et de fin', - 'from': 'De', - 'till': 'à', - 'alert': 'Introduisez la date de début ainsi que la date de fin. La date de fin ne peut pas tomber avant la date de début.' - }, - openingHours: { - 'permanent_title': '24/24, 7/7', - 'permanent_subtitle': 'Chaque jour, chaque heure', - 'add_hours': 'Ajouter des heures', - 'opening_hours': 'Heures d\'ouverture', - 'change': 'Modifier', - 'days': 'Jours', - 'from': 'De', - 'till': 'à', - 'more_hours': 'Ajouter plus d\'heures d\'ouverture', - 'cancel': 'Annuler', - 'save': 'Sauver' - } - }, - 'facilityLabel': { - 'motor': 'Dispositions pour des personnes de motricité réduite', - 'visual': 'Dispositions pour des malvoyants', - 'hearing': 'Dispositions pour des personnes d\'une limitation auditive', - 'other': 'Autres dispositions', - 'place': 'Dispositions de cette location', - 'mental': 'Dispositions pour des personnes handicapées mentales', - 'neurodivers': 'Dispositions pour des personnes neurodiverses', - }, - audience: { - 'entrance': 'Accès', - 'everyone': 'Pour tout le monde', - 'members': 'Seulement pour des membres', - 'members_help': 'Votre article est seulement publié sur des chaînes pour des associations et leurs membres.', - 'education': 'Spécifiquement pour des écoles', - 'education_help': 'Votre article est seulement publié sur des chaînes d\'éducation culturelle. Après la publication vous pouvez encore ajouter de l\'information spécifique pour des écoles.' - }, - workflowStatus: { - 'label': 'État de publication', - 'id': 'ID', - 'DRAFT': 'Pas publié', - 'READY_FOR_VALIDATION': 'Prêt à être publié', - 'APPROVED': 'Publié le', - 'REJECTED': 'Publication rejetée', - 'DELETED': 'Pas publié', - 'rules': 'Regardez les règles', - 'rejected_full': 'Cet item a été rejeté.' - }, - queryFieldGroup: { - 'what': 'Quoi', - 'where': 'Où', - 'when': 'Quand', - 'input-information': 'Information input', - 'translations': 'Traductions', - 'other': 'Autres' - }, - 'queryFieldLabel': { - 'cdbid': 'code d\'identification (CDBID)', - 'offertype': 'type (offre)', - 'keywords': 'label', - 'title': 'titre', - 'category_eventtype_name': 'type (activité)', - 'locationtype': 'type (location)', - 'category_theme_name': 'thème', - 'text': 'texte', - 'city': 'commune (nom)', - 'zipcode': 'code postal', - 'location_id': 'location (id)', - 'country': 'pays', - 'location_name': 'location (nom)', - 'location_labels': 'location (labels)', - 'category_flandersregion_name': 'région / commune', - 'nisRegions': 'région / commune', - 'date': 'date', - 'permanent': 'permanent', - 'lastupdated': 'modifié dernièrement', - 'creationdate': 'créé', - 'createdby': 'créé par', - 'availablefrom': 'disponible le', - 'detail_lang': 'traduction', - 'organiser_keywords': 'label organisation', - 'organiser_id': 'organisation (id)', - 'agefrom': 'âge', - 'attendance_mode': 'forme de présence', - 'price': 'prix', - 'status': 'status', - 'booking_availability': 'billets & places', - 'organiser_label': 'organisation (nom)', - 'category_facility_name': 'dispositions', - 'category_targetaudience_name': 'public cible', - 'startdate': 'date de début', - 'enddate': 'date de fin', - 'lastupdatedby': 'modifié dernièrement par', - 'category_publicscope_name': 'portée de public' - }, - 'EVENT-EXPORT': { - 'QUERY-IS-MISSING': 'Une exportation est seulement possible après avoir exécuté une recherche', - 'TOO-MANY-ITEMS': 'Une exportation manuelle contenant plus de {{limit}} items n\'est pas possible. Contactez vragen@uitdatabank.be pour une solution sur mesure.' - }, - 'AANBOD_INVOEREN': 'Importer l\'offre', - 'AANBOD_BEWERKEN': 'Modifier l\'offre', - 'AANBOD_MODEREREN': 'Modérer l\'offre', - 'AANBOD_VERWIJDEREN': 'Supprimer l\'offre', - 'AANBOD_HISTORIEK': 'Consulter l\'historique', - 'ORGANISATIES_BEHEREN': 'Gérer les organisations', - 'GEBRUIKERS_BEHEREN': 'Gérer les utilisateurs', - 'LABELS_BEHEREN': 'Gérer les labels', - 'VOORZIENINGEN_BEWERKEN': 'Modifier les dispositions', - 'ORGANISATIES_BEWERKEN': 'Modifier les organisations', - 'PRODUCTIES_AANMAKEN': 'Gérer les productions', - 'FILMS_AANMAKEN': 'Gérer les films', - 'event type missing': 'Choisissez un type à l\'étape 1 ?', - 'timestamp missing': 'Avez-vous choisi une date en étape 2 ?', - 'start or end date missing': 'Avez-vous choisi une date de début et de fin en étape 2 ?', - 'when missing': 'Avez-vous fait un choix en étape 2 ?', - 'place missing for event': 'Avez-vous choisi un lieu en étape 3 ?', - 'location missing for place': 'Avez-vous choisi un lieu en étape 3 ?', - 'title is missing': 'Avez-vous choisi une titre en étape 4 ?', - 'age range is missing': 'Avez-vous choisi une tranche d\'âge en étape 4 ?', - 'UNIQUE_ORGANIZER_NOTICE': 'Pour préserver à chaque organisation une identité unique dans UiTdatabank, nous demandons à chaque organisation de fournir un hyperlien unique et valide.', - 'OPENING_HOURS_ERROR': { - 'openAndClose': 'Introduisez toutes les heures d\'ouverture et de fermeture.', - 'dayOfWeek': 'Choisissez au moins un jour dans chaque ligne ajoutée.', - 'openIsBeforeClose': 'L\'heure de fermeture doit être postérieure à l\'heure d’ouverture.' - }, - 'TIME_SPAN_REQUIREMENTS': { - 'timedWhenNotAllDay': 'L\'heure de début et de fin est obligatoire quand un événement ne dure pas toute la journée.', - 'startBeforeEndDay': 'La date de fin ne peut pas tomber avant la date de début.', - 'startBeforeEnd': 'L\'heure de fin ne peut pas tomber avant l\'heure de début.', - 'tooFarInFuture': 'La date de fin et la date de début choisies ne peuvent pas dépasser 10 ans.' - }, - uitpas: { - uitpasInfo: { - 'uitpas': 'UiTPAS', - 'uitpas_alert': 'Ceci est un organisateur UiTPAS. Sélectionnez le prix afin d\'ajouter de l\'information spécifique concernant UiTPAS.', - 'uitpas_info': 'Ceci est une activité UiTPAS.', - 'cantChangePrice': 'Pour cet événement des tickets ont été vendus dont l\'information du prix existe déjà. Vous ne pouvez plus modifier l\'information du prix.', - 'cantChangeOrganiser': 'Pour cet événement des tickets UiTPAS ont déjà été vendus. Vous ne pouvez plus modifier l\'organisation.', - 'unavailable': 'Pour cet événement des tickets UiTPAS ont déjà été vendus. Vous ne pouvez plus modifier l\'organisation.' - }, - cardSystems: { - 'card_systems': ', p.ex. 011 32 43 54', - 'required': 'Veuillez compléter ce domaine.', - 'valid_url': 'Cette url n\'est pas valable.', - 'valid_email': 'Cette adresse e-mail n\'est pas valable.', - 'valid_phone': 'Ce numéro de téléphone n\'est pas valable.', - 'cancel': 'Annuler', - 'add': 'Ajouter', - 'add_phone': 'Ajouter un numéro de téléphone', - 'add_email': 'Ajouter une adresse mail', - 'add_url': 'Ajouter un autre site web' - }, - manage: { - 'edit': 'Modifier', - 'delete': 'Supprimer', - 'overview': 'Retourner à l\'aperçu', - 'dashboard': 'Retourner au tableau de bord', - 'name': 'Nom', - 'description': 'Description', - 'educational_description': 'Description de Cultuurkuur', - 'address': 'Adresse', - 'website': 'Site Internet', - 'phone': 'Numéro de téléphone', - 'email': 'Adresse e-mail', - 'labels': 'Labels', - 'removed': 'Cette organisation a été supprimée.' - } - }, - duplicate: { - title: 'Copier et modifier', - description: 'Vous êtes sur le point de copier un événement. Choisissez une date pour cet événement.', - error: 'Il y a eu une erreur dans la création d\'une copie !' - }, - dashboard: { - 'welcome': 'Bienvenue,', - 'no_items': 'Vous n\'avez pas encore ajouté d\'éléments.', - 'add_activity': 'Ajouter une activité ou une location ?', - 'my_activities': 'Mes activitées et lieux', - 'my_organizers': 'Mes organisations', - 'add': 'Ajouter', - 'add_organizer': 'Ajouter une organisation', - directive: { - 'no_publish': 'Pas publié !', - 'online': 'En ligne le', - 'edit': 'Modifier', - 'example': 'Exemple', - 'delete': 'Supprimer', - 'expired_event': 'Événement terminé' - }, - delete: { - 'sure': 'Vous êtes sûr de vouloir supprimer \"{{name}}\" ?', - 'error_location': 'Le lieu \"{{name}}\" ne peut pas être supprimée car des activités y ont encore lieu.', - 'error': 'Il y a eu une erreur dans la suppression de l\'activité.', - 'cancel': 'Annuler', - 'delete': 'Supprimer' - } - }, - entry: { - 'exported_documents': 'Documents exportés', - 'notifications': 'Notifications', - 'in_progress': 'Occupé' - }, - offerTypes: { - 'Concert': 'Concert', - 'Theatervoorstelling': 'Théâtre', - 'Lezing of congres': 'Conférence ou congrès', - 'Dansvoorstelling': 'Spectacle de danse', - 'Festival': 'Festival', - 'Toeristisch evenement': 'Événement touristique', - 'Film': 'Cinéma', - 'Sportwedstrijd bekijken': 'Assister à une compétition sportive', - 'Cursus met open sessies': 'Cours avec sessions ouvertes', - 'Lessenreeks': 'Série de cours', - 'Sport en beweging': 'Activité sportive', - 'Kamp of vakantie': 'Camp de vacances', - 'Begeleide uitstap of rondleiding': 'Tour ou excursion guidée', - 'Route': 'Itinéraire', - 'Spel of quiz': 'Jeu ou quiz', - 'Party of fuif': 'Soirée', - 'Festiviteit': 'Festivité', - 'Congres of studiedag': 'Congrès ou journée d\'étude', - 'Eet- of drankfestijn': 'Festin de nourriture ou de boisson', - 'Thema of pretpark': 'Parc à thème ou parc d\'attractions', - 'Theater': 'Théâtre', - 'Jeugdhuis of jeugdcentrum': 'Maison de jeunes ou centre de jeunesse', - 'Cultuur- of ontmoetingscentrum': 'Centre culturel ou centre de réunion', - 'Discotheek': 'Discothèque', - 'Bibliotheek of documentatiecentrum': 'Bibliothèque ou centre de documentation', - 'Bioscoop': 'Cinéma', - 'Horeca': 'Horeca', - 'Openbare ruimte': 'Espace public', - 'Tentoonstelling': 'Exposition', - 'Markt, braderie of kermis': 'Marché, foire ou fête foraine', - 'Natuurgebied of park': 'Zone naturelle ou parc', - 'Natuur, park of tuin': 'Zone naturelle ou parc', - 'Beurs': 'Foire', - 'Monument': 'Monument', - 'Opendeurdag': 'Journée portes ouvertes', - 'Recreatiedomein of centrum': 'Centre de loisirs ou centre de récréation', - 'Park of tuin': 'Jardin ou parc', - 'Archeologische Site': 'Site archéologique', - 'School of onderwijscentrum': 'École ou centre éducatif', - 'Sportcentrum': 'Centre sportif', - 'Winkel': 'Magasin', - 'Speeltuin': 'Aire de jeu', - 'Museum of galerij': 'Musée ou galerie', - 'Zaal of expohal': 'Hall ou salle d\'expo' - }, - offerThemes: { - 'Antiek en brocante': 'Antiquités ou brocantes', - 'Architectuur': 'Architecture', - 'Audiovisuele kunst': 'Arts graphiques', - 'Beeldhouwkunst': 'Sculpture', - 'Fotografie': 'Photographie', - 'Grafiek': 'Art grafique', - 'Installatiekunst': 'Installation', - 'Schilderkunst': 'Peinture', - 'Decoratieve kunst': 'Arts décoratifs', - 'Design': 'Design', - 'Mode': 'Mode', - 'Meerdere kunstvormen': 'Arts pluridisciplinaires', - 'Ballet en klassieke dans': 'Ballet et danse classique', - 'Volksdans en werelddans': 'Danse folklorique et mondiale', - 'Stijl en salondansen': 'Danse de salon et stylée', - 'Moderne dans': 'Danse moderne', - 'Erfgoed': 'Patrimoine', - 'Avontuur': 'Aventure', - 'Natuur': 'Nature', - 'Sport': 'Sport', - 'Technologie': 'La technologie', - 'Koken': 'La cuisine', - 'Actie- en avonturenfilm': 'Film d\'action et d\'aventure', - 'Animatie en kinderfilms': 'Films animés et films pour enfants', - 'Documentaires en reportages': 'Documentaires et reportages', - 'Griezelfilm of horror': 'Films d\'épouvantes ou orreurs', - 'Historische film': 'Films historiques', - 'Komedie': 'Comédie', - 'Kortfilm': 'Court métrage', - 'Filmmusical': 'Comédie musicale', - 'Drama': 'Films dramatiques', - 'Science fiction': 'Science fiction', - 'Cinefiel': 'Cinéphile', - 'Thriller': 'Films à suspense', - 'Meerdere filmgenres': 'Films de tous genres', - 'Geschiedenis': 'Histoire et archéologie', - 'Gezondheid en wellness': 'Santé et bien-être', - 'Landbouw en platteland': 'Agriculture et campagne', - 'Milieu en natuur': 'Environnement et nature', - 'Literatuur': 'Littérature', - 'Poezie': 'Poésie', - 'Fictie': 'Fiction', - 'Non fictie': 'Non fiction', - 'Strips': 'Bandes dessinées', - 'Klassieke muziek': 'Musique classique', - 'Jazz en blues': 'Jazz et blues', - 'Pop en rock': 'Pop et rock', - 'Hiphop, r&b en rap': 'Hiphop, r&b et rap', - 'Dance muziek': 'Musique de danse', - 'Folk en wereldmuziek': 'Musique folklorique et mondiale', - 'Amusementsmuziek': 'Cabaret', - 'Politiek en maatschappij': 'Politique et société', - 'Creativiteit': 'Créativité', - 'Computer en techniek': 'Ordinateurs et technologie', - 'Opvoeding': 'Éducation', - 'Persoon en relaties': 'Hommes et relations', - 'Interculturele vorming': 'Formation interculturelle', - 'Kunst en kunsteducatie': 'Arts et formation artistique', - 'Gezondheid en zorg': 'Santé et soins', - 'Samenleving': 'Vivre en société', - 'Bal en racketsport': 'Sports de balles et raquettes', - 'Atletiek, wandelen en fietsen': 'Athlétisme, marche et cyclisme', - 'Zwemmen en watersport': 'Natation et sports nautiques', - 'Fitness, gymnastiek, dans en vechtsport': 'Fitness, gymnastique, danse et arts martiaux', - 'Outdoor en Adventure sport': 'Sports de plein air et d\'aventure', - 'Lucht en motorsport': 'Sports aero et moteurs', - 'Volkssporten': 'Sports folkloriques', - 'Omnisport en andere': 'Omnisports et autres', - 'Tekst en muziektheater': 'Théâtre dramatique et musical', - 'Humor en comedy': 'L\'humour et la comédie', - 'Musical': 'Comédie musicale', - 'Figuren en poppentheater': 'Théâtre de marionnettes', - 'Opera en operette': 'Opéra et opérette', - 'Mime en bewegingstheater': 'Mime et theéâtre de mouvements', - 'Wetenschap': 'Sciences', - 'Zingeving, filosofie en religie': 'Sens de la vie, philosophie et religion', - 'Thema onbepaald': 'Thème non défini', - 'Circus': 'Cirque', - 'Voeding': 'Nutrition', - 'Economie': 'Économie', - 'Themakamp': 'Camp thématique', - 'Taal en communicatie': 'Langue' - }, - offerThemesGroups: { - 'Dans': 'Danse', - 'Kunst en erfgoed': 'Art et Patrimoine', - 'Muziek': 'Musique', - 'Sport': 'Sport', - 'Varia': 'Divers' - }, - weekdays: { - monday: { - label: 'lun.', - name: 'Lundi' - }, - tuesday: { - label: 'mar.', - name: 'Mardi' - }, - wednesday: { - label: 'mer.', - name: 'Mercredi' - }, - thursday: { - label: 'jeu.', - name: 'Jeudi' - }, - friday: { - label: 'ven.', - name: 'Vendredi' - }, - saturday: { - label: 'sam.', - name: 'Samedi' - }, - sunday: { - label: 'dim.', - name: 'Dimanche' - } - }, - search: { - search: 'Chercher', - advanced: 'Avancé', - label: 'Mettre un label', - deselect: 'Annuler la sélection', - savedSearches: { - savedSearches: 'Recherches conservées', - items: { - 'Door mij ingevoerd': 'Encodé par moi' - }, - mySearches: 'Mes recherches', - title: 'Titre', - viewResults: 'Consulter résultats', - yourSearch: 'Votre recherche', - save: 'Conserver', - }, - manage: 'Gérer', - oneResult: '1 résultat', - multipleResults: '{{count}} résultats', - description: 'Description', - labels: 'Labels', - picture: 'Image', - what: 'Quoi', - where: 'Où', - when: 'Quand', - inputInformation: 'Information encodage', - noEventsFound: 'Aucun événements trouvés, essayez une autre recherche.', - exportButton: 'Activités d\'exportation', - modal: 'Votre sélection ne contient aucune activité, veuillez essayer d’exporter une autre recherche.', - advancedQueryBuilder: { - title: 'Moteur de recherche avancée', - header: { - info: 'Ici vous pouvez effectuer des recherches avancées. Besoin d\'aide ? Lisez ', - link: 'le mode d\'emploi' - }, - group: 'Groupe ', - include: 'Inclure', - exclude: 'Exclure', - addGroup: 'Ajouter groupe', - cancel: 'Annuler', - search: 'Rechercher', - syntaxError: 'Votre requête contient une erreur. Sur cette page, vous trouverez plus d\'informations sur la manière de rédiger une requête.', - invalidField: '{{field}} n\'est pas un paramètre valide. Sur cette page, vous trouverez plus d\'informations sur la manière de rédiger une requête.', - } - } - } -); -})(); - -// Source: src/core/translations/german-translations.constant.js -(function () { -'use strict'; -// jscs:disable maximumLineLength - -/** - * @ngdoc service - * @name udbApp.udbGermanTranslations - * @description - * # udbGermanTranslations - * Constant in the udbApp. - */ -angular.module('udb.core').constant('udbGermanTranslations', { - 'BE': 'Belgien', - 'NL': 'Niederlande', - 'ZZ': 'Ort in Absprache mit der Schule', - 'EN_ADJECTIVE': 'englische', - 'FR_ADJECTIVE': 'französische', - 'DE_ADJECTIVE': 'deutsche', - 'NL_ADJECTIVE': 'niederländische', - 'datepicker': { - 'CURRENT': 'Heute', - 'CLEAR': 'Löschen', - 'CLOSE': 'Schließen', - }, - '=': 'ist gleich', - '><': 'zwischen', - '+': 'ist gleich', - '!': 'ist ungleich', - '-': 'ist ungleich', - '>': 'ist größer oder gleich', - '<': 'ist kleiner oder gleich', - '>_DATE': 'später als', - '<_DATE': 'früher als', - '=_DATE': 'ist gleich', - '><_DATE': 'zwischen', - 'choice': { - 'everyone': 'alle', - 'members': 'Mitglieder', - 'education': 'Bildung', - 'Available': 'Findet statt', - 'Unavailable': 'Abgesagt', - 'TemporarilyUnavailable': 'Verlegt', - 'available': 'Verfügbar', - 'unavailable': 'Voll oder ausverkauft', - 'online': 'online', - 'offline': 'physisch', - 'mixed': 'gemischt (physisch / offline)', - 'asc': 'aufsteigend', - 'desc': 'absteigend', - 'today': 'heute', - 'tomorrow': 'morgen', - 'thisweekend': 'dieses Wochenende', - 'nextweekend': 'nächstes Wochenende', - 'next7days': 'die nächsten 7 Tage', - 'next14days': 'die nächsten 14 Tage', - 'next30days': 'die nächsten 30 Tage', - 'next3months': 'die nächsten 3 Monate', - 'next6months': 'die nächsten 6 Monate', - 'next12months': 'die nächsten 12 Monate', - 'permanent': 'permanent', - 'event': 'Veranstaltung', - 'place': 'Ort', - 'actor': 'Schauspieler', - 'production': 'Produktion', - 'nl': 'Niederländisch', - 'fr': 'Französisch', - 'en': 'Englisch', - 'de': 'Deutsch', - 'AF': 'Afghanistan', - 'AX': 'Ålandinseln', - 'AL': 'Albanien', - 'DZ': 'Algerien', - 'AS': 'Amerikanisch-Samoa', - 'VI': 'Amerikanische Jungferninseln', - 'UM': 'Kleinere abgelegene Inseln der Vereinigten Staaten', - 'AD': 'Andorra', - 'AO': 'Angola', - 'AI': 'Anguilla', - 'AQ': 'Antarktis', - 'AG': 'Antigua und Barbuda', - 'AR': 'Argentinien', - 'AM': 'Armenien', - 'AW': 'Aruba', - 'AU': 'Australien', - 'AZ': 'Aserbaidschan', - 'BS': 'Bahama’s', - 'BH': 'Bahrein', - 'BD': 'Bangladesch', - 'BB': 'Barbados', - 'BE': 'Belgien', - 'BZ': 'Belize', - 'BJ': 'Benin', - 'BM': 'Bermuda', - 'BT': 'Bhutan', - 'BO': 'Bolivien', - 'BA': 'Bosnien und Herzegowina', - 'BW': 'Botswana', - 'BV': 'Bouvetinsel', - 'BR': 'Brasilien', - 'IO': 'Britisches Territorium im Indischen Ozean', - 'VG': 'Britische Jungferninseln', - 'BN': 'Brunei', - 'BG': 'Bulgarien', - 'BF': 'Burkina Faso', - 'BI': 'Burundi', - 'KH': 'Kambodscha', - 'CA': 'Kanada', - 'KY': 'Kaimaninseln', - 'CF': 'Zentralafrikanische Republik', - 'CL': 'Chile', - 'CN': 'China', - 'CX': 'Weihnachtsinsel', - 'CC': 'Kokosinseln', - 'CO': 'Kolumbien', - 'KM': 'Komoren', - 'CG': 'Kongo', - 'CD': 'Kongo-Kinshasa', - 'CK': 'Cookinseln', - 'CR': 'Costa Rica', - 'CU': 'Kuba', - 'CY': 'Zypern', - 'DK': 'Dänemark', - 'DJ': 'Dschibuti', - 'DM': 'Dominica', - 'DO': 'Dominikanische Republik', - 'DE': 'Deutschland', - 'EC': 'Ecuador', - 'EG': 'Ägypten', - 'SV': 'El Salvador', - 'GQ': 'Äquatorialguinea', - 'ER': 'Eritrea', - 'EE': 'Estland', - 'ET': 'Äthiopien', - 'FO': 'Färöer Inseln', - 'FK': 'Falklandinseln', - 'FJ': 'Fidschi', - 'PH': 'Philippinen', - 'FI': 'Finnland', - 'FR': 'Frankreich', - 'GF': 'Französisch-Guayana', - 'PF': 'Französisch-Polynesien', - 'TF': 'Französische Süd- und Antarktisgebiete', - 'GA': 'Gabun', - 'GM': 'Gambia', - 'GE': 'Georgien', - 'GH': 'Ghana', - 'GI': 'Gibraltar', - 'GD': 'Grenada', - 'GR': 'Griechenland', - 'GL': 'Grönland', - 'GP': 'Guadeloupe', - 'GU': 'Guam', - 'GT': 'Guatemala', - 'GG': 'Guernsey', - 'GN': 'Guinea', - 'GW': 'Guinea-Bissau', - 'GY': 'Guyana', - 'HT': 'Haiti', - 'HM': 'Heard- und McDonald-Inseln', - 'IM': 'Insel Man', - 'HN': 'Honduras', - 'HU': 'Ungarn', - 'HK': 'Hongkong', - 'IS': 'Island', - 'IE': 'Irland', - 'IN': 'Indien', - 'ID': 'Indonesien', - 'IQ': 'Irak', - 'IR': 'Iran', - 'IL': 'Israel', - 'IT': 'Italien', - 'CI': 'Elfenbeinküste', - 'JM': 'Jamaika', - 'JP': 'Japan', - 'YE': 'Jemen', - 'JE': 'Jersey', - 'JO': 'Jordanien', - 'CV': 'Kapverden', - 'CM': 'Kamerun', - 'KZ': 'Kasachstan', - 'KE': 'Kenia', - 'KG': 'Kirgisistan', - 'KI': 'Kiribati', - 'KW': 'Kuwait', - 'HR': 'Kroatien', - 'LA': 'Laos', - 'LS': 'Lesotho', - 'LV': 'Lettland', - 'LB': 'Libanon', - 'LR': 'Liberia', - 'LY': 'Libyen', - 'LI': 'Liechtenstein', - 'LT': 'Litauen', - 'LU': 'Luxemburg', - 'MO': 'Macau', - 'MK': 'Mazedonien', - 'MG': 'Madagaskar', - 'MW': 'Malawi', - 'MV': 'Malediven', - 'MY': 'Malaysia', - 'ML': 'Mali', - 'MT': 'Malta', - 'MA': 'Marokko', - 'MH': 'Marshallinseln', - 'MQ': 'Martinique', - 'MR': 'Mauretanien', - 'MU': 'Mauritius', - 'YT': 'Mayotte', - 'MX': 'Mexiko', - 'FM': 'Mikronesien', - 'MD': 'Moldawien', - 'MC': 'Monaco', - 'MN': 'Mongolei', - 'ME': 'Montenegro', - 'MS': 'Montserrat', - 'MZ': 'Mosambik', - 'MM': 'Myanmar', - 'NA': 'Namibien', - 'NR': 'Nauru', - 'NL': 'Niederlande', - 'AN': 'Niederländische Antillen', - 'NP': 'Nepal', - 'NI': 'Nicaragua', - 'NC': 'Neukaledonien', - 'NZ': 'Neuseeland', - 'NE': 'Niger', - 'NG': 'Nigeria', - 'NU': 'Niue', - 'KP': 'Nordkorea', - 'MP': 'Nördliche Marianen', - 'NO': 'Norwegen', - 'NF': 'Norfolkinsel', - 'UG': 'Uganda', - 'UA': 'Ukraine', - 'UZ': 'Usbekistan', - 'OM': 'Oman', - 'ZZ': 'Unbekanntes oder ungenaues Territorium', - 'TL': 'Osttimor', - 'AT': 'Österreich', - 'PK': 'Pakistan', - 'PW': 'Palau', - 'PS': 'Palestinien', - 'PA': 'Panama', - 'PG': 'Papua Neuguinea', - 'PY': 'Paraguay', - 'PE': 'Peru', - 'PN': 'Pitcairn', - 'PL': 'Polen', - 'PT': 'Portugal', - 'PR': 'Puerto Rico', - 'QA': 'Katar', - 'RO': 'Rumänien', - 'RU': 'Russland', - 'RW': 'Ruanda', - 'RE': 'Réunion', - 'BL': 'Saint Barthélemy', - 'KN': 'St. Kitts und Nevis', - 'LC': 'St. Lucia', - 'PM': 'St. Pierre und Miquelon', - 'VC': 'St. Vincent und Grenadinen', - 'SB': 'Salomoninseln', - 'WS': 'Samoa', - 'SM': 'San Marino', - 'ST': 'Sao Tome und Principe', - 'SA': 'Saudi-Arabien', - 'SN': 'Senegal', - 'RS': 'Serbien', - 'CS': 'Serbien-Montenegro', - 'SC': 'Seychellen', - 'SL': 'Sierra Leone', - 'SG': 'Singapur', - 'SH': 'St. Helena', - 'MF': 'Sint Maarten', - 'SI': 'Slowenien', - 'SK': 'Slowakei', - 'SD': 'Sudan', - 'SO': 'Somalia', - 'ES': 'Spanien', - 'LK': 'Sri Lanka', - 'SR': 'Suriname', - 'SJ': 'Spitzbergen und Jan Mayen', - 'SZ': 'Swaziland', - 'SY': 'Syrien', - 'TJ': 'Tadschikistan', - 'TW': 'Taiwan', - 'TZ': 'Tansania', - 'TH': 'Thailand', - 'TG': 'Togo', - 'TK': 'Tokelau', - 'TO': 'Tonga', - 'TT': 'Trinidad und Tobago', - 'TD': 'Tschad', - 'CZ': 'Tschechien', - 'TN': 'Tunesien', - 'TR': 'Türkei', - 'TM': 'Turkmenistan', - 'TC': 'Türkische und Caicos-Inseln', - 'TV': 'Tuvalu', - 'UY': 'Uruguay', - 'VU': 'Vanuatu', - 'VA': 'Vatikan', - 'VE': 'Venezuela', - 'GB': 'Großbritannien', - 'AE': 'Vereinigte Arabische Emirate', - 'US': 'USA', - 'VN': 'Vietnam', - 'WF': 'Wallis und Futuna', - 'EH': 'Westsahara', - 'BY': 'Weißrussland', - 'ZM': 'Sambia', - 'ZW': 'Simbabwe', - 'ZA': 'Südafrika', - 'GS': 'Südgeorgien und die Südlichen Sandwichinseln', - 'KR': 'Südkorea', - 'SE': 'Schweden', - 'CH': 'Schweiz', - }, - 'property': { - 'name': 'Titel', - 'description': 'Beschreibung', - 'labels': 'Labels', - 'calendarSummary': 'Kalenderzusammenfassung', - 'image': 'Abbildung', - 'location': 'Ort', - 'address': 'Adresse', - 'organizer': 'Organisator', - 'priceInfo': 'Preisinformation', - 'kansentarief': 'Ermäßigter Tarif', - 'bookingInfo': 'Buchungsinfo', - 'contactPoint': 'Kontaktinfo', - 'status': 'Status', - 'bookingAvailability': 'Tickets & Plätze', - 'attendance': 'Anwesenheits-Modus', - 'creator': 'Autor', - 'terms.theme': 'Thema', - 'terms.eventtype': 'Typ', - 'created': 'Datum erstellt', - 'modified': 'Datum letzte Anpassung', - 'publisher': 'Autor', - 'available': 'Embargodatum', - 'endDate': 'Enddatum', - 'startDate': 'Startdatum', - 'calendarType': 'Zeitart', - 'sameAs': 'Externe IDs', - 'typicalAgeRange': 'Alter', - 'language': 'Sprache', - 'audience': 'Zutritt', - }, - 'preview': { - 'tabs': { - 'data': 'Angaben', - 'history': 'Verlauf', - 'publication': 'Veröffentlichung', - }, - 'not_found': 'Seite nicht gefunden', - 'not_found_help': 'Diese Seite konnte nicht gefunden werden.', - 'loading': 'Laden...', - 'edit': 'Bearbeiten', - 'duplicate': 'Kopieren und anpassen', - 'change_availability': 'Verfügbarkeit ändern', - 'delete': 'Löschen', - 'title': 'Titel', - 'type': 'Typ', - 'entrance': 'Zutritt', - 'description': 'Beschreibung', - 'no_description': 'Keine Beschreibung', - 'where': 'Wo', - 'bookable_event_location_info': 'Ort in Absprache mit der Schule.', - 'online': 'Online', - 'online_location': 'Online-Teilnahme', - 'online_location_missing': 'Keine Url für Online-Teilnahme', - 'when': 'Wann', - 'labels': 'Labels', - 'labels_error': 'Das Hinzufügen von Label \'{{labelName}}\' war nicht möglich.', - 'labels_success': 'Das Label \'{{addedLabel}}\' wurde erfolgreich hinzugefügt.', - 'organizer': 'Organisation', - 'no_organizer': 'Keine Organisationsinformation', - 'price': 'Preis', - 'free': 'Kostenlos', - 'currency': 'Euro', - 'no_price': 'Keine Preisinformation', - 'booking_availability': 'Tickets & Plätze', - 'booking_unavailable': 'Voll oder ausverkauft', - 'booking_available': 'Verfügbar', - 'age_label': 'Geeignet für', - 'all_ages': 'Alle Altersgruppen', - 'no_age': 'Keine Altersinformation', - 'videos_label': 'Videos', - 'no_videos': 'Keine Videos', - 'publiq_url': 'Auf {{publicationBrand}}ansehen', - 'translate': 'Übersetzen', - 'info_lesson_series': 'Ihre Unterrichtsreihe erscheint bis zum ersten Unterrichtszeitpunkt in UiT-Agenden.', - 'info_holiday_camp': 'Ihr Camp oder Urlaub wird bis zum Starttag in online Agendas angezeigt.' - }, - 'translate': { - 'ready': 'Fertig mit übersetzen', - 'translate': 'übersetzen', - 'original': 'Original', - 'edit': 'Bearbeiten', - 'translation': 'Übersetzung', - 'description': 'Beschreibung', - 'title': 'Titel', - 'tariff': 'Preistarif', - 'address': 'Adresse', - 'street': 'Straße und Hausnummer', - }, - 'labels': { - 'what': 'Mit einem Label fügen Sie kurze, konkrete Suchbegriffe hinzu.', - 'invalid': 'Dies scheint ein ungültiges Label zu sein. Ein Label', - 'chars': 'besteht ausschließlich aus Buchstaben oder Zahlen', - 'excluded': - 'enthält lediglich \'-\' und \'_\', aber darf nicht mit diesen Zeichen anfangen', - 'length': 'umfasst 2 bis 50 Zeichen', - }, - 'calendarSummary': { - 'openinghours': 'mehrere Zeiten', - 'from': 'Von', - 'till': 'bis', - 'permanent': 'Permanent', - }, - 'moderate': { - 'infoAlert': '

Willkommen auf der Validierungsseite. Auf dieser Seite können Sie als dezentraler Validator Veranstaltungen genehmigen oder ablehnen:

  • Ablehnen. Abgelehnte Veranstaltungen werden nicht mehr auf UiTinVlaanderen oder anderen UiT-Agenden veröffentlicht und können vom Importeur nicht mehr bearbeitet werden.
  • Genehmigen. Genehmigte Veranstaltungen bleiben auf UiTinVlaanderen und anderen UiTagenda-Plattformen veröffentlicht. Sie werden nicht erneut zur Validierung vorgelegt.

Eine Anleitung zur Validierung finden Sie in den Inhaltsregeln der UiTdatabank.

', - 'validate': 'Validieren', - 'approve': 'Genehmigen', - 'approved': 'Genehmigt', - 'reject': 'Ablehnen', - 'rejected': 'Abgelehnt', - 'continue_validation': 'Mit Validierung fortfahren', - }, - 'cultuurkuur': { - 'info': 'Diese Veranstaltung enthält extra Informationen für Schulen und Lehrkräfte.', - 'subject': 'Betreff', - 'target_group': 'Zielgruppe', - 'levels': 'Geeignet für', - 'grades': 'Bildungsgrade', - 'edit_link': 'Auf cultuurkuur.be ändern', - 'incomplete_help': - 'Fügen Sie ergänzende Informationen für Schulen und Lehrkräfte auf cultuurkuur.be hinzu.', - 'continue': 'Weiter', - }, - 'booking': { - 'label': 'Buchung', - 'no_booking': 'Keine Buchungsinformation', - }, - 'contact': { - 'label': 'Kontakt', - 'or': 'oder', - 'no_contact': 'Keine Kontaktinformation', - }, - 'imageDetail': { - 'label': 'Abbildungen', - 'alt_image': 'Abbildung {{index}}', - 'main_image': 'Hauptabbildung', - 'no_images': 'Keine Abbildungen', - }, - 'prices': { - 'title': 'Preise hinzufügen', - 'base': 'Basistarif', - 'target_group': 'Zielgruppe', - 'free': 'Kostenlos', - 'currency': 'Euro', - 'add_price': 'Preis eingeben', - 'add_tarriff': 'Tarif hinzufügen', - 'error': 'Beim Speichern des Preises ist ein Fehler aufgetreten.', - 'invalid': - 'Diese Preisinformation scheint ungültig zu sein und kann daher nicht gespeichert werden.', - 'invalid_tip1': 'Notieren Sie Dezimalstellen mit einem Komma.', - 'invalid_tip2': - 'Lassen Sie keine Reihe frei, geben Sie immer eine Zielgruppe und einen Betrag ein.', - 'invalid_tip3': 'Geben Sie maximal zwei Ziffern nach dem Komma ein.', - 'close': 'Schließen', - 'save': 'Speichern', - }, - 'location': { - 'title': 'Neuen Ort hinzufügen', - 'name': 'Bezeichnung Ort', - 'name_validation': 'Die Bezeichnung des Ortes ist ein Pflichtfeld.', - 'street': 'Straße und Hausnummer', - 'street_validation': 'Straße ist ein Pflichtfeld.', - 'city': 'Stadt', - 'category': 'Kategorie', - 'category_help': - 'Wählen Sie eine Kategorie, die diesen Ort am besten umschreibt.', - 'category_validation': 'Kategorie ist ein Pflichtfeld.', - 'error': 'Beim Speichern Ihres Ortes ist ein Fehler aufgetreten.', - 'invalid_street': - 'Dies scheint eine ungültige Adresse zu sein. Wenn Sie Leerzeichen in der Adresse verwenden, dürfen nach dem letzten Leerzeichen nicht mehr als 15 Zeichen stehen.', - 'cancel': 'Abbrechen', - 'add': 'Hinzufügen', - 'zip': 'Postleitzahl', - 'nlPostalCode_validation': 'Postleitzahl ist ein Pflichtfeld.', - 'invalid_PostalCode': - 'Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern.', - }, - 'eventForm': { - 'langWarning': - 'Achtung, Sie (be)arbeiten in einer anderen Sprache: {{language}}. Falls dies nicht beabsichtigt ist, wenden Sie sich bitte an vragen@uitdatabank.be.', - 'step1': { - 'title': 'Was möchten Sie hinzufügen?', - 'label_event': 'Eine Veranstaltung', - 'show_everything': 'Alles anzeigen', - 'or': 'oder', - 'location_label': 'Einen Ort', - 'change': 'Ändern', - 'refine': 'Verfeinern', - 'info_lesson_series': 'Ihre Unterrichtsreihe erscheint bis zum ersten Unterrichtszeitpunkt in UiT-Agenden.' - }, - 'step2': { - 'date_help_event': - 'Wann findet diese Veranstaltung oder diese Aktivität statt?', - 'date_help_place': 'Wann ist diese Stelle oder dieser Ort geöffnet?', - }, - 'step3': { - 'title_event': 'Wo findet diese Veranstaltung oder diese Aktivität statt?', - 'title_place': 'Wo befindet sich diese Stelle oder dieser Ort?', - 'choose_city': 'Wählen Sie eine Stadt', - 'choose_city_helper': 'zB. Gent oder 9000', - 'choose_residence': 'Wählen Sie eine Wohnanschrift', - 'choose_residence_helper': 'zB. Groningen oder Amsterdam', - 'placeholder_city': 'Stadt oder Postleitzahl', - 'problem_city': 'Beim Abrufen der Städte ist ein Problem aufgetreten', - 'change': 'Ändern', - 'choose_location': 'Wählen Sie einen Ort', - 'placeholder_location': 'Name oder Adresse', - 'location_not_found': 'Ort nicht gefunden?', - 'add_location': 'Einen Ort hinzufügen', - 'location_error': 'Beim Abrufen der Orte ist ein Fehler aufgetreten', - 'street': 'Straße und Hausnummer', - 'placeholder_street': 'Kerkstraat 1', - 'street_validate': 'Straße und Hausnummer ist ein Pflichtfeld.', - 'street_validate_long': - 'Dies scheint eine ungültige Adresse zu sein. Wenn Sie Leerzeichen in der Adresse verwenden, dürfen nach dem letzten Leerzeichen nicht mehr als 15 Zeichen stehen.', - 'ok': 'OK', - 'zip': 'Postleitzahl', - 'zip_validate': 'Postleitzahl ist ein Pflichtfeld.', - 'invalid_zip': - 'Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern.', - 'bookable_event_info_alert': - 'Veranstaltungen, bei denen der Ort in Absprache festgelegt wird, werden nicht auf UiTinVlaanderen oder anderen Öffentlichkeitskanälen veröffentlicht. Ihre Veranstaltung wird jedoch auf cultuurkuur.be angezeigt', - 'bookable_event_next_button': 'Weiter', - 'bookable_event_success_message': - 'Der Ort wird in Absprache mit der Schule festgelegt.', - }, - 'step4': { - 'age': { - 'age_label': 'Geeignet für', - 'All ages': 'Alle Altersgruppen', - 'Toddlers': 'Kleinkinder', - 'Preschoolers': 'Kindergartenkinder', - 'Kids': 'Kinder', - 'Teenagers': 'Teenager', - 'Youngsters': 'Junge', - 'Adults': 'Erwachsene', - 'Seniors': 'Senioren', - 'Custom': 'Andere', - 'from': 'Von', - 'till': 'Bis', - 'age': 'Jahre', - 'error_max_lower_than_min': - 'Das Höchstalter kann nicht unter dem Mindestalter liegen.', - }, - 'basic_data': 'Basisangaben', - 'name_event': 'Name der Veranstaltung', - 'name_place': 'Bezeichnung des Ortes', - 'help_event': - 'Verwenden Sie einen aussagekräftigen Titel, zB. "Radtour entlang von Kapellen", "Die Sage vom Einhorn".', - 'help_place': - 'Verwenden Sie die offizielle Bezeichnung, zB. "Gravensteen", "Abdijsite Herkenrode", "Cultuurcentrum De Werf".', - 'help_description': - 'Eine ausführliche Beschreibung können Sie in Schritt 5 hinzufügen.', - 'info_missing': 'Nicht alle Pflichtfelder wurden ausgefüllt:', - 'save_error': - 'Beim Speichern der Aktivität ist ein Fehler aufgetreten. Probieren Sie es später noch einmal.', - 'continue': 'Weiter', - 'doubles_title': 'Vermeiden Sie doppelte Arbeit', - 'doubles_help': - 'Wir haben vergleichbare Items gefunden. Überprüfen Sie diese bereits eher eingegebenen Items.', - 'sure': 'Sind Sie sicher, dass Sie "{{name}}" hinzufügen möchten?', - 'return_dashboard': 'Nein, zurück zum Dashboard', - 'yes_continue': 'Ja, mit der Eingabe fortfahren', - 'suggestions': { - 'from': 'Von', - 'till': 'bis', - 'permanent': 'Permanent', - }, - }, - 'step5': { - 'expose_event': 'Heben Sie Ihre Veranstaltung besonders hervor', - 'expose_place': 'Heben Sie diesen Ort besonders hervor', - 'title': 'Titel', - 'description': 'Beschreibung', - 'add_text': 'Text hinzufügen', - 'required_200': - 'Die ersten 200 Zeichen sind am wichtigsten, wenn Sie sich an ein neues Publikum richten.', - 'required_still': 'Noch', - 'required_signs': 'Zeichen.', - 'required_200_help': - 'Bringen Sie die wichtigste Botschaft in den ersten 200 Zeichen unter. Sie können noch zusätzliche Hintergrundinformationen hinzufügen.', - 'empty': 'Leeren', - 'tips': { - 'Concert': - 'Schreiben Sie eine enthusiastische Umschreibung des Konzerts.
  • Welche(r) Künstler(innen) treten auf?
  • Um welches Genre handelt es sich?
  • Welches Album oder Werk wird vorgestellt?
', - 'Dansvoorstelling': - 'Schreiben Sie eine enthusiastische Umschreibung der Tanzvorführung.
  • Wer ist der Choreograph?
  • Wer sind die Tänzer?
  • Welchen Stil tanzen sie?
  • Um welches Thema oder Problem dreht sich die Vorstellung?
', - 'Festival': - 'Schreiben Sie eine enthusiastische Umschreibung des Festivals.
  • Wer oder was steht auf dem Programm?
  • Welche (Neben)Aktivitäten gibt es?
', - 'Film': 'Schreiben Sie eine enthusiastische Umschreibung des Films.
  • Umreißen Sie kurz die Geschichte.
  • Wer ist der Regisseur?
  • Wer spielt die Hauptrolle?
  • Hat der Film Preise gewonnen?
', - 'Lezing of congres': - 'Schreiben Sie eine enthusiastische Umschreibung der Lesung oder des Kongresses.
  • Welche Themas werden behandelt?
  • Welche Sprecher nehmen das Wort?
', - 'Theatervoorstelling': - 'Schreiben Sie eine enthusiastische Umschreibung der Vorstellung.
  • Umreißen Sie kurz die Geschichte oder das Thema.
  • Welches Theaterensemble führt das Stück auf?
  • Welche Darsteller spielen mit?
', - 'Sportwedstrijd bekijken': - 'Schreiben Sie eine enthusiastische Umschreibung des Sportwettkampfes.
  • Welche Mannschaften oder Teilnehmer treten an?
  • In welcher Liga findet der Wettkampf statt?
', - 'Markt of braderie': - 'Schreiben Sie eine enthusiastische Umschreibung des Markts oder Straßenfests.
  • In welchen Straßen findet dieser statt?
  • Welche Stände werden anwesend sein?
  • Gibt es (Neben)Aktivitäten?
', - 'Opendeurdag': - 'Schreiben Sie eine enthusiastische Umschreibung vom Tag der offenen Tür. Was kann man sehen oder erleben?', - 'Beurs': - 'Schreiben Sie eine enthusiastische Umschreibung der Messe. Was kann man ansehen, erleben oder kaufen?', - 'Tentoonstelling': - 'Schreiben Sie eine enthusiastische Umschreibung der Ausstellung.
  • Welche Künstler stellen aus?
  • Welche Kollektionen können betrachtet werden?
  • Steht ein (Audio)Guide oder eine Broschüre zur Verfügung?
', - 'Begeleide uitstap of rondleiding': - 'Schreiben Sie eine enthusiastische Umschreibung des Rundgangs.
  • Was kann man entlang der Strecke sehen oder erleben?
  • Gibt es eine maximale Anzahl Teilnehmer?
  • Wird der Rundgang durchgehen oder zu bestimmten Zeiten organisiert?
  • Gibt es Dinge zu beachten (zB. Stiefel notwendig)?
', - 'Lessenreeks': - 'Schreiben Sie eine enthusiastische Umschreibung der Vorlesungsreihe.
  • Was genau lernt man?
  • Benötigt man Vorkenntnisse um teilzunehmen?
  • Welches Niveau haben die Vorlesungen?
  • Erhält man am Ende ein Diplom oder Zertifikat?
', - 'Cursus met open sessies': - 'Schreiben Sie eine enthusiastische Umschreibung des Workshops oder Kurses mit öffentlichen Sitzungen.
  • Was genau lernt man?
  • Benötigt man Vorkenntnisse um teilzunehmen?
  • Welches Niveau haben die Vorlesungen?
  • Erhält man am Ende ein Diplom oder Zertifikat?
', - 'Kamp of vakantie': - 'Schreiben Sie eine enthusiastische Umschreibung des Camps oder Ferienlagers.
  • Welche Aktivitäten gibt es?
  • Gibt es ein Thema?
  • Gibt es beim Camp Übernachtungsmöglichkeiten?
  • Wann beginnt und endet das Tagescamp und gibt es davor und danach Betreuungsmöglichkeiten?
', - 'Festiviteit': - 'Schreiben Sie eine enthusiastische Umschreibung des Jahrmarkts.
  • Welche Attraktionen gibt es?
  • Gibt es (Neben)Aktivitäten (Quiz, Konzerte, Foodtrucks, Markt...)?
', - 'Route': - 'Schreiben Sie eine enthusiastische Umschreibung des Ausflugs.
  • Findet dieser zu Fuß, mit dem Rad, mit dem Boot …statt?
  • Welche möglichen Zwischenstopps gibt es?
  • Wie lang ist die Strecke oder Dauer dieses Ausflugs?
  • Findet der Ausflug in Begleitung, mit einem Guide, einer Broschüre oder mit Wegweisern statt?
', - 'Party of fuif': - 'Schreiben Sie eine enthusiastische Umschreibung der Party. Welche DJs oder Bands treten auf?', - 'Eet of drankfestijn': - 'Schreiben Sie eine enthusiastische Umschreibung des Spendenmahls.
  • Was steht auf der Speisekarte?
  • Geht der Erlös an einen guten Zweck?
  • Gibt es (Neben)Aktivitäten?
', - 'Spel of quiz': - 'Schreiben Sie eine enthusiastische Umschreibung des Quiz oder Spiels.
  • Um welche Themen dreht sich das Quiz?
  • Hat das Spiel ein Thema?
  • Gibt es etwas zu gewinnen?
  • Gibt es eine maximale Anzahl Teilnehmer?
', - 'Sport en beweging': - 'Schreiben Sie eine enthusiastische Umschreibung der Sportaktivität.
  • Welche Sportart(en) können ausgeübt werden?
  • Welche Geräte werden (nicht) gestellt?
', - 'Monument': - 'Schreiben Sie eine enthusiastische Umschreibung des Monuments. Geben Sie auch an, ob das Monument nur eingeschränkt zugänglich ist (zB. nur Salons).', - }, - 'description_error': - 'Beim Speichern der Beschreibung ist ein Fehler aufgetreten.', - 'organizer': 'Organisation', - 'add_organizer': 'Organisation hinzufügen', - 'choose_organizer': 'Wählen Sie eine Organisation', - 'organizer_not_found': 'Organisation nicht gefunden?', - 'add_new_organizer': 'Neuen Organisator hinzufügen', - 'organizer_error': - 'Beim Speichern des Organisators ist ein Fehler aufgetreten.', - 'contact': 'Kontakt & Reservierung', - 'add_contact': 'Kontaktinformation hinzufügen', - 'website': 'Website', - 'phone': 'Telefonnummer', - 'e-mail': 'E-Mail-Adresse', - 'use_booking': 'Für Reservierung verwenden', - 'booking_exposure': 'Wie soll dieser Link angezeigt werden?', - 'buy_tickets': 'Tickets kaufen', - 'reserve_places': 'Plätze reservieren', - 'check_availability': 'Verfügbarkeit kontrollieren', - 'subscribe': 'Melden Sie sich an', - 'add_more_contact': 'Weitere Kontaktangaben hinzufügen', - 'contact_error': - 'Beim Speichern der Kontaktinformation ist ein Fehler aufgetreten.', - 'facilities': 'Ausstattungen', - 'add_facility': 'Ausstattung hinzufügen', - 'facility_inapplicable': 'Nicht zutreffend', - 'change': 'Ändern', - 'image_help': - 'Fügen Sie eine Abbildung hinzu, damit die Besucher Ihre Aktivität besser erkennen können.', - 'images': 'Abbildungen', - 'copyright': 'Copyright', - 'delete': 'Löschen', - 'main_image': 'Hauptabbildung erstellen', - 'add_image': 'Abbildung hinzufügen', - 'priceInfo': { - 'price_label': 'Preis', - 'add_prices': 'Preise hinzufügen', - 'free': 'Kostenlos', - 'prices': 'Preise', - 'change': 'Ändern', - 'currency': 'Euro', - }, - 'reservationPeriod': { - 'add_reservation_period': 'Reservierungszeitraum hinzufügen', - 'reservation_period': 'Reservierungszeitraum', - 'from': 'Von', - 'till': 'Bis', - }, - }, - 'publish': { - 'publish_now': 'Direkt veröffentlichen', - 'publish_later': 'Später veröffentlichen', - 'edit_done': 'Fertig mit bearbeiten', - 'online_from': 'Online ab', - }, - 'timeTracker': { - 'automatic_saved': 'Automatisch gespeichert um', - 'hour': 'Stunde', - }, - 'embargo': { - 'title': 'Wählen Sie ein Veröffentlichungsdatum', - 'help': 'Ab wann soll dies online angezeigt werden? Achtung, dieses Datum kann nur einmalig eingestellt werden.', - 'error_past': - 'Das Veröffentlichungsdatum kann nicht in der Vergangenheit liegen.', - 'error_empty': 'Wählen Sie ein Veröffentlichungsdatum.', - 'cancel': 'Abbrechen', - 'ready': 'Fertig mit bearbeiten', - }, - 'imageUpload': { - 'modalTitle': 'Abbildung hinzufügen', - 'defaultError': - 'Die ausgewählte Datei entspricht nicht den Voraussetzungen.', - 'noFileSelectedError': 'Keine Datei ausgewählt', - 'somethingWentWrongError': - 'Beim Speichern der Abbildung ist ein Fehler aufgetreten.', - 'maxSize': - 'Die Datei, die Sie hochladen möchten, ist zu groß. Die maximale Größe beträgt ', - 'formatNotValidError': - 'Die hochgeladene Datei ist keine gültige Abbildung.', - 'extensionsAllowed': - 'Nur Dateien mit den Dateierweiterungen .jpeg, .gif oder.png sind zugelassen.', - 'sizeError': 'Die hochgeladene Datei ist zu groß.', - }, - }, - 'offerStatus': { - 'scheduled': 'Findet statt', - 'cancelled': 'Abgesagt', - 'postponed': 'Verlegt', - 'open': 'Offen', - 'temporarilyClosed': 'Zeitweise geschlossen', - 'permanentlyClosed': 'Permanent geschlossen', - }, - 'bookingAvailability': { - 'unavailable': 'Voll oder ausverkauft', - }, - 'calendar': { - 'one_more_days': 'Ein oder mehrere Tage', - 'or': 'oder', - 'default_days': 'Feste Tage pro Woche', - 'start_label': 'Start', - 'end_label': 'Ende', - 'whole_day_label': 'Ganztags', - 'start_hour_label': 'Beginn', - 'end_hour_label': 'Ende', - 'add_days': 'Tag(e) hinzufügen', - 'period': { - 'title': 'Start- und Enddatum', - 'from': 'Von', - 'till': 'Bis', - 'alert': - 'Geben Sie sowohl Start- als auch Enddatum ein. Das Enddatum kann nicht vor dem Startdatum liegen.', - }, - 'openingHours': { - 'permanent_title': '24/24, 7/7', - 'permanent_subtitle': 'Jeden Tag, jede Stunde', - 'add_hours': 'Zeiten hinzufügen', - 'opening_hours': 'Öffnungszeiten', - 'change': 'Ändern', - 'days': 'Tage', - 'from': 'Von', - 'till': 'Bis', - 'more_hours': 'Weitere Öffnungszeiten hinzufügen', - 'cancel': 'Abbrechen', - 'save': 'Speichern', - }, - }, - 'facilityLabel': { - 'motor': 'Vorrichtungen für Personen mit körperlichen Einschränkungen', - 'visual': 'Vorrichtungen für Personen mit Sichteinschränkungen', - 'hearing': 'Vorrichtungen für Personen mit Höreinschränkungen', - 'other': 'Andere Vorrichtungen', - 'place': 'Vorrichtungen an diesem Ort', - 'mental': 'Vorrichtungen für Personen mit geistigen Einschränkungen', - 'neurodivers': 'Vorrichtungen für neurodiverse Personen', - }, - 'audience': { - 'entrance': 'Zutritt', - 'everyone': 'Für alle', - 'members': 'Nur für Mitglieder', - 'members_help': - 'Ihr Item wird nur auf Kanälen für Vereinigungen und deren Mitglieder veröffentlicht.', - 'education': 'Nur für Schulen', - 'education_help': - 'Ihr Item wird nur auf Kultur- und Bildungskanälen wie cultuurkuur.be veröffentlicht. Nach der Veröffentlichung können Sie noch spezielle Informationen für Schulen hinzufügen.', - }, - 'workflowStatus': { - 'label': 'Publikationsstatus', - 'id': 'ID', - 'DRAFT': 'Nicht veröffentlicht', - 'READY_FOR_VALIDATION': 'Veröffentlicht', - 'APPROVED': 'Online ab', - 'REJECTED': 'Veröffentlichung abgelehnt', - 'DELETED': 'Nicht veröffentlicht', - 'rules': 'Sehen Sie sich die Regeln an', - 'rejected_full': 'Die Veröffentlichung dieses Items wurde abgelehnt.', - }, - 'queryFieldGroup': { - 'what': 'Was', - 'where': 'Wo', - 'when': 'Wann', - 'input-information': 'Eingabeinformation', - 'translations': 'Übersetzungen', - 'other': 'Andere', - }, - 'queryFieldLabel': { - 'cdbid': 'Identifikationscode (CDBID)', - 'offertype': 'Art (Angebot)', - 'keywords': 'label', - 'title': 'Titel', - 'category_eventtype_name': 'Art (Aktivität)', - 'locationtype': 'Art (Ort)', - 'category_theme_name': 'Thema', - 'text': 'Text', - 'city': 'Stadt (Name)', - 'zipcode': 'Postleitzahl', - 'location_id': 'Ort (id)', - 'country': 'Land', - 'location_name': 'Ort (Name)', - 'location_labels': 'Ort (Labels)', - 'category_flandersregion_name': 'Region / Stadt', - 'nisRegions': 'Region / Stadt', - 'date': 'Datum', - 'permanent': 'permanent', - 'lastupdated': 'Letzte Änderung', - 'creationdate': 'erstellt am', - 'createdby': 'erstellt durch', - 'availablefrom': 'Datum verfügbar', - 'detail_lang': 'Übersetzung', - 'organiser_keywords': 'Label Organisation', - 'organiser_id': 'Organisation (ID)', - 'agefrom': 'Alter', - 'attendance_mode': 'Anwesenheits-Modus', - 'price': 'Preis', - 'status': 'Status', - 'booking_availability': 'Tickets & Plätze', - 'organiser_label': 'Organisation (Name)', - 'add_facility': 'Ausstattung', - 'category_targetaudience_name': 'Zielgruppe', - 'startdate': 'Startdatum', - 'enddate': 'Enddatum', - 'lastupdatedby': 'Letzte Änderung durch', - 'category_publicscope_name': 'Öffentlichkeitsreichweite', - }, - 'EVENT-EXPORT': { - 'QUERY-IS-MISSING': - 'Exportieren ist erst möglich, nachdem Sie eine Suchanfrage ausgeführt haben', - 'TOO-MANY-ITEMS': - 'Manuelles Exportieren mit mehr als {{limit}} Items ist nicht möglich. Kontaktieren Sie vragen@uitdatabank.be für eine individuelle Lösung.', - }, - 'ANGEBOT_EINGEBEN': 'Angebot eingeben', - 'ANGEBOT_BEARBEITEN': 'Angebot bearbeiten', - 'ANGEBOT_MODERIEREN': 'Angebot moderieren', - 'ANGEBOT_ENTFERNEN': 'Angebot entfernen', - 'ORGANISATIONEN_VERWALTEN': 'Organisationen verwalten', - 'BENUTZER_VERWALTEN': 'Benutzer verwalten', - 'LABELS_VERWALTEN': 'Labels verwalten', - 'AUSSTATTUNGEN_BEARBEITEN': 'Ausstattungen bearbeiten', - 'ORGANISATIONEN_BEARBEITEN': 'Organisationen bearbeiten', - 'PRODUKTIONEN_ERSTELLEN': 'Produktionen erstellen', - 'FILME_ERSTELLEN': 'Filme erstellen', - 'event type missing': - 'Haben Sie eine Art in Schritt 1 gewählt?', - 'timestamp missing': - 'Haben Sie ein Datum in Schritt 2 gewählt?', - 'start or end date missing': - 'Haben Sie ein Start- und Enddatum in Schritt 2 gewählt?', - 'when missing': - 'Haben Sie eine Auswahl in Schritt 2 getroffen?', - 'place missing for event': - 'Haben Sie eine Stelle in Schritt 3 gewählt?', - 'location missing for place': - 'Haben Sie einen Ort in Schritt 3 gewählt?', - 'title is missing': - 'Haben Sie ein Angebot und einen Titel in Schritt 4 eingegeben?', - 'age range is missing': - 'Haben Sie ein Angebot und eine Altersgruppe in Schritt 4 eingegeben?', - 'UNIQUE_ORGANIZER_NOTICE': - 'Um Organisationen in der UiTdatabank separat zu hinterlegen, bitten wir jede Organisation um einen individuellen & gültigen Hyperlink.', - 'OPENING_HOURS_ERROR': { - 'openAndClose': 'Tragen Sie alle Öffnungs- und Schließungszeiten ein.', - 'dayOfWeek': - 'Wählen Sie mindestens einen Tag in jeder Reihe, die Sie hinzugefügt haben.', - 'openIsBeforeClose': - 'Bitte geben Sie eine Schließungszeit ein, die später als die Öffnungszeit ist.', - }, - 'TIME_SPAN_REQUIREMENTS': { - 'timedWhenNotAllDay': - 'Eine Eingabe von Beginn und Ende ist notwendig, wenn eine Veranstaltung nicht den ganzen Tag dauert.', - 'startBeforeEndDay': 'Das Enddatum kann nicht vor dem Startdatum liegen.', - 'startBeforeEnd': 'Das Ende kann nicht vor dem Beginn liegen.', - 'tooFarInFuture': - 'Das gewählte Enddatum und Startdatum können nicht mehr als 10 Jahre in der Zukunft liegen.', - }, - 'uitpas': { - 'uitpasInfo': { - 'uitpas': 'UiTPAS', - 'uitpas_alert': - 'Dies ist ein UiTPAS-Organisator. Wählen Sie einen Preis, um eine bestimmte UiTPAS-Information hinzuzufügen.', - 'uitpas_info': 'Dies ist eine UiTPAS-Aktivität.', - 'cantChangePrice': - 'Für diese Veranstaltung wurden bereits UiTPAS-Tickets mit der bestehenden Preisinformation verkauft. Sie können die Preisinformation nicht mehr anpassen.', - 'cantChangeOrganiser': - 'Für diese Veranstaltung wurden bereits UiTPAS-Tickets verkauft. Sie können die Organisation nicht mehr anpassen.', - 'unavailable': - 'Für diese Veranstaltung sind bereits UiTPAS-Tickets verkauft worden. Sie können die Organisation nicht mehr ändern.', - }, - 'cardSystems': { - 'card_systems': 'Kartensysteme', - 'choose': '--Wählen Sie einen Verteilerschlüssel--', - 'retry': 'Erneut registrieren', - 'already_has_ticketsales': 'Für diese Veranstaltung sind bereits UiTPAS-Tickets verkauft worden. Sie können die Organisation nicht mehr ändern.', - 'not_found': 'Diese Veranstaltung ist dem UiTPAS noch nicht bekannt.' - }, - }, - 'images': { - 'agreement': - 'Sie sind dabei, (eine) Abbildung(en) hinzuzufügen und öffentlich zu machen. Dazu müssen Sie alle geltenden Urheber- und Bildnisrechte, sowie alle anderen anwendbaren Gesetze einhalten. Sie können dafür haftbar gemacht werden, entsprechend den', - 'conditions': 'allgemeinen Geschäftsbedingungen', - 'conditions_url': - 'https://www.publiq.be/nl/gebruikersovereenkomst-uitdatabank', - 'copyright_info': 'Weitere Informationen zum Copyright', - 'description': 'Beschreibung', - 'description_help': 'Maximum 250 Zeichen', - 'copyright': 'Copyright', - 'copyright_help': - 'Geben Sie den Namen des rechteinhabenden Fotografen an. Geben Sie ausschließlich den Namen Ihrer eigenen Vereinigung oder Organisation an, wenn Sie selbst die Rechte besitzen (mindestens 2 Zeichen).', - 'cancel': 'Abbrechen', - 'agree': 'Zustimmen', - 'upload': { - 'select_image': 'Foto auswählen', - 'choose_file': 'Datei wählen', - 'max_filesize': - 'Die maximale Größe Ihrer Abbildung beträgt {{maxFileSize}} und hat als Erweiterung .jpeg, .gif oder .png', - 'upload': 'Hochladen', - }, - 'edit': { - 'title': 'Abbildungsinfo bearbeiten', - 'description_help': - 'Eine gute Beschreibung Ihrer Abbildung wird von Suchmaschinen und Nutzern mit einer Sichteinschränkung gelesen. (max. 250 Zeichen)', - 'save_error': 'Beim Speichern der Abbildung ist ein Fehler aufgetreten.', - 'update': 'Aktualisieren', - }, - 'remove': { - 'title': 'Abbildungen entfernen', - 'sure': 'Sind Sie sicher, dass Sie diese Abbildung entfernen möchten?', - 'save_error': 'Beim Entfernen der Abbildung ist ein Fehler aufgetreten.', - }, - }, - 'organizer': { - 'modal': { - 'title': 'Neue Organisation hinzufügen', - 'avoid_doubles': 'Vermeiden Sie doppelte Arbeit', - 'unique_notice': - 'Um Organisationen in der UiTdatabank separat zu hinterlegen, bitten wir jede Organisation um einen individuellen & gültigen Hyperlink.', - 'website': 'Website', - 'alert_warning': - 'Diese Adresse ist bereits in Benutzung durch die Organisation \'{{organizerName}}\'. Geben Sie eine individuelle Website an oder', - 'alert_button': 'verwenden Sie {{organizerName}} als Organisation', - 'name_help': 'Der offizielle, öffentliche Name der Organisation.', - 'name_required': 'Bitte tragen Sie einen Namen ein', - 'name_maxlength': - 'Der Name der Organisation kann nur 250 Zeichen umfassen.', - 'add_confirm': - 'Sind Sie sicher, dass Sie "{{newOrganizerName}}" als Organisation hinzufügen möchten? Eine doppelte Eingabe von Organisationen ist nicht gestattet.', - 'doubles': 'Wir haben diese vergleichbaren Items gefunden:', - 'select': 'Auswählen', - 'your_input': 'Ihre Eingabe:', - 'still_enter': 'Dennoch eingeben', - 'save_error': - 'Beim Speichern Ihrer Organisation ist ein Fehler aufgetreten.', - 'address_error': 'Bitte tragen Sie eine gültige Adresse ein.', - 'contact_error': 'Bitte alle Kontaktinformationen korrekt eintragen.', - 'close': 'Schließen', - 'save': 'Speichern', - 'label_name': 'Name', - }, - 'address': { - 'label_street': 'Straße und Hausnummer', - 'help_street': 'Bitte geben Sie eine Straße und Hausnummer ein.', - 'help_zip': 'Bitte geben Sie eine Postleitzahl ein.', - 'validate_zip': - 'Dies scheint eine ungültige Postleitzahl zu sein. Eine Postleitzahl besteht aus 5 Ziffern.', - 'label_city': 'Stadt', - 'label_residence': 'Wohnanschrift', - 'help_city': 'Beim Abrufen der Städte ist ein Problem aufgetreten.', - 'error_city': 'Bitte geben Sie eine Stadt ein.', - 'change': 'Ändern', - 'zip': 'Postleitzahl', - 'delete': 'Leeren', - 'delete_success': 'Adresse erfolgreich gelöscht', - 'delete_error': 'Beim Löschen Ihrer Adresse ist ein Fehler aufgetreten', - }, - 'contact': { - 'title': 'Kontakt', - 'enter_url': 'Geben Sie ein URL ein', - 'enter_email': 'Geben Sie eine E-Mail-Adresse ein', - 'enter_phone': - 'Geben Sie eine Telefonnummer ein, zB. 011 32 43 54', - 'required': 'Bitte dieses Feld nicht leer lassen.', - 'valid_url': 'Bitte eine gültige URL eingeben.', - 'valid_email': 'Bitte eine gültige E-Mail-Adresse eingeben.', - 'valid_phone': 'Bitte eine gültige Telefonnummer eingeben.', - 'cancel': 'Abbrechen', - 'add': 'Hinzufügen', - 'add_phone': 'Telefonnummer hinzufügen', - 'add_email': 'E-Mail-Adresse hinzufügen', - 'add_url': 'Andere Website hinzufügen', - }, - 'manage': { - 'edit': 'Bearbeiten', - 'delete': 'Löschen', - 'overview': 'Zurück zur Übersicht', - 'dashboard': 'Zurück zum Dashboard', - 'name': 'Name', - 'description': 'Beschreibung', - 'educational_description': 'Beschreibung für Cultuurkuur', - 'address': 'Adresse', - 'website': 'Website', - 'phone': 'Telefonnummer', - 'email': 'E-Mail-Adresse', - 'labels': 'Labels', - 'removed': 'Diese Organisation wurde entfernt.', - }, - }, - 'duplicate': { - 'title': 'Kopieren und anpassen', - 'description': - 'Sie sind dabei, eine Veranstaltung zu kopieren. Wählen Sie einen Zeitpunkt für diese Veranstaltung.', - 'error': 'Beim Erstellen der Kopie ist ein Fehler aufgetreten!', - }, - 'dashboard': { - 'welcome': 'Willkommen,', - 'no_items': 'Sie haben noch keine Items hinzugefügt.', - 'add_activity': 'Eine Aktivität oder einen Ort hinzufügen?', - 'my_activities': 'Meine Aktivitäten und Orte', - 'my_organizers': 'Meine Organisationen', - 'add': 'Hinzufügen', - 'add_organizer': 'Organisation hinzufügen', - 'directive': { - 'no_publish': 'Nicht veröffentlicht!', - 'online': 'Online auf', - 'edit': 'Bearbeiten', - 'example': 'Beispiel', - 'delete': 'Löschen', - 'expired_event': 'Abgelaufene Veranstaltung', - }, - 'delete': { - 'sure': 'Sind Sie sicher, dass Sie "{{name}}" löschen möchten?', - 'error_location': - 'Der Ort "{{name}}" kann nicht gelöscht werden, da dort Aktivitäten geplant sind.', - 'error': 'Beim Löschen der Aktivität ist ein Fehler aufgetreten.', - 'cancel': 'Abbrechen', - 'delete': 'Löschen', - }, - }, - 'entry': { - 'exported_documents': 'Exportierte Dokumente', - 'notifications': 'Benachrichtigungen', - 'in_progress': 'In Behandlung', - }, - 'offerTypes': { - 'Concert': 'Konzert', - 'Theatervoorstelling': 'Theatervorstellung', - 'Lezing of congres': 'Lesung oder Kongress', - 'Dansvoorstelling': 'Tanzvorführung', - 'Festival': 'Festival', - 'Film': 'Film', - 'Sportwedstrijd bekijken': 'Sportwettkampf ansehen', - 'Cursus met open sessies': 'Kurs mit öffentlichen Sitzungen', - 'Lessenreeks': 'Vorlesungsreihe', - 'Sport en beweging': 'Sport und Bewegung', - 'Kamp of vakantie': 'Camp oder Ferienlager', - 'Begeleide uitstap of rondleiding': 'Begleiteter Rundgang', - 'Route': 'Ausflug', - 'Spel of quiz': 'Spiel oder Quiz', - 'Party of fuif': 'Party', - 'Festiviteit': 'Feiern', - 'Congres of studiedag': 'Kongress oder Studientag', - 'Eet- of drankfestijn': 'Spendenmahl', - 'Themen- oder Vergnügungspark': 'Themen- oder Vergnügungspark', - 'Theater': 'Theater', - 'Jeugdhuis of jeugdcentrum': 'Jugendzentrum', - 'Cultuur- of ontmoetingscentrum': 'Kultur- oder Begegnungszentrum', - 'Discotheek': 'Diskothek', - 'Bibliotheek of documentatiecentrum': - 'Bibliothek oder Dokumentationszentrum', - 'Bioscoop': 'Kino', - 'Horeca': 'Gastgewerbe', - 'Openbare ruimte': 'Öffentliche Einrichtungen', - 'Tentoonstelling': 'Ausstellung', - 'Markt, braderie of kermis': 'Markt, Straßenfest oder Jahrmarkt', - 'Natuur, park of tuin': 'Natur, Park oder Garten', - 'Beurs': 'Messe', - 'Monument': 'Monument', - 'Opendeurdag': 'Tag der offenen Tür', - 'Recreatiedomein of centrum': 'Freizeitbereich oder -zentrum', - 'Park of tuin': 'Park oder Garten', - 'Archeologische Site': 'Archäologische Stätte', - 'School of onderwijscentrum': 'Schule oder Bildungszentrum', - 'Sportcentrum': 'Sportzentrum', - 'Winkel': 'Laden', - 'Speeltuin': 'Spielplats', - 'Museum of galerij': 'Museum oder Galerie', - 'Zaal of expohal': 'Saal oder Expo-Halle', - }, - 'offerThemes': { - 'Antiek en brocante': 'Antik und Trödel', - 'Architectuur': 'Architektur', - 'Audiovisuele kunst': 'Audiovisuelle Kunst', - 'Beeldhouwkunst': 'Bildhauerei', - 'Fotografie': 'Fotografie', - 'Grafiek': 'Grafik', - 'Installatiekunst': 'Installationskunst', - 'Schilderkunst': 'Malerei', - 'Decoratieve kunst': 'Dekorative Kunst', - 'Design': 'Design', - 'Mode': 'Mode', - 'Meerdere kunstvormen': 'Mehrere Kunstformen', - 'Ballet en klassieke dans': 'Ballett und klassische Tänze', - 'Volksdans en werelddans': 'Volkstanz und Welttänze', - 'Stijl en salondansen': 'Stil- und Salontanz', - 'Moderne dans': 'Moderner Tanz', - 'Erfgoed': 'Kulturerbe', - 'Actie- en avonturenfilm': 'Action- und Abenteuerfilm', - 'Animatie en kinderfilms': 'Animations- und Kinderfilme', - 'Documentaires en reportages': 'Dokumentationen und Reportagen', - 'Griezelfilm of horror': 'Gruselfilm oder Horror', - 'Historische film': 'Historischer Film', - 'Komedie': 'Komödie', - 'Kortfilm': 'Kurzfilm', - 'Filmmusical': 'Filmmusical', - 'Drama': 'Drama', - 'Science fiction': 'Science-Fiction', - 'Cinefiel': 'Filmliebhaber', - 'Thriller': 'Thriller', - 'Meerdere filmgenres': 'Mehrere Filmgenres', - 'Geschiedenis': 'Geschichte', - 'Gezondheid en wellness': 'Gesundheit und Wellness', - 'Landbouw en platteland': 'Landbau und Landleben', - 'Milieu en natuur': 'Umwelt und Natur', - 'Literatuur': 'Literatur', - 'Poëzie': 'Poesie', - 'Fictie': 'Fiction', - 'Non fictie': 'Sachbücher', - 'Strips': 'Comics', - 'Klassieke muziek': 'Klassische Musik', - 'Jazz en blues': 'Jazz und Blues', - 'Pop en rock': 'Pop und Rock', - 'Hiphop, r&b en rap': 'Hip-Hop, R&B und Rap', - 'Dance muziek': 'Dance-Music', - 'Folk en wereldmuziek': 'Volks- und Weltmusik', - 'Amusementsmuziek': 'Pomusik', - 'Politiek en maatschappij': 'Politik und Gesellschaft', - 'Creativiteit': 'Kreativität', - 'Computer en techniek': 'Computer und Technik', - 'Opvoeding': 'Erziehung', - 'Persoon en relaties': 'Persönliche Entwicklung und Beziehungen', - 'Interculturele vorming': 'Interkulturelle Entwicklung', - 'Kunst en kunsteducatie': 'Kunst und Kunsterziehung', - 'Gezondheid en zorg': 'Gesundheit und Pflege', - 'Samenleving': 'Gesellschaft', - 'Bal en racketsport': 'Ballsport und Rückschlagspiele', - 'Atletiek, wandelen en fietsen': 'Athletik, wandern und Radfahren', - 'Zwemmen en watersport': 'Schwimmen und Wassersport', - 'Fitness, gymnastiek, dans en vechtsport': - 'Fitness, Gymnastik, Tanz und Kampfsport', - 'Outdoor en Adventure sport': 'Outdoor- und Abenteuersport', - 'Lucht en motorsport': 'Flug- und Motorsport', - 'Volkssporten': 'Volkssportarten', - 'Omnisport en andere': 'Omnisport und andere', - 'Tekst- en muziektheater': 'Text- und Musiktheater', - 'Humor en comedy': 'Humor und Comedy', - 'Musical': 'Musical', - 'Figuren en poppentheater': 'Figur- und Puppentheater', - 'Opera en operette': 'Opera und Operette', - 'Mime en bewegingstheater': 'Pantomimen- und Bewegungstheater', - 'Wetenschap': 'Wissenschaft', - 'Zingeving, filosofie en religie': 'Sinngebung, Philosophie und Religion', - 'Thema onbepaald': 'Thema unbestimmt', - 'Circus': 'Zirkus', - 'Voeding': 'Ernährung', - 'Economie': 'Wirtschaft', - 'Avontuur': 'Abenteuer', - 'Natuur': 'Natur', - 'Sport': 'Sport', - 'Technologie': 'Technologie', - 'Koken': 'Kochen', - 'Themakamp': 'Themencamp', - 'Taal en communicatie': 'Sprache', - }, - 'offerThemesGroups': { - 'Dans': 'Tanz', - 'Kunst en erfgoed': 'Kunst und Kulturerbe', - 'Muziek': 'Musik', - 'Sport': 'Sport', - 'Varia': 'Diverses', - }, - 'weekdays': { - 'monday': { - 'label': 'Mo', - 'name': 'Montag', - }, - 'tuesday': { - 'label': 'Di', - 'name': 'Dienstag', - }, - 'wednesday': { - 'label': 'Mi', - 'name': 'Mittwoch', - }, - 'thursday': { - 'label': 'Do', - 'name': 'Donnerstag', - }, - 'friday': { - 'label': 'Fr', - 'name': 'Freitag', - }, - 'saturday': { - 'label': 'Sa', - 'name': 'Samstag', - }, - 'sunday': { - 'label': 'So', - 'name': 'Sonntag', - }, - }, - 'search': { - 'search': 'Suchen', - 'advanced': 'Erweitert', - 'label': 'Labeln', - 'deselect': 'Auswahl aufheben', - 'savedSearches': { - 'savedSearches': 'Gespeicherte Suchanfragen', - 'items': { - 'Von mir eingegeben': 'Von mir eingegeben', - }, - 'mySearches': 'Meine Suchanfragen', - 'title': 'Titel', - 'viewResults': 'Ergebnisse ansehen', - 'yourSearch': 'Ihre Suchanfrage', - 'save': 'Speichern', - }, - 'manage': 'Verwalten', - 'oneResult': '1 Ergebnis', - 'multipleResults': '{{count}} Ergebnisse', - 'description': 'Beschreibung', - 'labels': 'Labels', - 'picture': 'Abbildung', - 'what': 'Was', - 'where': 'Wo', - 'when': 'Wann', - 'inputInformation': 'Eingabeinformation', - 'noEventsFound': - 'Keine Veranstaltungen gefunden, probieren Sie eine andere Suchanfrage.', - 'exportButton': 'Aktivitäten exportieren', - 'modal': - 'Ihre Auswahl enthält keine Aktivitäten, probieren Sie, eine andere Suchanfrage zu exportieren.', - 'advancedQueryBuilder': { - 'title': 'Ersteller erweiterte Suchanfragen', - 'header': { - 'info': 'Hier können Sie komplexe Suchanfragen erstellen. Benötigen Sie Hilfe? Lesen Sie', - 'link': 'unsere Anleitung', - }, - 'group': 'Gruppe ', - 'include': 'Einschließen', - 'exclude': 'Ausschließen', - 'addGroup': 'Gruppe hinzufügen', - 'cancel': 'Abbrechen', - 'search': 'Suchen', - syntaxError: 'Ihre Abfrage enthält einen Fehler. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage', - invalidField: '{{field}} ist kein gültiges Suchfeld. Auf dieser Seite finden Sie weitere Informationen über das Verfassen einer Abfrage', - }, - }, -}); -})(); - -// Source: src/core/udb-api.service.js -(function () { -'use strict'; - -/** - * @typedef {Object} UiTIDUser - * @property {string} id The UiTID of the user. - * @property {string} nick A user nickname. - */ - -/** - * @typedef {Object} PagedCollection - * @property {string} @context - * @property {string} @type - * @property {int} itemsPerPage - * @property {int} totalItems - * @property {Object[]} member - */ - -/** - * @typedef {Object} OfferIdentifier - * @property {string} @id - * @property {string} @type - * @property {string} @context - */ - -/** - * @typedef {Object} Permission - * @property {string} @key - * @property {string} @name - */ - -/** - * @typedef {Object} ApiProblem - * @property {URL} type - * @property {string} title - * @property {string} detail - * @property {URL} instance - * @property {Number} status - */ - -/** - * @typedef {Object} CommandInfo - * @property {string} commandId - */ - -/** - * @readonly - * @enum {string} - */ -var OfferTypes = { - EVENT: 'event', - PLACE: 'place' -}; - -/** - * @ngdoc service - * @name udb.core.udbApi - * @description - * # udbApi - * udb api service - */ -angular - .module('udb.core') - .service('udbApi', UdbApi); - -/* @ngInject */ -function UdbApi( - $q, - $http, - appConfig, - $cookies, - uitidAuth, - $cacheFactory, - UdbEvent, - UdbPlace, - UdbOrganizer, - Upload, - $translate -) { - var apiUrl = appConfig.baseApiUrl; - var defaultApiConfig = { - headers: { - 'Content-Type': 'application/json', - 'Authorization': 'Bearer ' + uitidAuth.getToken(), - 'X-Api-Key': _.get(appConfig, 'apiKey') - }, - params: {} - }; - var offerCache = $cacheFactory('offerCache'); - - function withoutAuthorization(apiConfig) { - var config = _.cloneDeep(apiConfig); - config.withCredentials = false; - /** - * @todo: use _.unset when lodash is updated to v4: https://lodash.com/docs/4.17.4#unset - */ - delete config.headers.Authorization; - - return config; - } - - this.mainLanguage = $translate.use() || 'nl'; - - /** - * Removes an item from the offerCache. - * @param {string} id - The uuid of the offer. - */ - this.removeItemFromCache = function (id) { - var offer = offerCache.get(id); - - if (offer) { - offerCache.remove(id); - } - }; - - this.createSavedSearch = function (name, queryString) { - var post = { - name: name, - query: queryString - }; - return $http - .post(appConfig.baseUrl + 'saved-searches/v3', post, defaultApiConfig) - .then(returnUnwrappedData); - }; - - this.getSavedSearches = function () { - return $http - .get(appConfig.baseUrl + 'saved-searches/v3', defaultApiConfig) - .then(returnUnwrappedData); - }; - - this.deleteSavedSearch = function (searchId) { - return $http - .delete(appConfig.baseUrl + 'saved-searches/v3/' + searchId, defaultApiConfig) - .then(returnUnwrappedData); - }; - - this.editSavedSearch = function (searchId, name, query) { - return $http - .put(appConfig.baseUrl + 'saved-searches/v3/' + searchId, {name: name, query: query}, defaultApiConfig) - .then(returnUnwrappedData); - }; - - /** - * @param {string} queryString - The query used to find offers. - * @param {number} [start] - From which offset the result set should start. - * @param {boolean} showDrafts - Include offers which are drafts. - * @returns {Promise.} A promise that signals a successful retrieval of - * search results or a failure. - */ - this.findOffers = function (queryString, start, showDrafts) { - var offset = start || 0, - searchParams = { - start: offset, - disableDefaultFilters: true, - workflowStatus: 'READY_FOR_VALIDATION,APPROVED', - embed: true - }; - - var requestOptions = _.cloneDeep(defaultApiConfig); - requestOptions.params = searchParams; - - if (queryString.length) { - searchParams.q = queryString; - } - - if (showDrafts) { - searchParams.workflowStatus = 'DRAFT,' + searchParams.workflowStatus; - } - - return $http - .get(appConfig.baseUrl + 'offers/', withoutAuthorization(requestOptions)) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} queryString - The query used to find events. - * @param {number} [start] - From which event offset the result set should start. - * @returns {Promise.} A promise that signals a successful retrieval of - * search results or a failure. - */ - this.findEvents = function (queryString, start) { - var offset = start || 0, - searchParams = { - start: offset - }; - var requestOptions = _.cloneDeep(defaultApiConfig); - requestOptions.params = searchParams; - - if (queryString.length) { - searchParams.query = queryString; - } - - return $http - .get(apiUrl + 'search', requestOptions) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} queryString - The query used to find offer to moderate. - * @param {number} [start] - From which offset the result set should start. - * @param {number} [itemsPerPage] - How many items should be in the result set. - * @returns {Promise.} A promise that signals a successful retrieval of - * search results or a failure. - */ - this.findToModerate = function (queryString, start, itemsPerPage) { - var path = appConfig.baseUrl + 'events/' + '?q=' + queryString + ''; - var currentDate = moment.utc().format(); - - var searchParams = { - start: start, - limit: itemsPerPage, - workflowStatus: 'READY_FOR_VALIDATION', - audienceType: 'everyone', - availableFrom: currentDate, - availableTo: '*' - }; - - var requestOptions = _.cloneDeep(defaultApiConfig); - requestOptions.params = searchParams; - - return $http - .get(path, requestOptions) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {URL} offerLocation - * @return {UdbPlace|UdbEvent|UdbOrganizer} - */ - this.getOffer = function(offerLocation) { - var deferredOffer = $q.defer(); - var offer = offerCache.get(offerLocation); - function cacheAndResolveOffer(jsonOffer) { - var type = jsonOffer['@id'].split('/').reverse()[1]; - var offer = formatJsonLDEntity(type, jsonOffer); - offer.parseJson(jsonOffer); - offerCache.put(offerLocation, offer); - deferredOffer.resolve(offer); - } - - if (offer) { - deferredOffer.resolve(offer); - } else { - $http - .get(offerLocation.toString() + '?embedUitpasPrices=false', defaultApiConfig) - .success(cacheAndResolveOffer) - .error(deferredOffer.reject); - } - - return deferredOffer.promise; - }; - - /** - * @param {Array} events - * @return {Array} - */ - this.reformatJsonLDData = function(events) { - events.member = events.member.map(function(member) { - var memberContext = (member['@context']) ? member['@context'].split('/').pop() : ''; - memberContext = memberContext.charAt(0).toUpperCase() + memberContext.slice(1); - member['@type'] = (member['@type']) ? member['@type'] : memberContext; - return member; - }); - return events; - }; - - /** - * @param {object} jsonLD - * @return {object} - */ - this.formatJsonLDEntity = function(jsonLD) { - var type = jsonLD['@type'].toLowerCase(); - var offer = formatJsonLDEntity(type, jsonLD); - return offer; - }; - - /** - * @param {string} type - * @param {object} jsonLD - * @return {object} - */ - function formatJsonLDEntity(type, jsonLD) { - var offer = {}; - switch (type) { - case 'event': - offer = new UdbEvent(); - break; - case 'place': - offer = new UdbPlace(); - break; - case 'organizers': - offer = new UdbOrganizer(); - break; - default: - console.warn('Unsupported ' + type + ' in UdbApi.formateOfferClass'); - } - offer.parseJson(jsonLD); - return offer; - } - - this.getOrganizerByLDId = function(organizerLDId) { - var organizerId = organizerLDId.split('/').pop(); - return this.getOrganizerById(organizerId); - }; - - // TODO: Give organizers their own cache instead of using offer? - this.getOrganizerById = function(organizerId) { - var deferredOrganizer = $q.defer(); - - var organizer = offerCache.get(organizerId); - - if (organizer) { - deferredOrganizer.resolve(organizer); - } else { - var organizerRequest = $http.get( - appConfig.baseUrl + 'organizers/' + organizerId, defaultApiConfig - ); - - organizerRequest.success(function(jsonOrganizer) { - var organizer = new UdbOrganizer(); - organizer.parseJson(jsonOrganizer); - offerCache.put(organizerId, organizer); - deferredOrganizer.resolve(organizer); - }); - } - return deferredOrganizer.promise; - }; - - /** - * @param {number} start - * @param {number} limit - * @param {string|null} website - * @param {string|null} query - * - * @return {Promise.} - */ - this.findOrganisations = function(start, limit, website, query) { - var params = { - limit: limit ? limit : 10, - start: start ? start : 0, - embed: true - }; - if (website) { - params.website = website; - } - if (query) { - params.name = query; - } - - var configWithQueryParams = _.set(withoutAuthorization(defaultApiConfig), 'params', params); - return $http - .get(appConfig.baseUrl + 'organizers/', configWithQueryParams) - .then(returnUnwrappedData); - }; - - /** - * @param {string} organizerId - * @param {string} labelName - * @returns {Promise.} - */ - this.addLabelToOrganizer = function(organizerId, labelName) { - return $http - .put(appConfig.baseUrl + 'organizers/' + organizerId + '/labels/' + labelName, {}, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * @param {string} labelName - * @returns {Promise.} - */ - this.deleteLabelFromOrganizer = function(organizerId, labelName) { - return $http - .delete(appConfig.baseUrl + 'organizers/' + organizerId + '/labels/' + labelName, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - /** - * @param {string} organizerId - * @param {string} website - * @returns {Promise.} - */ - this.updateOrganizerWebsite = function(organizerId, website) { - var params = { - url: website - }; - - return $http - .put(appConfig.baseUrl + 'organizers/' + organizerId + '/url', params, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * @param {string} name - * @param {string} language - * @returns {Promise.} - */ - this.updateOrganizerName = function(organizerId, name, language) { - var params = { - name: name - }; - - return $http - .put(appConfig.baseUrl + 'organizers/' + organizerId + '/name/' + language, params, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * @param {Object} address - * @param {string} language - * @returns {Promise.} - */ - this.updateOrganizerAddress = function(organizerId, address, language) { - - return $http - .put(appConfig.baseUrl + 'organizers/' + organizerId + '/address/' + language, address, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * @returns {Promise.} - */ - this.removeOrganizerAddress = function(organizerId) { - - return $http - .delete(appConfig.baseUrl + 'organizers/' + organizerId + '/address', defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * @param {Array} contact - * @returns {Promise.} - */ - this.updateOrganizerContact = function(organizerId, contact) { - - return $http - .put(appConfig.baseUrl + 'organizers/' + organizerId + '/contactPoint', contact, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} organizerId - * roleId for the role to retrieve permissions for - * @return {Promise.Array} - */ - this.getOrganizerPermissions = function (organizerId) { - var requestConfig = defaultApiConfig; - return $http - .get(appConfig.baseUrl + 'organizers/' + organizerId + '/permissions', requestConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} id - * @param {string} type - * @return {*} - */ - this.getHistory = function (id, type) { - var endpoint = (type === 'place') ? 'places/' : 'event/'; - return $http - .get(appConfig.baseUrl + endpoint + id + '/history', defaultApiConfig) - .then(returnUnwrappedData); - }; - - /** - * @returns {Promise.} - * A promise with the credentials of the currently logged in user. - */ - this.getMe = function () { - var deferredUser = $q.defer(); - var activeUser = uitidAuth.getUser(); - - function storeAndResolveUser (userData) { - var user = { - id: userData.id, - nick: userData.nick, - uuid: userData.uuid, - username: userData.username, - email: userData.email - }; - - $cookies.putObject('user', user); - deferredUser.resolve(user); - } - - if (activeUser) { - deferredUser.resolve(activeUser); - } else if (uitidAuth.getToken()) { - // set the freshest, newest token - defaultApiConfig.headers.Authorization = 'Bearer ' + uitidAuth.getToken(); - - $http - .get(appConfig.baseUrl + 'user', defaultApiConfig) - .success(storeAndResolveUser) - .error(deferredUser.reject); - } else { - deferredUser.reject(); - } - - return deferredUser.promise; - }; - - /** - * Get my user permissions - */ - this.getMyPermissions = function () { - var deferredPermissions = $q.defer(); - var token = uitidAuth.getToken(); - - // cache the permissions with user token - // == will need to fetch permissions for each login - function storeAndResolvePermissions (permissionsList) { - offerCache.put(token, permissionsList); - deferredPermissions.resolve(permissionsList); - } - - if (token) { - var permissions = offerCache.get(token); - if (!permissions) { - $http - .get(appConfig.baseUrl + 'user/permissions/', defaultApiConfig) - .success(storeAndResolvePermissions) - .error(function (_, status) { - if (status === -1) { - return; - } - window.parent.postMessage({ - source: 'UDB', - type: 'HTTP_ERROR_CODE', - code: status || 403 - }, '*'); - deferredPermissions.reject(); - }); - } else { - deferredPermissions.resolve(permissions); - } - } else { - window.parent.postMessage({ - source: 'UDB', - type: 'HTTP_ERROR_CODE', - code: 401 - }, '*'); - deferredPermissions.reject(); - } - - return deferredPermissions.promise; - }; - - /** - * Get the editing permission for an offer. - - * @param {URL} offerLocation - */ - this.hasPermission = function(offerLocation) { - return $http.get( - offerLocation + '/permission', - defaultApiConfig - ).then(function (response) { - return !!response.data.hasPermission; - }); - }; - - /** - * @param {OfferIdentifier[]} offers - * @param {string} label - * @return {Promise} - */ - this.labelOffers = function (offers, label) { - return $http.post(appConfig.baseUrl + 'offers/labels', - { - 'label': label, - 'offers': offers - }, - defaultApiConfig - ); - }; - - /** - * @param {string} query - * @param {string} label - * @return {Promise} - */ - this.labelQuery = function (query, label) { - return $http.post(appConfig.baseUrl + 'query/labels', - { - 'label': label, - 'query': query - }, - defaultApiConfig - ); - }; - - /** - * @param {string} query - * @param {string} [email] - * @param {string} format - * @param {string[]} properties - * @param {boolean} perDay - * @param {URL[]} selection - * @param {Object} [customizations] - * @return {*} - */ - this.exportEvents = function (query, email, format, properties, perDay, selection, customizations) { - - var exportData = { - query: query, - selection: _.map(selection, function (url) { - return url.toString(); - }), - order: {}, - include: properties, - perDay: perDay, - customizations: customizations || {} - }; - - if (email) { - exportData.email = email; - } - - return $http.post(appConfig.baseUrl + 'events/export/' + format, exportData, defaultApiConfig); - }; - - /** - * @param {URL} offerLocation - * @param {string} propertyName - * 'title' or 'description' - * @param {string} language - * ISO 639-1 language code: https://en.wikipedia.org/wiki/ISO_639-1 - * Languages known to be supported: nl, en, fr, de. - * @param {string} translation - * - * @return {Promise} - */ - this.translateProperty = function (offerLocation, propertyName, language, translation) { - var translationData = {}; - translationData[propertyName] = translation; - - if (propertyName === 'name') { - propertyName = 'title'; - } - - return $http.post( - offerLocation + '/' + language + '/' + propertyName, - translationData, - defaultApiConfig - ); - }; - - this.translateAddress = function (offerId, language, translation) { - return $http.put( - appConfig.baseUrl + 'places/' + offerId + '/address/' + language, - { - addressCountry: translation.addressCountry, - addressLocality: translation.addressLocality, - postalCode: translation.postalCode, - streetAddress: translation.streetAddress - }, - defaultApiConfig - ); - }; - - var offerPropertyPaths = { - typicalAgeRange: 'typical-age-range' - }; - - /** - * Update the property for a given id. - * - * @param {URL} offerLocation - * The location of the offer to update - * @param {string} property - * Property to update - * @param {string} value - * Value to save - */ - this.updateProperty = function(offerLocation, property, value) { - // TODO: having both in path and updateData is duplicate - var updateData = {}; - updateData[property] = value; - var path = offerPropertyPaths[property] ? offerPropertyPaths[property] : property; - - return $http.post( - offerLocation + '/' + path, - updateData, - defaultApiConfig - ); - }; - - this.updateTypicalAgeRange = function(offerLocation, typicalAgeRange) { - var updateData = { - 'typicalAgeRange': typicalAgeRange - }; - return $http.put( - offerLocation + '/typicalAgeRange', - updateData, - defaultApiConfig - ); - }; - - this.updatePriceInfo = function(offerLocation, price) { - return $http.put( - offerLocation + '/priceInfo', - price, - defaultApiConfig - ); - }; - - /** - * @param {URL} offerLocation - * The location of the offer to update - * @param {string[]} facilities - * A list of facility ids - */ - this.updateOfferFacilities = function (offerLocation, facilities) { - return $http.put( - offerLocation + '/facilities/', - {facilities: facilities}, - defaultApiConfig - ); - }; - - /** - * @param {URL} offerLocation - * @param {string} label - * - * @return {Promise} - */ - this.labelOffer = function (offerLocation, label) { - return $http.post( - offerLocation + '/labels', - {'label': label}, - defaultApiConfig - ); - }; - - /** - * @param {URL} offerLocation - * @param {string} label - * - * @return {Promise} - */ - this.unlabelOffer = function (offerLocation, label) { - // @see https://stackoverflow.com/questions/332872/encode-url-in-javascript - return $http - .delete(offerLocation + '/labels/' + encodeURIComponent(label), defaultApiConfig) - .catch(returnApiProblem); - }; - - /** - * @param {EventFormData} offer - * - * @return {Promise.} - */ - this.deleteOffer = function (offer) { - return $http['delete']( - offer['@id'], - defaultApiConfig - ); - }; - - /** - * @param {udbOrganizer} organization - * - * @return {Promise.} - */ - this.deleteOrganization = function (organization) { - return $http - .delete(organization['@id'], defaultApiConfig) - .catch(returnApiProblem); - }; - - /** - * @param {string} type either 'place' or 'event' - * @param {EventFormData} offer - * - * @return {Promise.} - */ - this.createOffer = function (type, offer) { - return $http.post( - appConfig.baseUrl + type, - offer, - defaultApiConfig - ).then(function(response) { - return new URL(response.data.url); - }); - }; - - /** - * @param {URL} placeLocation - * @returns {OfferIdentifier[]} - */ - this.findEventsAtPlace = function(placeLocation) { - function unwrapEvents(wrappedEvents) { - var eventIdentifiers = _.map(wrappedEvents.events, function(event) { - return {'@id': appConfig.baseUrl + 'event/' + event['@id']}; - }); - return $q.resolve(eventIdentifiers); - } - - return $http - .get(placeLocation + '/events', defaultApiConfig) - .then(function (response) { - return returnUnwrappedData(response) - .then(unwrapEvents); - }); - }; - - /** - * Create a new organizer. - */ - this.createOrganizer = function(organizer) { - return $http.post( - appConfig.baseUrl + 'organizers/', - organizer, - defaultApiConfig - ); - }; - - /** - * Update the major info of an offer. - * @param {URL} offerLocation - * @param {EventFormData} info - */ - this.updateMajorInfo = function(offerLocation, info) { - return $http.post( - offerLocation + '/major-info', - info, - defaultApiConfig - ); - }; - - /** - * Delete the typical age range for an offer. - * @param {URL} offerLocation - */ - this.deleteTypicalAgeRange = function(offerLocation) { - - return $http.delete( - offerLocation + '/typical-age-range', - defaultApiConfig - ); - }; - - /** - * Delete the organizer for an offer. - * @param {URL} offerLocation - * @param {string} organizerId - */ - this.deleteOfferOrganizer = function(offerLocation, organizerId) { - - return $http.delete( - offerLocation + '/organizer/' + organizerId, - defaultApiConfig - ); - }; - - /** - * Add a new image. - * @param {URL} itemLocation - * @param {string} imageId - * @return {Promise} - */ - this.addImage = function(itemLocation, imageId) { - - var postData = { - mediaObjectId: imageId - }; - - return $http - .post( - itemLocation + '/images', - postData, - defaultApiConfig - ); - }; - - /** - * Update the image info of an item. - * @param {URL} itemLocation - * @param {string} imageId - * @param {string} description - * @param {string} copyrightHolder - * @return {Promise} - * - */ - this.updateImage = function(itemLocation, imageId, description, copyrightHolder) { - var postData = { - description: description, - copyrightHolder: copyrightHolder - }; - - return $http - .post( - itemLocation + '/images/' + imageId, - postData, - defaultApiConfig - ); - }; - - /** - * Remove an image from an item. - * - * @param {URL} itemLocation - * @param {string} imageId - * - * @return {Promise} - */ - this.removeImage = function(itemLocation, imageId) { - return $http.delete( - itemLocation + '/images/' + imageId, - defaultApiConfig - ); - }; - - /** - * Select the main image for an item. - * - * @param {URL} itemLocation - * @param {string} imageId - * - * @return {Promise.} - */ - this.selectMainImage = function(itemLocation, imageId) { - var postData = { - mediaObjectId: imageId - }; - - return $http - .post( - itemLocation + '/images/main', - postData, - defaultApiConfig - ); - }; - - /** - * @param {URL} itemLocation - * @param {('everyone'|'members'|'education')} audienceType - * - * @returns {Promise.} - */ - this.setAudienceType = function (itemLocation, audienceType) { - return $http - .put(itemLocation.toString() + '/audience', {'audienceType': audienceType}, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - function returnUnwrappedData(response) { - return $q.resolve(response.data); - } - - /** - * @param {int} page - * @return {Promise.} - */ - this.getDashboardItems = function(page) { - var params = { - 'disableDefaultFilters': true, - 'workflowStatus': 'DRAFT,READY_FOR_VALIDATION,APPROVED,REJECTED', - 'sort[modified]': 'desc', - 'limit': 50, - 'start': (page - 1) * 50, - 'embed': true - }; - - var createdByQueryMode = _.get(appConfig, 'created_by_query_mode', 'uuid'); - - return this.getMe() - .then(function(userData) { - var userId = userData.uuid; - var userEmail = userData.email; - - if (createdByQueryMode === 'uuid') { - params.creator = userId; - } else if (createdByQueryMode === 'email') { - params.creator = userEmail; - } else if (createdByQueryMode === 'mixed') { - params.q = 'creator:(' + userId + ' OR ' + userEmail + ')'; - } - - var requestConfig = _.cloneDeep(defaultApiConfig); - requestConfig.params = params; - - return $http - .get(appConfig.baseUrl + 'offers/', requestConfig) - .then(returnUnwrappedData); - }); - }; - - /** - * @param {int} page - * @return {Promise.} - */ - this.getDashboardOrganizers = function(page) { - var requestConfig = _.cloneDeep(defaultApiConfig); - - return this.getMe() - .then(function(userData) { - var userId = userData.uuid; - - requestConfig.params = { - 'creator': userId, - 'sort[modified]': 'desc', - 'limit': 50, - 'start': (page - 1) * 50, - 'embed': true - }; - - return $http - .get(appConfig.baseUrl + 'organizers/', requestConfig) - .then(returnUnwrappedData); - }); - }; - - this.uploadMedia = function (imageFile, description, copyrightHolder, language) { - var uploadOptions = { - url: appConfig.baseUrl + 'images/', - fields: { - description: description, - copyrightHolder: copyrightHolder, - language: language - }, - file: imageFile - }; - var config = _.assign(defaultApiConfig, uploadOptions); - - return Upload.upload(config); - }; - - this.getMedia = function (imageId) { - return $http - .get( - appConfig.baseUrl + 'media/' + imageId, - defaultApiConfig - ) - .then(returnUnwrappedData); - }; - - /** - * @param {string} name - * @param {boolean} isVisible - * @param {boolean} isPrivate - * @param {string} [parentId] - * @return {Promise.} - */ - this.createLabel = function (name, isVisible, isPrivate, parentId) { - var labelData = { - name: name, - visibility: isVisible ? 'visible' : 'invisible', - privacy: isPrivate ? 'private' : 'public' - }; - - if (parentId) { - labelData.parentId = parentId; - } - - return $http - .post(appConfig.baseUrl + 'labels/', labelData, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {string} labelId - * @param {string} command - * @return {Promise.} - */ - this.updateLabel = function (labelId, command) { - return $http.patch( - appConfig.baseUrl + 'labels/' + labelId, - {'command': command}, - defaultApiConfig - ).then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {uuid} labelId - * @return {Promise.} - */ - this.deleteLabel = function (labelId) { - return $http - .delete(appConfig.baseUrl + 'labels/' + labelId, defaultApiConfig) - .then(returnUnwrappedData, returnApiProblem); - }; - - /** - * @param {uuid} labelId - * @return {Promise.