@bmlt-enabled/croutonjs 3.19.5 → 3.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13252,7 +13252,7 @@ function CroutonLocalization(language) {
13252
13252
  RS: "لجنة خدمات الإقلي.م",
13253
13253
  ZF: "منتدى المنطقة" ,
13254
13254
  MA: "لجنة خدمات العاصمة",
13255
- LS: "خدمة المنتديات المحلية",
13255
+ LS: "خدمة المنتديات المحلية",
13256
13256
  GS: "Group Support Forum",
13257
13257
  },
13258
13258
  "css-direction": 'bmlt-rtl',
@@ -13271,7 +13271,10 @@ function CroutonLocalization(language) {
13271
13271
  'close': "قريب",
13272
13272
  "bmlt2ics": "Add to your calendar",
13273
13273
  'meeting page': "صفحة الاجتماع",
13274
- 'meeting details': "تفاصيل الاجتماع"
13274
+ 'meeting details': "تفاصيل الاجتماع",
13275
+ 'report update': "Report an Update",
13276
+ 'filter by visibility': "List only these meetings",
13277
+ 'go': "Go!"
13275
13278
  },
13276
13279
  "da-DK": {
13277
13280
  "days_of_the_week": ["", "Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"],
@@ -13323,6 +13326,9 @@ function CroutonLocalization(language) {
13323
13326
  'visible meeting list': 'Visible meetings as list',
13324
13327
  'enter a city or zip code': 'Enter a city or zip code',
13325
13328
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13329
+ 'report update': "Report an Update",
13330
+ 'filter by visibility': "List only these meetings",
13331
+ 'go': "Go!"
13326
13332
  },
13327
13333
  "de-DE":{
13328
13334
  "days_of_the_week": ["", "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"],
@@ -13376,7 +13382,10 @@ function CroutonLocalization(language) {
13376
13382
  'close': "Schliessen",
13377
13383
  "bmlt2ics": "Zu Kalender hinzufügen",
13378
13384
  'meeting page': "Meeting Seite",
13379
- 'meeting details': "Genaueres zum Meeting"
13385
+ 'meeting details': "Genaueres zum Meeting",
13386
+ 'report update': "Report an Update",
13387
+ 'filter by visibility': "Zeige nur Meetings, die gerade auf dem Karte stehen",
13388
+ 'go': "Los!"
13380
13389
  },
13381
13390
  "en-AU": {
13382
13391
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13429,7 +13438,10 @@ function CroutonLocalization(language) {
13429
13438
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13430
13439
  'close': "Close",
13431
13440
  'meeting page': "Meeting Page",
13432
- 'meeting details': "Meeting Details"
13441
+ 'meeting details': "Meeting Details",
13442
+ 'report update': "Report an Update",
13443
+ 'filter by visibility': "List only these meetings",
13444
+ 'go': "Go!"
13433
13445
  },
13434
13446
  "en-CA": {
13435
13447
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13483,7 +13495,10 @@ function CroutonLocalization(language) {
13483
13495
  'close': "Close",
13484
13496
  "bmlt2ics": "Add to your calendar",
13485
13497
  'meeting page': "Meeting Page",
13486
- 'meeting details': "Meeting Details"
13498
+ 'meeting details': "Meeting Details",
13499
+ 'report update': "Report an Update",
13500
+ 'filter by visibility': "List only these meetings",
13501
+ 'go': "Go!"
13487
13502
  },
13488
13503
  "en-NZ": {
13489
13504
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13537,7 +13552,10 @@ function CroutonLocalization(language) {
13537
13552
  'close': "Close",
13538
13553
  "bmlt2ics": "Add to your calendar",
13539
13554
  'meeting page': "Meeting Page",
13540
- 'meeting details': "Meeting Details"
13555
+ 'meeting details': "Meeting Details",
13556
+ 'report update': "Report an Update",
13557
+ 'filter by visibility': "List only these meetings",
13558
+ 'go': "Go!"
13541
13559
  },
13542
13560
  "en-UK": {
13543
13561
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13591,7 +13609,10 @@ function CroutonLocalization(language) {
13591
13609
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13592
13610
  'close': "Close",
13593
13611
  'meeting page': "Meeting Page",
13594
- 'meeting details': "Meeting Details"
13612
+ 'meeting details': "Meeting Details",
13613
+ 'report update': "Report an Update",
13614
+ 'filter by visibility': "List only these meetings",
13615
+ 'go': "Go!"
13595
13616
  },
13596
13617
  "en-US": {
13597
13618
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13645,7 +13666,10 @@ function CroutonLocalization(language) {
13645
13666
  'close': "Close",
13646
13667
  "bmlt2ics": "Add to your calendar",
13647
13668
  'meeting page': "Meeting Page",
13648
- 'meeting details': "Meeting Details"
13669
+ 'meeting details': "Meeting Details",
13670
+ 'report update': "Report an Update",
13671
+ 'filter by visibility': "List only these meetings",
13672
+ 'go': "Go!"
13649
13673
  },
13650
13674
  "es-US": {
13651
13675
  "days_of_the_week" : ["", "Domingo", " Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"],
@@ -13699,7 +13723,10 @@ function CroutonLocalization(language) {
13699
13723
  'close': "Close",
13700
13724
  "bmlt2ics": "Add to your calendar",
13701
13725
  'meeting page': "Meeting Page",
13702
- 'meeting details': "Meeting Details"
13726
+ 'meeting details': "Meeting Details",
13727
+ 'report update': "Report an Update",
13728
+ 'filter by visibility': "List only these meetings",
13729
+ 'go': "Go!"
13703
13730
  },
13704
13731
  "fa-IR": {
13705
13732
  "days_of_the_week" : ["", 'یَکشَنب', 'دوشَنبه', 'سه‌شنبه', 'چهار شنبه', 'پَنج شَنبه', 'جُمعه', 'شَنبه'],
@@ -13752,7 +13779,10 @@ function CroutonLocalization(language) {
13752
13779
  'close': "Close",
13753
13780
  "bmlt2ics": "Add to your calendar",
13754
13781
  'meeting page': "Meeting Page",
13755
- 'meeting details': "Meeting Details"
13782
+ 'meeting details': "Meeting Details",
13783
+ 'report update': "Report an Update",
13784
+ 'filter by visibility': "List only these meetings",
13785
+ 'go': "Go!"
13756
13786
  },
13757
13787
  "fr-CA": {
13758
13788
  "days_of_the_week" : ["", "Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"],
@@ -13806,7 +13836,10 @@ function CroutonLocalization(language) {
13806
13836
  "close": "Fermer",
13807
13837
  "bmlt2ics": "Ajouter au calendrier",
13808
13838
  "meeting page": "Page de la réunion",
13809
- "meeting details": "Détails de la réunion"
13839
+ "meeting details": "Détails de la réunion",
13840
+ 'report update': "Report an Update",
13841
+ 'filter by visibility': "List only these meetings",
13842
+ 'go': "Go!"
13810
13843
  },
13811
13844
  "it-IT": {
13812
13845
  "days_of_the_week" : ["", "Domenica", " Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"],
@@ -13860,7 +13893,10 @@ function CroutonLocalization(language) {
13860
13893
  'close': "Close",
13861
13894
  "bmlt2ics": "Aggiungi al tuo calendario",
13862
13895
  'meeting page': "Meeting Page",
13863
- 'meeting details': "Meeting Details"
13896
+ 'meeting details': "Meeting Details",
13897
+ 'report update': "Report an Update",
13898
+ 'filter by visibility': "List only these meetings",
13899
+ 'go': "Go!"
13864
13900
  },
13865
13901
  "nl-NL": {
13866
13902
  "days_of_the_week" : ["", "Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag"],
@@ -13914,7 +13950,10 @@ function CroutonLocalization(language) {
13914
13950
  'close': "Close",
13915
13951
  "bmlt2ics": "Add to your calendar",
13916
13952
  'meeting page': "Meeting Page",
13917
- 'meeting details': "Meeting Details"
13953
+ 'meeting details': "Meeting Details",
13954
+ 'report update': "Report an Update",
13955
+ 'filter by visibility': "List only these meetings",
13956
+ 'go': "Go!"
13918
13957
  },
13919
13958
  "pl-PL": {
13920
13959
  "days_of_the_week" : ["", "Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota"],
@@ -13968,7 +14007,10 @@ function CroutonLocalization(language) {
13968
14007
  'close': "Close",
13969
14008
  "bmlt2ics": "Add to your calendar",
13970
14009
  'meeting page': "Meeting Page",
13971
- 'meeting details': "Meeting Details"
14010
+ 'meeting details': "Meeting Details",
14011
+ 'report update': "Report an Update",
14012
+ 'filter by visibility': "List only these meetings",
14013
+ 'go': "Go!"
13972
14014
  },
13973
14015
  "pt-BR": {
13974
14016
  "days_of_the_week" : ["", "Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"],
@@ -14022,7 +14064,10 @@ function CroutonLocalization(language) {
14022
14064
  'toggle fullscreen mode': 'Toggle fullscreen mode',
14023
14065
  'close': "Close",
14024
14066
  'meeting page': "Meeting Page",
14025
- 'meeting details': "Meeting Details"
14067
+ 'meeting details': "Meeting Details",
14068
+ 'report update': "Report an Update",
14069
+ 'filter by visibility': "List only these meetings",
14070
+ 'go': "Go!"
14026
14071
  },
14027
14072
  "ru-RU": {
14028
14073
  "days_of_the_week" : ["", "Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"],
@@ -14076,7 +14121,10 @@ function CroutonLocalization(language) {
14076
14121
  'toggle fullscreen mode': 'Включить полноэкранный режим',
14077
14122
  'close': "Закрыть",
14078
14123
  'meeting page': "Страница собрания",
14079
- 'meeting details': "Подробности собрания"
14124
+ 'meeting details': "Подробности собрания",
14125
+ 'report update': "Report an Update",
14126
+ 'filter by visibility': "List only these meetings",
14127
+ 'go': "Go!"
14080
14128
  },
14081
14129
  "sv-SE": {
14082
14130
  "days_of_the_week" : ["", "Söndag", "Måndag", "Tisdag", "Onsdag", "Torsdag", "Fredag", "Lördag"],
@@ -14130,7 +14178,10 @@ function CroutonLocalization(language) {
14130
14178
  'close': "Close",
14131
14179
  "bmlt2ics": "Add to your calendar",
14132
14180
  'meeting page': "Meeting Page",
14133
- 'meeting details': "Meeting Details"
14181
+ 'meeting details': "Meeting Details",
14182
+ 'report update': "Report an Update",
14183
+ 'filter by visibility': "List only these meetings",
14184
+ 'go': "Go!"
14134
14185
  }
14135
14186
  };
14136
14187
  }
@@ -14501,7 +14552,31 @@ this["hbs_Crouton"]["templates"]["main"] = Handlebars.template({"1":function(con
14501
14552
  + ((stack1 = container.invokePartial(lookupProperty(partials,"meetingCountTemplate"),depth0,{"name":"meetingCountTemplate","data":data,"indent":" ","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14502
14553
  + "</div>\n";
14503
14554
  },"usePartial":true,"useData":true});
14504
- this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data,blockParams,depths) {
14555
+ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data) {
14556
+ var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14557
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14558
+ return parent[propertyName];
14559
+ }
14560
+ return undefined
14561
+ };
14562
+
14563
+ return " <button id=\"filterMeetings\" style=\"display: block;\">"
14564
+ + alias3((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias2).call(alias1,"Filter meetings",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":9,"column":60},"end":{"line":9,"column":89}}}))
14565
+ + "</button>\n <button id=\"showAsTable\" style=\"display: block;\">"
14566
+ + alias3((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias2).call(alias1,"visible meeting list",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":10,"column":57},"end":{"line":10,"column":91}}}))
14567
+ + "</button>\n";
14568
+ },"3":function(container,depth0,helpers,partials,data) {
14569
+ var lookupProperty = container.lookupProperty || function(parent, propertyName) {
14570
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14571
+ return parent[propertyName];
14572
+ }
14573
+ return undefined
14574
+ };
14575
+
14576
+ return " <button id=\"filterTable\" style=\"display: block;\"><span id=\"filteringByVisibility\"></span>"
14577
+ + container.escapeExpression((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||container.hooks.helperMissing).call(depth0 != null ? depth0 : (container.nullContext || {}),"filter by visibility",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":12,"column":97},"end":{"line":12,"column":131}}}))
14578
+ + "</button>\n";
14579
+ },"5":function(container,depth0,helpers,partials,data,blockParams,depths) {
14505
14580
  var stack1, helper, alias1=container.escapeExpression, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4="function", lookupProperty = container.lookupProperty || function(parent, propertyName) {
14506
14581
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14507
14582
  return parent[propertyName];
@@ -14512,19 +14587,19 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14512
14587
  return " <div class=\"bmlt-dropdown-container\">\n <select class=\"crouton-select filter-dropdown\" style=\"width:"
14513
14588
  + alias1(container.lambda(((stack1 = (depths[1] != null ? lookupProperty(depths[1],"config") : depths[1])) != null ? lookupProperty(stack1,"dropdown_width") : stack1), depth0))
14514
14589
  + ";\" data-placeholder=\""
14515
- + alias1(((helper = (helper = lookupProperty(helpers,"placeholder") || (depth0 != null ? lookupProperty(depth0,"placeholder") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"placeholder","hash":{},"data":data,"loc":{"start":{"line":17,"column":124},"end":{"line":17,"column":139}}}) : helper)))
14590
+ + alias1(((helper = (helper = lookupProperty(helpers,"placeholder") || (depth0 != null ? lookupProperty(depth0,"placeholder") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"placeholder","hash":{},"data":data,"loc":{"start":{"line":21,"column":124},"end":{"line":21,"column":139}}}) : helper)))
14516
14591
  + "\" data-pointer=\""
14517
- + alias1(((helper = (helper = lookupProperty(helpers,"pointer") || (depth0 != null ? lookupProperty(depth0,"pointer") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"pointer","hash":{},"data":data,"loc":{"start":{"line":17,"column":155},"end":{"line":17,"column":166}}}) : helper)))
14592
+ + alias1(((helper = (helper = lookupProperty(helpers,"pointer") || (depth0 != null ? lookupProperty(depth0,"pointer") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"pointer","hash":{},"data":data,"loc":{"start":{"line":21,"column":155},"end":{"line":21,"column":166}}}) : helper)))
14518
14593
  + "\" id="
14519
- + alias1(((helper = (helper = lookupProperty(helpers,"elementId") || (depth0 != null ? lookupProperty(depth0,"elementId") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"elementId","hash":{},"data":data,"loc":{"start":{"line":17,"column":171},"end":{"line":17,"column":184}}}) : helper)))
14594
+ + alias1(((helper = (helper = lookupProperty(helpers,"elementId") || (depth0 != null ? lookupProperty(depth0,"elementId") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"elementId","hash":{},"data":data,"loc":{"start":{"line":21,"column":171},"end":{"line":21,"column":184}}}) : helper)))
14520
14595
  + ">\n <option value=\"a-\">"
14521
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"all",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":18,"column":33},"end":{"line":18,"column":50}}}))
14596
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"all",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":22,"column":33},"end":{"line":22,"column":50}}}))
14522
14597
  + " "
14523
- + alias1(((helper = (helper = lookupProperty(helpers,"placeholder") || (depth0 != null ? lookupProperty(depth0,"placeholder") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"placeholder","hash":{},"data":data,"loc":{"start":{"line":18,"column":51},"end":{"line":18,"column":66}}}) : helper)))
14598
+ + alias1(((helper = (helper = lookupProperty(helpers,"placeholder") || (depth0 != null ? lookupProperty(depth0,"placeholder") : depth0)) != null ? helper : alias3),(typeof helper === alias4 ? helper.call(alias2,{"name":"placeholder","hash":{},"data":data,"loc":{"start":{"line":22,"column":51},"end":{"line":22,"column":66}}}) : helper)))
14524
14599
  + "</option>\n"
14525
- + ((stack1 = lookupProperty(helpers,"each").call(alias2,(lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias3).call(alias2,(depth0 != null ? lookupProperty(depth0,"uniqueData") : depth0),((stack1 = (depths[1] != null ? lookupProperty(depths[1],"meetings") : depths[1])) != null ? lookupProperty(stack1,"meetingData") : stack1),{"name":"call","hash":{},"data":data,"loc":{"start":{"line":19,"column":22},"end":{"line":19,"column":63}}}),{"name":"each","hash":{},"fn":container.program(2, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":19,"column":14},"end":{"line":21,"column":23}}})) != null ? stack1 : "")
14600
+ + ((stack1 = lookupProperty(helpers,"each").call(alias2,(lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias3).call(alias2,(depth0 != null ? lookupProperty(depth0,"uniqueData") : depth0),((stack1 = (depths[1] != null ? lookupProperty(depths[1],"meetings") : depths[1])) != null ? lookupProperty(stack1,"meetingData") : stack1),{"name":"call","hash":{},"data":data,"loc":{"start":{"line":23,"column":22},"end":{"line":23,"column":63}}}),{"name":"each","hash":{},"fn":container.program(6, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":23,"column":14},"end":{"line":25,"column":23}}})) != null ? stack1 : "")
14526
14601
  + " </select>\n </div>\n";
14527
- },"2":function(container,depth0,helpers,partials,data,blockParams,depths) {
14602
+ },"6":function(container,depth0,helpers,partials,data,blockParams,depths) {
14528
14603
  var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14529
14604
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14530
14605
  return parent[propertyName];
@@ -14533,11 +14608,11 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14533
14608
  };
14534
14609
 
14535
14610
  return " <option value=\"a-"
14536
- + alias3((lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias2).call(alias1,(depths[1] != null ? lookupProperty(depths[1],"objectPointer") : depths[1]),depth0,{"name":"call","hash":{},"data":data,"loc":{"start":{"line":20,"column":32},"end":{"line":20,"column":62}}}))
14611
+ + alias3((lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias2).call(alias1,(depths[1] != null ? lookupProperty(depths[1],"objectPointer") : depths[1]),depth0,{"name":"call","hash":{},"data":data,"loc":{"start":{"line":24,"column":32},"end":{"line":24,"column":62}}}))
14537
14612
  + "\">"
14538
- + alias3((lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias2).call(alias1,(depths[1] != null ? lookupProperty(depths[1],"optionName") : depths[1]),depth0,{"name":"call","hash":{},"data":data,"loc":{"start":{"line":20,"column":64},"end":{"line":20,"column":91}}}))
14613
+ + alias3((lookupProperty(helpers,"call")||(depth0 && lookupProperty(depth0,"call"))||alias2).call(alias1,(depths[1] != null ? lookupProperty(depths[1],"optionName") : depths[1]),depth0,{"name":"call","hash":{},"data":data,"loc":{"start":{"line":24,"column":64},"end":{"line":24,"column":91}}}))
14539
14614
  + "</option>\n";
14540
- },"4":function(container,depth0,helpers,partials,data) {
14615
+ },"8":function(container,depth0,helpers,partials,data) {
14541
14616
  var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14542
14617
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14543
14618
  return parent[propertyName];
@@ -14562,29 +14637,29 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14562
14637
  + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Show meetings near...",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":6,"column":60},"end":{"line":6,"column":95}}}))
14563
14638
  + "</button>\n <button id=\"nearbyMeetings\" style=\"display: block;\">"
14564
14639
  + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"near_me",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":7,"column":60},"end":{"line":7,"column":81}}}))
14565
- + "</button>\n <button id=\"filterMeetings\" style=\"display: block;\">"
14566
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Filter meetings",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":8,"column":60},"end":{"line":8,"column":89}}}))
14567
- + "</button>\n <button id=\"showAsTable\" style=\"display: block;\">"
14568
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"visible meeting list",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":9,"column":57},"end":{"line":9,"column":91}}}))
14569
- + "</button>\n <button id=\"fullscreenMode\" style=\"display: block;\">"
14570
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Toggle fullscreen mode",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":10,"column":60},"end":{"line":10,"column":96}}}))
14640
+ + "</button>\n"
14641
+ + ((stack1 = lookupProperty(helpers,"if").call(alias2,(depth0 != null ? lookupProperty(depth0,"dropdownData") : depth0),{"name":"if","hash":{},"fn":container.program(1, data, 0, blockParams, depths),"inverse":container.program(3, data, 0, blockParams, depths),"data":data,"loc":{"start":{"line":8,"column":8},"end":{"line":13,"column":15}}})) != null ? stack1 : "")
14642
+ + " <button id=\"fullscreenMode\" style=\"display: block;\">"
14643
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Toggle fullscreen mode",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":14,"column":60},"end":{"line":14,"column":96}}}))
14571
14644
  + "</button>\n </div>\n<div id=\"filter_modal\" class=\"modal\" style=\"display: none;\">\n <div class=\"modal-content\">\n <span class=\"modal-title\">"
14572
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Filter meetings",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":14,"column":34},"end":{"line":14,"column":63}}}))
14645
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Filter meetings",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":18,"column":34},"end":{"line":18,"column":63}}}))
14573
14646
  + "</span><span id=\"close_filter\" class=\"modal-close\">×</span>\n"
14574
- + ((stack1 = lookupProperty(helpers,"each").call(alias2,(depth0 != null ? lookupProperty(depth0,"dropdownData") : depth0),{"name":"each","hash":{},"fn":container.program(1, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":15,"column":8},"end":{"line":24,"column":17}}})) != null ? stack1 : "")
14647
+ + ((stack1 = lookupProperty(helpers,"each").call(alias2,(depth0 != null ? lookupProperty(depth0,"dropdownData") : depth0),{"name":"each","hash":{},"fn":container.program(5, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":19,"column":8},"end":{"line":28,"column":17}}})) != null ? stack1 : "")
14575
14648
  + " </div>\n</div>\n<div id=\"table_page\" class=\"bmlt-page "
14576
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"css-direction",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":27,"column":38},"end":{"line":27,"column":65}}}))
14649
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"css-direction",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":31,"column":38},"end":{"line":31,"column":65}}}))
14577
14650
  + " hide\" >\n <div id=\"bmlt-maptable-header\"><span class=\"map-list-title\">"
14578
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Visible meeting list",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":28,"column":64},"end":{"line":28,"column":98}}}))
14579
- + "</span><span id=\"close_table\" class=\"table-close\">X</span></div>\n <div id=\"bmlt-maptable-div\" style=\"position:relative; overflow-y:scroll;\">\n \n <table class='bmlt-table table table-striped table-hover table-bordered tablesaw tablesaw-stack "
14580
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"css-direction",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":31,"column":104},"end":{"line":31,"column":131}}}))
14651
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Visible meeting list",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":32,"column":64},"end":{"line":32,"column":98}}}))
14652
+ + "</span><span id=\"close_table\" class=\"table-close\">X</span></div>\n <div id=\"bmlt-maptable-div\" style=\"position:relative; overflow-y:scroll;\">\n\n <table class='bmlt-table table table-striped table-hover table-bordered tablesaw tablesaw-stack "
14653
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"css-direction",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":35,"column":104},"end":{"line":35,"column":131}}}))
14581
14654
  + "'>\n"
14582
- + ((stack1 = lookupProperty(helpers,"each").call(alias2,((stack1 = (depth0 != null ? lookupProperty(depth0,"meetings") : depth0)) != null ? lookupProperty(stack1,"bydays") : stack1),{"name":"each","hash":{},"fn":container.program(4, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":32,"column":8},"end":{"line":34,"column":17}}})) != null ? stack1 : "")
14655
+ + ((stack1 = lookupProperty(helpers,"each").call(alias2,((stack1 = (depth0 != null ? lookupProperty(depth0,"meetings") : depth0)) != null ? lookupProperty(stack1,"bydays") : stack1),{"name":"each","hash":{},"fn":container.program(8, data, 0, blockParams, depths),"inverse":container.noop,"data":data,"loc":{"start":{"line":36,"column":8},"end":{"line":38,"column":17}}})) != null ? stack1 : "")
14583
14656
  + " </table>\n </div>\n</div>\n<div id=\"geocoding_modal\" class=\"modal\" style=\"display: none;\">\n <div id=\"search_content\" class=\"modal-content\">\n <span class=\"modal-title\">"
14584
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Show meetings near...",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":40,"column":28},"end":{"line":40,"column":63}}}))
14657
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Show meetings near...",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":44,"column":28},"end":{"line":44,"column":63}}}))
14585
14658
  + "</span><span id=\"close_search\" class=\"modal-close\">x</span>\n <p></p>\n <div class=\"modal-search\">\n "
14586
- + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Enter a city or zip code",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":43,"column":12},"end":{"line":43,"column":50}}}))
14587
- + "\n <input id=\"goto-text\" type=\"text\">\n <button id=\"goto-button\" class=\"filter-button\">Los</button>\n </div>\n </div> \n</div>\n\n";
14659
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"Enter a city or zip code",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":47,"column":12},"end":{"line":47,"column":50}}}))
14660
+ + "\n <input id=\"goto-text\" type=\"text\">\n <button id=\"goto-button\" class=\"filter-button\">"
14661
+ + alias1((lookupProperty(helpers,"getWord")||(depth0 && lookupProperty(depth0,"getWord"))||alias3).call(alias2,"go",{"name":"getWord","hash":{},"data":data,"loc":{"start":{"line":49,"column":59},"end":{"line":49,"column":75}}}))
14662
+ + "</button>\n </div>\n </div>\n</div>\n\n";
14588
14663
  },"usePartial":true,"useData":true,"useDepths":true});
14589
14664
  this["hbs_Crouton"]["templates"]["mapSearch"] = Handlebars.template({"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
14590
14665
  var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
@@ -14662,6 +14737,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14662
14737
  + "</div>\n </td>\n <td class=\"bmlt-column3\">\n"
14663
14738
  + ((stack1 = container.invokePartial(lookupProperty(partials,"metaDataTemplate"),depth0,{"name":"metaDataTemplate","data":data,"indent":"\t\t\t","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14664
14739
  + ((stack1 = (lookupProperty(helpers,"canShare")||(depth0 && lookupProperty(depth0,"canShare"))||alias2).call(alias1,depth0,{"name":"canShare","hash":{},"fn":container.program(8, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":51,"column":3},"end":{"line":53,"column":16}}})) != null ? stack1 : "")
14740
+ + ((stack1 = (lookupProperty(helpers,"reportUpdateEnabled")||(depth0 && lookupProperty(depth0,"reportUpdateEnabled"))||alias2).call(alias1,depth0,{"name":"reportUpdateEnabled","hash":{},"fn":container.program(18, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":54,"column":3},"end":{"line":56,"column":27}}})) != null ? stack1 : "")
14665
14741
  + ((stack1 = container.invokePartial(lookupProperty(partials,"offerIcsButton"),depth0,{"name":"offerIcsButton","data":data,"indent":"\t\t\t","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14666
14742
  + " </td>\n </tr>\n";
14667
14743
  },"2":function(container,depth0,helpers,partials,data) {
@@ -14709,7 +14785,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14709
14785
  return undefined
14710
14786
  };
14711
14787
 
14712
- return " <a href=\"javascript:void(0);\" id=\"share-button\" class=\"btn btn-primary btn-xs\" onclick='navigator.share({ text: JSON.stringify(\""
14788
+ return " <a href=\"javascript:void(0);\" id=\"share-button\" class=\"btn btn-primary btn-xs\" onclick='navigator.share({ text: JSON.stringify(\""
14713
14789
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_day") : depth0), depth0))
14714
14790
  + " "
14715
14791
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"start_time_formatted") : depth0), depth0))
@@ -14723,10 +14799,10 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14723
14799
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_address") : depth0), depth0))
14724
14800
  + " "
14725
14801
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_location_info") : depth0), depth0))
14726
- + ((stack1 = lookupProperty(helpers,"if").call(alias3,(depth0 != null ? lookupProperty(depth0,"virtual_meeting_additional_info") : depth0),{"name":"if","hash":{},"fn":container.program(9, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":320},"end":{"line":52,"column":412}}})) != null ? stack1 : "")
14802
+ + ((stack1 = lookupProperty(helpers,"if").call(alias3,(depth0 != null ? lookupProperty(depth0,"virtual_meeting_additional_info") : depth0),{"name":"if","hash":{},"fn":container.program(9, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":319},"end":{"line":52,"column":411}}})) != null ? stack1 : "")
14727
14803
  + "\"), url: \""
14728
- + ((stack1 = (lookupProperty(helpers,"isVirtualOrHybrid")||(depth0 && lookupProperty(depth0,"isVirtualOrHybrid"))||alias4).call(alias3,depth0,{"name":"isVirtualOrHybrid","hash":{},"fn":container.program(11, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":422},"end":{"line":52,"column":609}}})) != null ? stack1 : "")
14729
- + ((stack1 = (lookupProperty(helpers,"isInPersonOrHybrid")||(depth0 && lookupProperty(depth0,"isInPersonOrHybrid"))||alias4).call(alias3,depth0,{"name":"isInPersonOrHybrid","hash":{},"fn":container.program(16, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":609},"end":{"line":52,"column":792}}})) != null ? stack1 : "")
14804
+ + ((stack1 = (lookupProperty(helpers,"isVirtualOrHybrid")||(depth0 && lookupProperty(depth0,"isVirtualOrHybrid"))||alias4).call(alias3,depth0,{"name":"isVirtualOrHybrid","hash":{},"fn":container.program(11, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":421},"end":{"line":52,"column":608}}})) != null ? stack1 : "")
14805
+ + ((stack1 = (lookupProperty(helpers,"isInPersonOrHybrid")||(depth0 && lookupProperty(depth0,"isInPersonOrHybrid"))||alias4).call(alias3,depth0,{"name":"isInPersonOrHybrid","hash":{},"fn":container.program(16, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":608},"end":{"line":52,"column":791}}})) != null ? stack1 : "")
14730
14806
  + "\"})'><span class=\"glyphicon glyphicon-share\"></span> "
14731
14807
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"share_word") : depth0), depth0))
14732
14808
  + "</a>\n";
@@ -14748,8 +14824,8 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14748
14824
  return undefined
14749
14825
  };
14750
14826
 
14751
- return ((stack1 = lookupProperty(helpers,"if").call(alias1,(depth0 != null ? lookupProperty(depth0,"virtual_meeting_link") : depth0),{"name":"if","hash":{},"fn":container.program(12, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":449},"end":{"line":52,"column":518}}})) != null ? stack1 : "")
14752
- + ((stack1 = lookupProperty(helpers,"if").call(alias1,(depth0 != null ? lookupProperty(depth0,"phone_meeting_number") : depth0),{"name":"if","hash":{},"fn":container.program(14, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":518},"end":{"line":52,"column":587}}})) != null ? stack1 : "");
14827
+ return ((stack1 = lookupProperty(helpers,"if").call(alias1,(depth0 != null ? lookupProperty(depth0,"virtual_meeting_link") : depth0),{"name":"if","hash":{},"fn":container.program(12, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":448},"end":{"line":52,"column":517}}})) != null ? stack1 : "")
14828
+ + ((stack1 = lookupProperty(helpers,"if").call(alias1,(depth0 != null ? lookupProperty(depth0,"phone_meeting_number") : depth0),{"name":"if","hash":{},"fn":container.program(14, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":52,"column":517},"end":{"line":52,"column":586}}})) != null ? stack1 : "");
14753
14829
  },"12":function(container,depth0,helpers,partials,data) {
14754
14830
  var lookupProperty = container.lookupProperty || function(parent, propertyName) {
14755
14831
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
@@ -14784,6 +14860,21 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14784
14860
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"latitude") : depth0), depth0))
14785
14861
  + ","
14786
14862
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"longitude") : depth0), depth0));
14863
+ },"18":function(container,depth0,helpers,partials,data) {
14864
+ var helper, alias1=container.escapeExpression, alias2=container.lambda, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14865
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14866
+ return parent[propertyName];
14867
+ }
14868
+ return undefined
14869
+ };
14870
+
14871
+ return " <a href=\""
14872
+ + alias1(((helper = (helper = lookupProperty(helpers,"reportUpdateUrl") || (depth0 != null ? lookupProperty(depth0,"reportUpdateUrl") : depth0)) != null ? helper : container.hooks.helperMissing),(typeof helper === "function" ? helper.call(depth0 != null ? depth0 : (container.nullContext || {}),{"name":"reportUpdateUrl","hash":{},"data":data,"loc":{"start":{"line":55,"column":13},"end":{"line":55,"column":34}}}) : helper)))
14873
+ + "?meeting_id="
14874
+ + alias1(alias2((depth0 != null ? lookupProperty(depth0,"id_bigint") : depth0), depth0))
14875
+ + "\" id=\"share-button\" class=\"btn btn-primary btn-xs\" target=\"_blank\"><span class=\"glyphicon glyphicon-edit\"></span> "
14876
+ + alias1(alias2((depth0 != null ? lookupProperty(depth0,"report_update_word") : depth0), depth0))
14877
+ + "</a>\n";
14787
14878
  },"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
14788
14879
  var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14789
14880
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
@@ -14792,7 +14883,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14792
14883
  return undefined
14793
14884
  };
14794
14885
 
14795
- return ((stack1 = lookupProperty(helpers,"each").call(depth0 != null ? depth0 : (container.nullContext || {}),depth0,{"name":"each","hash":{},"fn":container.program(1, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":1,"column":0},"end":{"line":57,"column":9}}})) != null ? stack1 : "");
14886
+ return ((stack1 = lookupProperty(helpers,"each").call(depth0 != null ? depth0 : (container.nullContext || {}),depth0,{"name":"each","hash":{},"fn":container.program(1, data, 0),"inverse":container.noop,"data":data,"loc":{"start":{"line":1,"column":0},"end":{"line":60,"column":9}}})) != null ? stack1 : "");
14796
14887
  },"usePartial":true,"useData":true});
14797
14888
  this["hbs_Crouton"]["templates"]["weekdays"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data) {
14798
14889
  var stack1, helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
@@ -16062,7 +16153,7 @@ function Crouton(config) {
16062
16153
  time_format: "h:mm a", // The format for time
16063
16154
  language: "en-US", // Default language translation, available translations listed here: https://github.com/bmlt-enabled/crouton/blob/master/croutonjs/src/js/crouton-localization.js
16064
16155
  has_tabs: true, // Shows the day tabs
16065
- filter_tabs: false, // Whether to show weekday tabs on filtering.
16156
+ filter_tabs: 0, // Whether to show weekday tabs on filtering.
16066
16157
  header: true, // Shows the dropdowns and buttons
16067
16158
  include_weekday_button: true, // Shows the weekday button
16068
16159
  int_include_unpublished: 0, // Includes unpublished meeting
@@ -16112,6 +16203,7 @@ function Crouton(config) {
16112
16203
  force_timeformat_in_querystring: true, // Set to false to shorten generated meeting detail query strings
16113
16204
  force_language_in_querystring: true, // Set to false to shorten generated meeting detail query strings
16114
16205
  theme: "jack", // Allows for setting pre-packaged themes. Choices are listed here: https://github.com/bmlt-enabled/crouton/blob/master/croutonjs/dist/templates/themes
16206
+ report_update_url: "", // URL to edit a meeting for BMLT-workflow plugin
16115
16207
  meeting_data_template: croutonDefaultTemplates.meeting_data_template,
16116
16208
  metadata_template: croutonDefaultTemplates.metadata_template,
16117
16209
  observer_template: croutonDefaultTemplates.observer_template,
@@ -16238,6 +16330,7 @@ function Crouton(config) {
16238
16330
  "parentServiceBodyType",
16239
16331
  "map_word",
16240
16332
  "share_word",
16333
+ "report_update_word",
16241
16334
  "show_qrcode",
16242
16335
  "formatted_day",
16243
16336
  "formatted_address",
@@ -16347,7 +16440,10 @@ function Crouton(config) {
16347
16440
  jQuery(id).removeClass("hide").addClass("show");
16348
16441
  };
16349
16442
 
16350
- self.showView = function (viewName) {
16443
+ self.showView = function (viewName, resetFilters=true) {
16444
+ if (resetFilters) {
16445
+ self.resetFilter();
16446
+ }
16351
16447
  if (viewName === "byday") {
16352
16448
  self.byDayView();
16353
16449
  } else if (viewName === "day" || viewName === "weekday") {
@@ -16360,7 +16456,6 @@ function Crouton(config) {
16360
16456
  };
16361
16457
 
16362
16458
  self.byDayView = function () {
16363
- self.resetFilter();
16364
16459
  self.lowlightButton(".filterButton");
16365
16460
  self.highlightButton("#day");
16366
16461
  jQuery('.bmlt-page').each(function (index) {
@@ -16372,7 +16467,6 @@ function Crouton(config) {
16372
16467
  };
16373
16468
 
16374
16469
  self.dayView = function () {
16375
- self.resetFilter();
16376
16470
  self.lowlightButton(".filterButton");
16377
16471
  self.highlightButton("#day");
16378
16472
  jQuery('.bmlt-page').each(function (index) {
@@ -16384,10 +16478,7 @@ function Crouton(config) {
16384
16478
  });
16385
16479
  };
16386
16480
 
16387
- self.filteredView = function (field, resetFilters=true) {
16388
- if (resetFilters) {
16389
- self.resetFilter();
16390
- }
16481
+ self.filteredView = function (field) {
16391
16482
  self.lowlightButton("#day");
16392
16483
  self.lowlightButton(".filterButton");
16393
16484
  self.highlightButton("#filterButton_" + field);
@@ -16430,8 +16521,6 @@ function Crouton(config) {
16430
16521
  });
16431
16522
  if (!filteringDropdown) {
16432
16523
  self.filtering = false;
16433
- if (croutonMap) croutonMap.fillMap();
16434
- return;
16435
16524
  }
16436
16525
  var showingNow = [];
16437
16526
  jQuery(".bmlt-data-row").not(".hide").each(function (index, value) {
@@ -16451,12 +16540,12 @@ function Crouton(config) {
16451
16540
  }
16452
16541
 
16453
16542
  if (!self.config.map_page || jQuery('#byfield_embeddedMapPage').hasClass('hide')) {
16454
- self.showFilteredMeetingsAsTable();
16543
+ self.showFilteredMeetingsAsTable(showingNow.length);
16455
16544
  }
16456
16545
  self.filtering = true;
16457
16546
  };
16458
- self.showFilteredMeetingsAsTable = function () {
16459
- if (self.config['filter_tabs']) {
16547
+ self.showFilteredMeetingsAsTable = function (showingNow) {
16548
+ if (self.config['filter_tabs'] && self.config['filter_tabs'] <= showingNow) {
16460
16549
  self.showPage("#nav-days");
16461
16550
  self.showPage("#tabs-content");
16462
16551
  } else {
@@ -16472,12 +16561,13 @@ function Crouton(config) {
16472
16561
  }
16473
16562
  }
16474
16563
  self.resetFilter = function () {
16564
+ croutonMap.filterVisible(false);
16475
16565
  if (self.config.map_page) {
16476
16566
  if (self.filtering) croutonMap.fillMap();
16477
16567
  jQuery('#displayTypeButton_tablePages').addClass('hide');
16478
16568
  jQuery('#filterButton_embeddedMapPage').removeClass('hide');
16479
16569
  } else if (self.config.show_map) croutonMap.fillMap();
16480
- self.filtering = false;
16570
+ self.filtering = false;
16481
16571
  self.updateFilters();
16482
16572
  self.updateMeetingCount();
16483
16573
  jQuery(".filter-dropdown").val(null).trigger("change");
@@ -16549,6 +16639,7 @@ function Crouton(config) {
16549
16639
  meetingCount = showingNow.length;
16550
16640
  addLive = function(id) {return id+"-live"};
16551
16641
  }
16642
+ self.showingNowCount = meetingCount;
16552
16643
  jQuery(addLive('#bmlt_tabs_meeting_count')).text(meetingCount);
16553
16644
  jQuery(addLive('#bmlt_tabs_group_count')).each(function(){
16554
16645
  var filteredMeetings = self.meetingData;
@@ -16661,7 +16752,7 @@ function Crouton(config) {
16661
16752
  templateString = element.firstChild.textContent;
16662
16753
  }
16663
16754
  var handlebarResult;
16664
- try {
16755
+ try {
16665
16756
  var template = crouton_Handlebars.compile(templateString);
16666
16757
  handlebarResult = template(meetingDetailsData);
16667
16758
  } catch (e) {
@@ -16758,7 +16849,7 @@ function Crouton(config) {
16758
16849
  };
16759
16850
  self.toFarsinNumber = function( n ) {
16760
16851
  const farsiDigits = ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹'];
16761
-
16852
+
16762
16853
  return n.replace(/\d/g, x => farsiDigits[x]);
16763
16854
  }
16764
16855
  self.enrichMeetings = function (meetingData) {
@@ -16794,7 +16885,7 @@ function Crouton(config) {
16794
16885
  .format(self.config['time_format']);
16795
16886
  if (self.config.language === 'fa-IR') {
16796
16887
  meetingData[m]['start_time_formatted'] = self.toFarsinNumber(meetingData[m]['start_time_formatted']);
16797
- meetingData[m]['end_time_formatted'] = self.toFarsinNumber(meetingData[m]['end_time_formatted']);
16888
+ meetingData[m]['end_time_formatted'] = self.toFarsinNumber(meetingData[m]['end_time_formatted']);
16798
16889
  }
16799
16890
 
16800
16891
  // back to bmlt day
@@ -16839,6 +16930,7 @@ function Crouton(config) {
16839
16930
  : "";
16840
16931
  meetingData[m]['map_word'] = self.localization.getWord('map').toUpperCase();
16841
16932
  meetingData[m]['share_word'] = self.localization.getWord('share').toUpperCase();
16933
+ meetingData[m]['report_update_word'] = self.localization.getWord('report update');
16842
16934
  meetingData[m]['show_qrcode'] = self.config['show_qrcode'];
16843
16935
  for (var k in meetingData[m]) {
16844
16936
  if (meetingData[m].hasOwnProperty(k) && typeof meetingData[m][k] === 'string') {
@@ -16875,9 +16967,9 @@ function Crouton(config) {
16875
16967
  }
16876
16968
  meetingData[m]['meeting_details_url'] += queryStringChar + ('meeting-id=' + meetingData[m]['id_bigint']
16877
16969
  + '&language=' + self.config.language
16878
- + '&time_format=' + encodeURIComponent(self.config.time_format)
16970
+ + '&time_format=' + encodeURIComponent(self.config.time_format)
16879
16971
  + (self.config.force_rootserver_in_querystring ? '&root_server=' + encodeURIComponent(self.config.root_server) : '')
16880
- );
16972
+ );
16881
16973
  }
16882
16974
 
16883
16975
  meetings.push(meetingData[m])
@@ -17037,7 +17129,7 @@ Crouton.prototype.doHandlebars = function() {
17037
17129
  Crouton.prototype.meetingModal = function(meetingId) {
17038
17130
  let self = this;
17039
17131
  const tabs = document.getElementById('bmlt-tabs');
17040
-
17132
+
17041
17133
  let el = document.createElement('bmlt-handlebar');
17042
17134
  tabs.appendChild(el);
17043
17135
  let span = document.createElement('span');
@@ -17063,7 +17155,7 @@ Crouton.prototype.meetingModal = function(meetingId) {
17063
17155
  let doSwipe = function(swipedir) {
17064
17156
  switch(swipedir) {
17065
17157
  case 'left':
17066
- index = index+1;
17158
+ index = index+1;
17067
17159
  break;
17068
17160
  case 'right':
17069
17161
  index = index-1;
@@ -17250,68 +17342,68 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17250
17342
  self.dayNamesSequenced = self.config.day_sequence.map((d)=>self.localization.getDayOfTheWeekWord(d));
17251
17343
  self.dropdownData = [];
17252
17344
  if (self.config.has_days) self.dropdownData.push(
17253
- {placeholder: self.localization.getWord('weekday'), pointer: 'weekdays', elementId: "filter-dropdown-weekdays",
17254
- uniqueData: (meetings) => sortListByList(getUniqueValuesOfKey(meetings, "formatted_day"), self.dayNamesSequenced),
17345
+ {placeholder: self.localization.getWord('weekday'), pointer: 'weekdays', elementId: "filter-dropdown-weekdays",
17346
+ uniqueData: (meetings) => sortListByList(getUniqueValuesOfKey(meetings, "formatted_day"), self.dayNamesSequenced),
17255
17347
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17256
17348
  if (self.config.has_states) self.dropdownData.push(
17257
- {placeholder: self.localization.getWord('states'), pointer: 'States', elementId: "filter-dropdown-states",
17258
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_province').sort(),
17349
+ {placeholder: self.localization.getWord('states'), pointer: 'States', elementId: "filter-dropdown-states",
17350
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_province').sort(),
17259
17351
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17260
17352
  if (self.config.has_sub_province) self.dropdownData.push(
17261
- {placeholder: self.localization.getWord('counties'), pointer: 'Counties', elementId: "filter-dropdown-sub_province",
17262
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_sub_province').sort(),
17263
- objectPointer: convertToPunyCode, optionName: (s)=>s});
17353
+ {placeholder: self.localization.getWord('counties'), pointer: 'Counties', elementId: "filter-dropdown-sub_province",
17354
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_sub_province').sort(),
17355
+ objectPointer: convertToPunyCode, optionName: (s)=>s});
17264
17356
  if (self.config.has_cities) self.dropdownData.push(
17265
- {placeholder: self.localization.getWord('cities'), pointer: 'Cities', elementId: "filter-dropdown-cities",
17266
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_municipality').sort(),
17357
+ {placeholder: self.localization.getWord('cities'), pointer: 'Cities', elementId: "filter-dropdown-cities",
17358
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_municipality').sort(),
17267
17359
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17268
17360
  if (self.config.has_neighborhoods) self.dropdownData.push(
17269
- {placeholder: self.localization.getWord('neighborhood'), pointer: 'Neighborhoods', elementId: "filter-dropdown-neighborhoods",
17270
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_neighborhood').sort(),
17271
- objectPointer: convertToPunyCode, optionName: (s)=>s});
17361
+ {placeholder: self.localization.getWord('neighborhood'), pointer: 'Neighborhoods', elementId: "filter-dropdown-neighborhoods",
17362
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_neighborhood').sort(),
17363
+ objectPointer: convertToPunyCode, optionName: (s)=>s});
17272
17364
  if (self.config.has_zip_codes) self.dropdownData.push(
17273
- {placeholder: self.localization.getWord('postal_codes'), pointer: 'Zips', elementId: "filter-dropdown-zipcodes",
17274
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_postal_code_1').sort(),
17365
+ {placeholder: self.localization.getWord('postal_codes'), pointer: 'Zips', elementId: "filter-dropdown-zipcodes",
17366
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_postal_code_1').sort(),
17275
17367
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17276
17368
  if (self.config.has_locations) self.dropdownData.push(
17277
- {placeholder: self.localization.getWord('locations'), pointer: 'Locations', elementId: "filter-dropdown-locations",
17278
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_text').map((s)=>s.replace(/(<([^>]+)>)/gi, "")).sort(),
17369
+ {placeholder: self.localization.getWord('locations'), pointer: 'Locations', elementId: "filter-dropdown-locations",
17370
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_text').map((s)=>s.replace(/(<([^>]+)>)/gi, "")).sort(),
17279
17371
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17280
17372
  if (self.config.has_regions) self.dropdownData.push(
17281
- {placeholder: self.localization.getWord('regions'), pointer: 'Regions', elementId: "filter-dropdown-regions",
17282
- uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'parentServiceBodyId').includes(sb.id)).sortByKey('name'),
17373
+ {placeholder: self.localization.getWord('regions'), pointer: 'Regions', elementId: "filter-dropdown-regions",
17374
+ uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'parentServiceBodyId').includes(sb.id)).sortByKey('name'),
17283
17375
  objectPointer: (a) => convertToPunyCode(a.name), optionName: (a)=>a.name});
17284
17376
  if (self.config.has_areas) self.dropdownData.push(
17285
- {placeholder: self.localization.getWord('areas'), pointer: 'Areas', elementId: "filter-dropdown-areas",
17286
- uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'service_body_bigint').includes(sb.id)).sortByKey('name'),
17377
+ {placeholder: self.localization.getWord('areas'), pointer: 'Areas', elementId: "filter-dropdown-areas",
17378
+ uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'service_body_bigint').includes(sb.id)).sortByKey('name'),
17287
17379
  objectPointer: (a) => a.id, optionName: (a)=>a.name});
17288
17380
  if (self.config.has_groups) self.dropdownData.push(
17289
- {placeholder: self.localization.getWord('groups'), pointer: 'Groups', elementId: "filter-dropdown-groups",
17290
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'meeting_name').sort(),
17381
+ {placeholder: self.localization.getWord('groups'), pointer: 'Groups', elementId: "filter-dropdown-groups",
17382
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'meeting_name').sort(),
17291
17383
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17292
17384
  if (self.config.has_venues) self.dropdownData.push(
17293
- {placeholder: self.localization.getWord('venue_types'), pointer: 'Venues', elementId: "filter-dropdown-venues",
17294
- uniqueData: (meetings) => self.getUsedVenueType(meetings),
17385
+ {placeholder: self.localization.getWord('venue_types'), pointer: 'Venues', elementId: "filter-dropdown-venues",
17386
+ uniqueData: (meetings) => self.getUsedVenueType(meetings),
17295
17387
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17296
17388
  if (self.config.has_formats) self.dropdownData.push(
17297
- {placeholder: self.localization.getWord('formats'), pointer: 'Formats', elementId: "filter-dropdown-formats",
17298
- uniqueData: (meetings) => getUniqueFormats(meetings),
17389
+ {placeholder: self.localization.getWord('formats'), pointer: 'Formats', elementId: "filter-dropdown-formats",
17390
+ uniqueData: (meetings) => getUniqueFormats(meetings),
17299
17391
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17300
17392
  if (self.config.has_languages) self.dropdownData.push(
17301
- {placeholder: self.localization.getWord('languages'), pointer: 'Formats', elementId: "filter-dropdown-languages",
17302
- uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'LANG').filter((f)=>f.key!==self.config.native_lang),
17393
+ {placeholder: self.localization.getWord('languages'), pointer: 'Formats', elementId: "filter-dropdown-languages",
17394
+ uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'LANG').filter((f)=>f.key!==self.config.native_lang),
17303
17395
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17304
17396
  if (self.config.has_common_needs) self.dropdownData.push(
17305
- {placeholder: self.localization.getWord('common_needs'), pointer: 'Formats', elementId: "filter-dropdown-commonneeds",
17306
- uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'FC3'),
17397
+ {placeholder: self.localization.getWord('common_needs'), pointer: 'Formats', elementId: "filter-dropdown-commonneeds",
17398
+ uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'FC3'),
17307
17399
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17308
- if (doMeetingMap) self.dropdownData.push(
17309
- {placeholder: '', pointer: 'visible', elementId: "filter-dropdown-visibile",
17310
- uniqueData: (meetings) => self.getUsedVisibility(meetings),
17400
+ if (doMeetingMap || self.config.show_map || self.config.map_page) self.dropdownData.push(
17401
+ {placeholder: '', pointer: 'visible', elementId: "filter-dropdown-visibile",
17402
+ uniqueData: (meetings) => self.getUsedVisibility(meetings),
17311
17403
  objectPointer: (s)=>s.value, optionName: (s)=>s.name});
17312
17404
  if (doMeetingMap) self.dropdownData.push(
17313
- {placeholder: '', pointer: 'next24', elementId: "filter-dropdown-next24",
17314
- uniqueData: (meetings) => self.getUsedNext24(meetings),
17405
+ {placeholder: '', pointer: 'next24', elementId: "filter-dropdown-next24",
17406
+ uniqueData: (meetings) => self.getUsedNext24(meetings),
17315
17407
  objectPointer: (s)=>s.value, optionName: (s)=>s.name});
17316
17408
  let renderer = doMeetingMap ? self.renderStandaloneMap : self.renderView;
17317
17409
  renderer("#" + self.config['placeholder_id'], {
@@ -17393,11 +17485,12 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17393
17485
  });
17394
17486
  jQuery('#displayTypeButton_tablePages').on('click', function (e) {
17395
17487
  self.hidePage('#byfield_embeddedMapPage');
17396
- self.showFilteredMeetingsAsTable();
17488
+ const knt = self.showingNowCount ? self.showingNowCount : self.meetingData.length;
17489
+ self.showFilteredMeetingsAsTable(knt);
17397
17490
  });
17398
17491
  jQuery('#filterButton_embeddedMapPage').on('click', function (e) {
17399
17492
  self.filteredView(e.target.attributes['data-field'].value, false);
17400
- croutonMap.showMap();
17493
+ croutonMap.showMap(false,false);
17401
17494
  });
17402
17495
  jQuery('.custom-ul').on('click', 'a', function (event) {
17403
17496
  jQuery('.bmlt-page').each(function (index) {
@@ -17422,7 +17515,7 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17422
17515
 
17423
17516
  self.showPage(".bmlt-header");
17424
17517
  self.showPage(".bmlt-tabs");
17425
- self.showView(self.config['view_by']);
17518
+ self.showView(self.config['view_by'], false);
17426
17519
 
17427
17520
  if (self.config['default_filter_dropdown'] !== "") {
17428
17521
  var filter = self.config['default_filter_dropdown'].toLowerCase().split("=");
@@ -17452,6 +17545,11 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17452
17545
  }, !doMeetingMap);
17453
17546
  });
17454
17547
  });
17548
+ Crouton.prototype.forceShowMap = function() {
17549
+ if (self.config.map_page && jQuery('#byfield_embeddedMapPage').hasClass('hide')) {
17550
+ jQuery('#filterButton_embeddedMapPage').click();
17551
+ }
17552
+ }
17455
17553
  };
17456
17554
 
17457
17555
 
@@ -17519,10 +17617,19 @@ crouton_Handlebars.registerHelper('formatDataPointer', function(str) {
17519
17617
  crouton_Handlebars.registerHelper('call', function(fn, str) {
17520
17618
  return fn(str);
17521
17619
  });
17620
+
17522
17621
  crouton_Handlebars.registerHelper('canShare', function(data, options) {
17523
17622
  return navigator.share ? getTrueResult(options, this) : getFalseResult(options, this);
17524
17623
  });
17525
17624
 
17625
+ crouton_Handlebars.registerHelper('reportUpdateEnabled', function(data, options) {
17626
+ return crouton.config.report_update_url !== "" ? getTrueResult(options, this) : getFalseResult(options, this)
17627
+ });
17628
+
17629
+ crouton_Handlebars.registerHelper('reportUpdateUrl', function() {
17630
+ return crouton.config.report_update_url;
17631
+ });
17632
+
17526
17633
  /**
17527
17634
  * @deprecated Since version 3.12.2, will be removed in a future version.
17528
17635
  */
@@ -17686,7 +17793,7 @@ crouton_Handlebars.registerHelper('hasBMLT2ics', function() {
17686
17793
  return crouton.config['bmlt2ics'].length>0;});
17687
17794
  crouton_Handlebars.registerHelper('BMLT2ics', function() {return crouton.config['bmlt2ics'];});
17688
17795
  crouton_Handlebars.registerPartial('icsButton',
17689
- '<a href="{{BMLT2ics}}?meeting-id={{id_bigint}}" download="{{meeting_name}}.ics" class="bootstrap-bmlt" ><div class="btn btn-primary bmlt-sharebutton"><span class="glyphicon glyphicon-download-alt"></span> {{getWord "bmlt2ics"}}</div></a>');
17796
+ '<a href="{{BMLT2ics}}?meeting-id={{id_bigint}}" download="{{meeting_name}}.ics" id="share-button" class="btn btn-primary btn-xs" ><span class="glyphicon glyphicon-download-alt"></span> {{getWord "bmlt2ics"}}</a>');
17690
17797
  crouton_Handlebars.registerPartial('offerIcsButton',
17691
17798
  "{{#if (hasBMLT2ics)}}{{> icsButton}}<br/>{{/if}}");
17692
17799
  function convertToPunyCode(str) {
@@ -17741,6 +17848,15 @@ Crouton.prototype.renderMeetingCount = function() {
17741
17848
  self.updateMeetingCount()
17742
17849
  });
17743
17850
  }
17851
+ Crouton.prototype.simulateFilterDropdown = function() {
17852
+ self = this;
17853
+ jQuery('.bmlt-page:not(#byfield_embeddedMapPage)').each(function () {
17854
+ self.hidePage(this);
17855
+ });
17856
+ self.filteredPage();
17857
+ if (!self.filtering && !self.config.map_page)
17858
+ self.showView(self.config['view_by'] === 'byday' ? 'byday' : 'day', false);
17859
+ }
17744
17860
  Crouton.prototype.getAdjustedDateTime = function(meeting_day, meeting_time, meeting_time_zone) {
17745
17861
  var timeZoneAware = this.config['auto_tz_adjust'] === true || this.config['auto_tz_adjust'] === "true";
17746
17862
  var meeting_date_time_obj;
@@ -17866,7 +17982,7 @@ Array.prototype.sortByKey = function (key) {
17866
17982
  return this;
17867
17983
  };
17868
17984
  function swipedetect(el, callback){
17869
-
17985
+
17870
17986
  var touchsurface = el,
17871
17987
  swipedir,
17872
17988
  startX,
@@ -17876,15 +17992,15 @@ function swipedetect(el, callback){
17876
17992
  threshold = 150, //required min distance traveled to be considered swipe
17877
17993
  restraint = 100, // maximum distance allowed at the same time in perpendicular direction
17878
17994
  handleswipe = callback || function(swipedir){}
17879
-
17995
+
17880
17996
  touchsurface.addEventListener('touchstart', function(e){
17881
17997
  var touchobj = e.changedTouches[0]
17882
17998
  swipedir = 'none'
17883
17999
  startX = touchobj.pageX
17884
18000
  startY = touchobj.pageY
17885
18001
  }, false)
17886
-
17887
-
18002
+
18003
+
17888
18004
  touchsurface.addEventListener('touchend', function(e){
17889
18005
  if (!e.cancelable) return;
17890
18006
  var touchobj = e.changedTouches[0]
@@ -17962,14 +18078,18 @@ function MeetingMap(inConfig) {
17962
18078
  }
17963
18079
  if (config.map_search.zoom) {
17964
18080
  config.zoom = config.map_search.zoom;
17965
- }
18081
+ }
17966
18082
  }
17967
18083
  let loc = {latitude: config.lat, longitude: config.lng, zoom: config.zoom};
17968
- if (handlebarMapOptions) loc = {latitude: handlebarMapOptions.lat, longitude: handlebarMapOptions.lng};
18084
+ if (handlebarMapOptions) loc = {latitude: handlebarMapOptions.lat, longitude: handlebarMapOptions.lng};
17969
18085
  if (gDelegate.createMap(inDiv, loc)) {
17970
18086
  gDelegate.addListener('zoomend', function (ev) {
17971
18087
  if (shouldRedrawMarkers() && gAllMeetings) {
17972
- searchResponseCallback();
18088
+ if (listOnlyVisible) {
18089
+ const oldValue = filterVisible(false);
18090
+ searchResponseCallback();
18091
+ filterVisible(oldValue);
18092
+ } else searchResponseCallback();
17973
18093
  }
17974
18094
  }, false);
17975
18095
  if (config.map_search) {
@@ -17979,7 +18099,11 @@ function MeetingMap(inConfig) {
17979
18099
  menuContext.imageDir = config.BMLTPlugin_images;
17980
18100
  gDelegate.addControl(createNext24Toggle(), 'topleft');
17981
18101
  gDelegate.addControl(createMenuButton(menuContext), 'topright', cb);
17982
- };
18102
+ }
18103
+ else {
18104
+ menuContext = {imageDir: config.BMLTPlugin_images, config: config, dropdownData:false};
18105
+ gDelegate.addControl(createMenuButton(menuContext), 'topright', cb);
18106
+ }
17983
18107
  }
17984
18108
  };
17985
18109
  };
@@ -18048,24 +18172,31 @@ function MeetingMap(inConfig) {
18048
18172
  controlDiv.innerHTML = template(menuContext);
18049
18173
  controlDiv.querySelector("#nearbyMeetings").addEventListener('click', function (e) {
18050
18174
  retrieveGeolocation().then(position => {
18051
- gDelegate.setViewToPosition(position, filterMeetingsAndBounds);
18175
+ filterVisible(false);
18176
+ gDelegate.setViewToPosition(position, filterMeetingsAndBounds, filterVisible);
18052
18177
  }).catch(error => {
18053
18178
  console.error(error.message);
18054
- $('.geo').removeClass("hide").addClass("show").html(`<p>${error.message}</p>`);
18179
+ jQuery('.geo').removeClass("hide").addClass("show").html(`<p>${error.message}</p>`);
18055
18180
  });
18056
18181
  dropdownContent = document.getElementById("map-menu-dropdown").style.display = "none";
18057
18182
  });
18058
18183
 
18059
18184
  controlDiv.querySelector("#lookupLocation").addEventListener('click', showGeocodingDialog);
18060
- controlDiv.querySelector("#filterMeetings").addEventListener('click', showFilterDialog);
18061
- controlDiv.querySelector("#showAsTable").addEventListener('click', showListView);
18185
+ if (menuContext && menuContext.dropdownData) {
18186
+ controlDiv.querySelector("#filterMeetings").addEventListener('click', showFilterDialog);
18187
+ controlDiv.querySelector("#showAsTable").addEventListener('click', showListView);
18188
+ } else {
18189
+ controlDiv.querySelector("#filterTable").addEventListener('click', toggleVisible);
18190
+ }
18062
18191
  controlDiv.querySelector("#fullscreenMode").addEventListener('click', toggleFullscreen);
18063
18192
  controlDiv.querySelector("#map-menu-button").addEventListener('click', function (e) {
18064
18193
  let dropdownContent = document.getElementById("map-menu-dropdown");
18065
- if (dropdownContent.style.display == "inline-block")
18194
+ if (dropdownContent.style.display == "inline-block") {
18066
18195
  dropdownContent.style.display = "none";
18067
- else
18196
+ else {
18197
+ jQuery("#filteringByVisibility").html(listOnlyVisible?'&#10004;':'');
18068
18198
  dropdownContent.style.display = "inline-block";
18199
+ }
18069
18200
  });
18070
18201
  [...controlDiv.getElementsByClassName('modal-close')].forEach((elem)=>elem.addEventListener('click', (e)=>closeModalWindow(e.target)));
18071
18202
  controlDiv.querySelector("#close_table").addEventListener('click', hideListView);
@@ -18112,7 +18243,7 @@ function MeetingMap(inConfig) {
18112
18243
  function filterFromCrouton(filter) {
18113
18244
  gMeetingIdsFromCrouton = filter;
18114
18245
  if (gAllMeetings)
18115
- searchResponseCallback(fitDuringFilter);
18246
+ searchResponseCallback(fitDuringFilter && !listOnlyVisible);
18116
18247
  };
18117
18248
  function nearMeSearch() {
18118
18249
  retrieveGeolocation().then(position => {
@@ -18125,7 +18256,7 @@ function MeetingMap(inConfig) {
18125
18256
  });
18126
18257
  };
18127
18258
  function clickSearch(e) {
18128
- croutonMap.showMap();
18259
+ croutonMap.showMap(false,false);
18129
18260
  gDelegate.clickSearch(e, function(lat,lng) {
18130
18261
  showThrobber();
18131
18262
  crouton.searchByCoordinates(lat, lng, config.map_search.width);
@@ -18190,20 +18321,23 @@ function MeetingMap(inConfig) {
18190
18321
  }
18191
18322
  searchResponseCallback();
18192
18323
  hideThrobber();
18324
+ if (config.filter_visible || config.centerMe || config.goto) crouton.forceShowMap();
18193
18325
  if (config.centerMe) {
18194
18326
  if (navigator.geolocation) {
18195
18327
  navigator.geolocation.getCurrentPosition(
18196
18328
  function (position) {
18197
18329
  coords = {latitude: position.coords.latitude, longitude: position.coords.longitude};
18198
- gDelegate.setViewToPosition(coords, filterMeetingsAndBounds);
18330
+ filterVisible(false);
18331
+ gDelegate.setViewToPosition(coords, filterMeetingsAndBounds, filterVisible);
18199
18332
  },
18200
18333
  showGeocodingDialog
18201
18334
  );
18202
18335
  } else if (fitAll) {
18203
18336
  showGeocodingDialog();
18204
18337
  }
18205
- } else if (config.goto) {
18206
- gDelegate.callGeocoder(config.goto, filterMeetingsAndBounds);
18338
+ } else {
18339
+ if (!config.centerMe && !config.goto) gDelegate.afterInit(()=>filterVisible(config.filter_visible));
18340
+ if (config.goto) gDelegate.callGeocoder(config.goto, resetVisibleThenFilterMeetingsAndBounds);
18207
18341
  }
18208
18342
  }
18209
18343
  function createCityHash(allMeetings) {
@@ -18295,14 +18429,20 @@ function MeetingMap(inConfig) {
18295
18429
  jQuery("#table_page").addClass("hide");
18296
18430
  jQuery("#bmlt-map").css("display", "block");
18297
18431
  }
18432
+ function resetVisibleThenFilterMeetingsAndBounds(bounds) {
18433
+ filterVisible(false);
18434
+ const ret = filterMeetingsAndBounds(bounds);
18435
+ filterVisible(true);
18436
+ return ret;
18437
+ }
18298
18438
  function lookupLocation(fullscreen) {
18299
18439
  if (document.getElementById('goto-text').value != '') {
18300
18440
  if (fullscreen) {
18301
18441
  gDelegate.addListener('idle', function () {
18302
- gDelegate.callGeocoder(document.getElementById('goto-text').value, filterMeetingsAndBounds);
18442
+ gDelegate.callGeocoder(document.getElementById('goto-text').value, resetVisibleThenFilterMeetingsAndBounds);
18303
18443
  }, true);
18304
18444
  } else {
18305
- gDelegate.callGeocoder(document.getElementById('goto-text').value, filterMeetingsAndBounds);
18445
+ gDelegate.callGeocoder(document.getElementById('goto-text').value, resetVisibleThenFilterMeetingsAndBounds);
18306
18446
  }
18307
18447
  } else {
18308
18448
  alert("");
@@ -18354,12 +18494,12 @@ function MeetingMap(inConfig) {
18354
18494
  ? filtered.map((m)=>[m])
18355
18495
  : mapOverlappingMarkersInCity(filtered);
18356
18496
 
18357
- if (useMarkerCluster()) gDelegate.createClusterLayer();
18497
+ if (useMarkerCluster()) gDelegate.createClusterLayer();
18358
18498
  // Draw the meeting markers.
18359
18499
  overlap_map.forEach(function (marker) {
18360
18500
  createMapMarker(marker);
18361
18501
  });
18362
- gDelegate.addClusterLayer();
18502
+ gDelegate.addClusterLayer();
18363
18503
  if (expand) {
18364
18504
  const lat_lngs = filtered.reduce(function(a,m) {a.push([m.latitude, m.longitude]); return a;},[]);
18365
18505
  gDelegate.fitBounds(lat_lngs);
@@ -18464,20 +18604,38 @@ function MeetingMap(inConfig) {
18464
18604
  (meetings.length > 1),
18465
18605
  marker_html, null ,meetings.map((m)=>parseInt(m.id_bigint)));
18466
18606
  };
18607
+ var listOnlyVisible = false;
18608
+ var listener = null;
18467
18609
  function filterBounds(bounds) {
18468
18610
  return gAllMeetings.filter((meeting) => gDelegate.contains(bounds, meeting.latitude, meeting.longitude));
18469
18611
  }
18612
+ function showAllMeetings() {
18613
+ filterVisible(false);
18614
+ gDelegate.addListener('dragend', filterVisible, true);
18615
+ }
18470
18616
  function filterVisible(on=true) {
18617
+ if (on==listOnlyVisible) return on;
18471
18618
  let mtgs = on ? filterBounds(gDelegate.getBounds()) : gAllMeetings;
18472
18619
  let visible = mtgs.map((m)=>m.id_bigint);
18473
18620
  jQuery(".bmlt-data-row").each(function(index,row) {
18474
18621
  row.dataset.visible = (visible.includes(row.id.split('-').pop())) ? '1' : '0';
18475
18622
  });
18476
18623
  jQuery("#byday").removeClass('hide');
18477
- jQuery("#filter-dropdown-visibile").val('a-1');
18624
+ jQuery("#filter-dropdown-visibile").val(on?'a-1':'');
18478
18625
  fitDuringFilter = false;
18479
- crouton.doFilters();
18626
+ crouton.simulateFilterDropdown();
18480
18627
  fitDuringFilter = true;
18628
+ jQuery("#filteringByVisibility").html(on?'&#10004;':'');
18629
+ listOnlyVisible = on;
18630
+ if (on) listener = gDelegate.addListener('dragstart', showAllMeetings, true);
18631
+ else if (listener) {
18632
+ gDelegate.removeListener(listener);
18633
+ listener = null;
18634
+ }
18635
+ return !on;
18636
+ }
18637
+ function toggleVisible() {
18638
+ filterVisible(!listOnlyVisible);
18481
18639
  }
18482
18640
  function filterBounds(bounds) {
18483
18641
  var ret = gAllMeetings.filter((meeting) =>
@@ -18556,14 +18714,14 @@ function MeetingMap(inConfig) {
18556
18714
  }
18557
18715
  gDelegate.invalidateSize();
18558
18716
  }
18559
- function showMap(isModal=false) {
18717
+ function showMap(isModal=false, fitBounds=true) {
18560
18718
  if (isModal && gModalDelegate) {
18561
18719
  gModalDelegate.invalidateSize();
18562
18720
  return;
18563
18721
  }
18564
18722
  gDelegate.invalidateSize();
18565
18723
  if (!gAllMeetings) return;
18566
- gDelegate.fitBounds(
18724
+ if (fitBounds) gDelegate.fitBounds(
18567
18725
  ((gMeetingIdsFromCrouton) ? gAllMeetings.filter((m) => gMeetingIdsFromCrouton.includes(m.id_bigint)) : gAllMeetings)
18568
18726
  .reduce(function(a,m) {a.push([m.latitude, m.longitude]); return a;},[])
18569
18727
  );
@@ -18581,6 +18739,7 @@ function MeetingMap(inConfig) {
18581
18739
  this.openModalWindow = openModalWindow;
18582
18740
  this.closeModalWindow = closeModalWindow;
18583
18741
  this.loadPopupMap = loadPopupMap;
18742
+ this.filterVisible = filterVisible;
18584
18743
  };
18585
18744
  MeetingMap.prototype.initialize = null;
18586
18745
  MeetingMap.prototype.showMap = null;
@@ -18592,6 +18751,7 @@ MeetingMap.prototype.refreshMeetings = null;
18592
18751
  MeetingMap.prototype.openModalWindow = null;
18593
18752
  MeetingMap.prototype.closeModalWindow = null;
18594
18753
  MeetingMap.prototype.loadPopupMap = null;
18754
+ MeetingMap.prototype.filterVisible = null;
18595
18755
 
18596
18756
  function MapDelegate(config) {
18597
18757
  var g_icon_image_single = L.icon({
@@ -18660,25 +18820,33 @@ function MapDelegate(config) {
18660
18820
  if (ev=='idle') {
18661
18821
  ev = 'moveend';
18662
18822
  }
18823
+ if (ev=='dragstart') {
18824
+ ev = 'movestart';
18825
+ }
18826
+ if (ev=='dragend') {
18827
+ ev = 'moveend';
18828
+ }
18663
18829
  if (once) {
18664
18830
  gMainMap.once(ev, f);
18665
18831
  } else {
18666
18832
  gMainMap.on(ev, f);
18667
18833
  }
18834
+ return {'event': ev, 'f': f};
18668
18835
  }
18836
+ function removeListener(o) {
18837
+ gMainMap.off(o.event, o.f);
18838
+ }
18669
18839
  function setViewToPosition(position, filterMeetings, extra=null) {
18670
18840
  var latlng = L.latLng(position.latitude, position.longitude);
18671
18841
  gMainMap.flyTo(latlng);
18672
- gMainMap.on('moveend', function(ev) {
18673
- gMainMap.off('moveend');
18842
+ gMainMap.once('moveend', function(ev) {
18674
18843
  newZoom = getZoomAdjust(false, filterMeetings);
18675
18844
  if (gMainMap.getZoom() != newZoom) {
18676
18845
  gMainMap.setZoom(newZoom);
18677
- gMainMap.on('zoomend',function() {
18678
- gMainMap.off('zoomend');
18846
+ gMainMap.once('zoomend',function() {
18679
18847
  gMainMap.invalidateSize();
18680
18848
  if (extra) {
18681
- gMainMap.on('load moveend', extra);
18849
+ gMainMap.once('load moveend', extra);
18682
18850
  }
18683
18851
  });
18684
18852
  } else {
@@ -18732,7 +18900,7 @@ function MapDelegate(config) {
18732
18900
  if (knt == 0) {
18733
18901
  ret -= 1;
18734
18902
  }
18735
- }
18903
+ }
18736
18904
  return ret;
18737
18905
  }
18738
18906
  function setZoom(filterMeetings, force=0) {
@@ -18745,7 +18913,7 @@ function MapDelegate(config) {
18745
18913
  return gMainMap.latLngToLayerPoint(L.latLng(lat,lng));
18746
18914
  }
18747
18915
  function createMarker ( inCoords, ///< The long/lat for the marker.
18748
- multi, ///< The URI for the main icon
18916
+ multi, ///< Flag if marker has multiple meetings
18749
18917
  in_html, ///< The info window HTML
18750
18918
  in_title, ///< The tooltip
18751
18919
  in_ids
@@ -18760,10 +18928,10 @@ function MapDelegate(config) {
18760
18928
  if (typeof crouton != 'undefined') crouton.dayTabFromId(id);
18761
18929
  }
18762
18930
  var marker = L.marker(inCoords, {icon: in_main_icon, title: in_title}).bindPopup(in_html);
18931
+ marker.isMulti = multi;
18763
18932
  if (gClusterLayer) gClusterLayer.addLayer(marker);
18764
18933
  else marker.addTo(gMainMap);
18765
18934
  marker.on('popupopen', function(e) {
18766
- marker.oldIcon = marker.getIcon();
18767
18935
  marker.setIcon(g_icon_image_selected);
18768
18936
  gMainMap.on('zoomstart',function(){
18769
18937
  marker.closePopup();
@@ -18776,7 +18944,7 @@ function MapDelegate(config) {
18776
18944
  });
18777
18945
  });
18778
18946
  marker.on('popupclose', function(e) {
18779
- marker.setIcon(marker.oldIcon);
18947
+ marker.setIcon(marker.isMulti ? g_icon_image_multi : g_icon_image_single);
18780
18948
  jQuery(".bmlt-data-row > td").removeClass("rowHighlight");
18781
18949
  });
18782
18950
  gAllMarkers.push( {ids: in_ids, marker: marker} );
@@ -18904,7 +19072,7 @@ function addControl(div,pos,cb) {
18904
19072
  gMainMap.on('moveend', function(ev) {
18905
19073
  gMainMap.off('moveend');
18906
19074
  gMainMap.setZoom(getZoomAdjust(true, filterMeetings));
18907
- gMainMap.on('moveend',function() {
19075
+ gMainMap.once('moveend',function() {
18908
19076
  gTileLayer.redraw();
18909
19077
  });
18910
19078
  });
@@ -18972,9 +19140,13 @@ function addControl(div,pos,cb) {
18972
19140
  function modalOff() {
18973
19141
  if (gMainMap) gMainMap.dragging.enable()
18974
19142
  }
19143
+ function afterInit(f) {
19144
+ f();
19145
+ }
18975
19146
  function returnTrue() {return true;}
18976
19147
  this.createMap = createMap;
18977
19148
  this.addListener = addListener;
19149
+ this.removeListener = removeListener;
18978
19150
  this.addControl = addControl;
18979
19151
  this.setViewToPosition = setViewToPosition;
18980
19152
  this.clearAllMarkers = clearAllMarkers;
@@ -18997,9 +19169,11 @@ function addControl(div,pos,cb) {
18997
19169
  this.getGeocodeCenter = getGeocodeCenter;
18998
19170
  this.modalOn = modalOn;
18999
19171
  this.modalOff = modalOff;
19172
+ this.afterInit = afterInit;
19000
19173
  }
19001
19174
  MapDelegate.prototype.createMap = null;
19002
19175
  MapDelegate.prototype.addListener = null;
19176
+ MapDelegate.prototype.removeListener = null;
19003
19177
  MapDelegate.prototype.addControl = null;
19004
19178
  MapDelegate.prototype.setViewToPosition = null;
19005
19179
  MapDelegate.prototype.clearAllMarkers = null;
@@ -19022,6 +19196,7 @@ MapDelegate.prototype.clickSearch = null;
19022
19196
  MapDelegate.prototype.getGeocodeCenter = null;
19023
19197
  MapDelegate.prototype.modalOn = null;
19024
19198
  MapDelegate.prototype.modalOff = null;
19199
+ MapDelegate.prototype.afterInit = null;
19025
19200
 
19026
19201
  /* @preserve
19027
19202
  * Leaflet 1.5.1+Detached: 2e3e0ffbe87f246eb76d86d2633ddd59b262830b.2e3e0ff, a JS library for interactive maps. http://leafletjs.com