@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.
package/crouton.js CHANGED
@@ -13255,7 +13255,7 @@ function CroutonLocalization(language) {
13255
13255
  RS: "لجنة خدمات الإقلي.م",
13256
13256
  ZF: "منتدى المنطقة" ,
13257
13257
  MA: "لجنة خدمات العاصمة",
13258
- LS: "خدمة المنتديات المحلية",
13258
+ LS: "خدمة المنتديات المحلية",
13259
13259
  GS: "Group Support Forum",
13260
13260
  },
13261
13261
  "css-direction": 'bmlt-rtl',
@@ -13274,7 +13274,10 @@ function CroutonLocalization(language) {
13274
13274
  'close': "قريب",
13275
13275
  "bmlt2ics": "Add to your calendar",
13276
13276
  'meeting page': "صفحة الاجتماع",
13277
- 'meeting details': "تفاصيل الاجتماع"
13277
+ 'meeting details': "تفاصيل الاجتماع",
13278
+ 'report update': "Report an Update",
13279
+ 'filter by visibility': "List only these meetings",
13280
+ 'go': "Go!"
13278
13281
  },
13279
13282
  "da-DK": {
13280
13283
  "days_of_the_week": ["", "Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"],
@@ -13326,6 +13329,9 @@ function CroutonLocalization(language) {
13326
13329
  'visible meeting list': 'Visible meetings as list',
13327
13330
  'enter a city or zip code': 'Enter a city or zip code',
13328
13331
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13332
+ 'report update': "Report an Update",
13333
+ 'filter by visibility': "List only these meetings",
13334
+ 'go': "Go!"
13329
13335
  },
13330
13336
  "de-DE":{
13331
13337
  "days_of_the_week": ["", "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"],
@@ -13379,7 +13385,10 @@ function CroutonLocalization(language) {
13379
13385
  'close': "Schliessen",
13380
13386
  "bmlt2ics": "Zu Kalender hinzufügen",
13381
13387
  'meeting page': "Meeting Seite",
13382
- 'meeting details': "Genaueres zum Meeting"
13388
+ 'meeting details': "Genaueres zum Meeting",
13389
+ 'report update': "Report an Update",
13390
+ 'filter by visibility': "Zeige nur Meetings, die gerade auf dem Karte stehen",
13391
+ 'go': "Los!"
13383
13392
  },
13384
13393
  "en-AU": {
13385
13394
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13432,7 +13441,10 @@ function CroutonLocalization(language) {
13432
13441
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13433
13442
  'close': "Close",
13434
13443
  'meeting page': "Meeting Page",
13435
- 'meeting details': "Meeting Details"
13444
+ 'meeting details': "Meeting Details",
13445
+ 'report update': "Report an Update",
13446
+ 'filter by visibility': "List only these meetings",
13447
+ 'go': "Go!"
13436
13448
  },
13437
13449
  "en-CA": {
13438
13450
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13486,7 +13498,10 @@ function CroutonLocalization(language) {
13486
13498
  'close': "Close",
13487
13499
  "bmlt2ics": "Add to your calendar",
13488
13500
  'meeting page': "Meeting Page",
13489
- 'meeting details': "Meeting Details"
13501
+ 'meeting details': "Meeting Details",
13502
+ 'report update': "Report an Update",
13503
+ 'filter by visibility': "List only these meetings",
13504
+ 'go': "Go!"
13490
13505
  },
13491
13506
  "en-NZ": {
13492
13507
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13540,7 +13555,10 @@ function CroutonLocalization(language) {
13540
13555
  'close': "Close",
13541
13556
  "bmlt2ics": "Add to your calendar",
13542
13557
  'meeting page': "Meeting Page",
13543
- 'meeting details': "Meeting Details"
13558
+ 'meeting details': "Meeting Details",
13559
+ 'report update': "Report an Update",
13560
+ 'filter by visibility': "List only these meetings",
13561
+ 'go': "Go!"
13544
13562
  },
13545
13563
  "en-UK": {
13546
13564
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13594,7 +13612,10 @@ function CroutonLocalization(language) {
13594
13612
  'toggle fullscreen mode': 'Toggle fullscreen mode',
13595
13613
  'close': "Close",
13596
13614
  'meeting page': "Meeting Page",
13597
- 'meeting details': "Meeting Details"
13615
+ 'meeting details': "Meeting Details",
13616
+ 'report update': "Report an Update",
13617
+ 'filter by visibility': "List only these meetings",
13618
+ 'go': "Go!"
13598
13619
  },
13599
13620
  "en-US": {
13600
13621
  "days_of_the_week" : ["", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
@@ -13648,7 +13669,10 @@ function CroutonLocalization(language) {
13648
13669
  'close': "Close",
13649
13670
  "bmlt2ics": "Add to your calendar",
13650
13671
  'meeting page': "Meeting Page",
13651
- 'meeting details': "Meeting Details"
13672
+ 'meeting details': "Meeting Details",
13673
+ 'report update': "Report an Update",
13674
+ 'filter by visibility': "List only these meetings",
13675
+ 'go': "Go!"
13652
13676
  },
13653
13677
  "es-US": {
13654
13678
  "days_of_the_week" : ["", "Domingo", " Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"],
@@ -13702,7 +13726,10 @@ function CroutonLocalization(language) {
13702
13726
  'close': "Close",
13703
13727
  "bmlt2ics": "Add to your calendar",
13704
13728
  'meeting page': "Meeting Page",
13705
- 'meeting details': "Meeting Details"
13729
+ 'meeting details': "Meeting Details",
13730
+ 'report update': "Report an Update",
13731
+ 'filter by visibility': "List only these meetings",
13732
+ 'go': "Go!"
13706
13733
  },
13707
13734
  "fa-IR": {
13708
13735
  "days_of_the_week" : ["", 'یَکشَنب', 'دوشَنبه', 'سه‌شنبه', 'چهار شنبه', 'پَنج شَنبه', 'جُمعه', 'شَنبه'],
@@ -13755,7 +13782,10 @@ function CroutonLocalization(language) {
13755
13782
  'close': "Close",
13756
13783
  "bmlt2ics": "Add to your calendar",
13757
13784
  'meeting page': "Meeting Page",
13758
- 'meeting details': "Meeting Details"
13785
+ 'meeting details': "Meeting Details",
13786
+ 'report update': "Report an Update",
13787
+ 'filter by visibility': "List only these meetings",
13788
+ 'go': "Go!"
13759
13789
  },
13760
13790
  "fr-CA": {
13761
13791
  "days_of_the_week" : ["", "Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"],
@@ -13809,7 +13839,10 @@ function CroutonLocalization(language) {
13809
13839
  "close": "Fermer",
13810
13840
  "bmlt2ics": "Ajouter au calendrier",
13811
13841
  "meeting page": "Page de la réunion",
13812
- "meeting details": "Détails de la réunion"
13842
+ "meeting details": "Détails de la réunion",
13843
+ 'report update': "Report an Update",
13844
+ 'filter by visibility': "List only these meetings",
13845
+ 'go': "Go!"
13813
13846
  },
13814
13847
  "it-IT": {
13815
13848
  "days_of_the_week" : ["", "Domenica", " Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"],
@@ -13863,7 +13896,10 @@ function CroutonLocalization(language) {
13863
13896
  'close': "Close",
13864
13897
  "bmlt2ics": "Aggiungi al tuo calendario",
13865
13898
  'meeting page': "Meeting Page",
13866
- 'meeting details': "Meeting Details"
13899
+ 'meeting details': "Meeting Details",
13900
+ 'report update': "Report an Update",
13901
+ 'filter by visibility': "List only these meetings",
13902
+ 'go': "Go!"
13867
13903
  },
13868
13904
  "nl-NL": {
13869
13905
  "days_of_the_week" : ["", "Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag"],
@@ -13917,7 +13953,10 @@ function CroutonLocalization(language) {
13917
13953
  'close': "Close",
13918
13954
  "bmlt2ics": "Add to your calendar",
13919
13955
  'meeting page': "Meeting Page",
13920
- 'meeting details': "Meeting Details"
13956
+ 'meeting details': "Meeting Details",
13957
+ 'report update': "Report an Update",
13958
+ 'filter by visibility': "List only these meetings",
13959
+ 'go': "Go!"
13921
13960
  },
13922
13961
  "pl-PL": {
13923
13962
  "days_of_the_week" : ["", "Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota"],
@@ -13971,7 +14010,10 @@ function CroutonLocalization(language) {
13971
14010
  'close': "Close",
13972
14011
  "bmlt2ics": "Add to your calendar",
13973
14012
  'meeting page': "Meeting Page",
13974
- 'meeting details': "Meeting Details"
14013
+ 'meeting details': "Meeting Details",
14014
+ 'report update': "Report an Update",
14015
+ 'filter by visibility': "List only these meetings",
14016
+ 'go': "Go!"
13975
14017
  },
13976
14018
  "pt-BR": {
13977
14019
  "days_of_the_week" : ["", "Domingo", "Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado"],
@@ -14025,7 +14067,10 @@ function CroutonLocalization(language) {
14025
14067
  'toggle fullscreen mode': 'Toggle fullscreen mode',
14026
14068
  'close': "Close",
14027
14069
  'meeting page': "Meeting Page",
14028
- 'meeting details': "Meeting Details"
14070
+ 'meeting details': "Meeting Details",
14071
+ 'report update': "Report an Update",
14072
+ 'filter by visibility': "List only these meetings",
14073
+ 'go': "Go!"
14029
14074
  },
14030
14075
  "ru-RU": {
14031
14076
  "days_of_the_week" : ["", "Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"],
@@ -14079,7 +14124,10 @@ function CroutonLocalization(language) {
14079
14124
  'toggle fullscreen mode': 'Включить полноэкранный режим',
14080
14125
  'close': "Закрыть",
14081
14126
  'meeting page': "Страница собрания",
14082
- 'meeting details': "Подробности собрания"
14127
+ 'meeting details': "Подробности собрания",
14128
+ 'report update': "Report an Update",
14129
+ 'filter by visibility': "List only these meetings",
14130
+ 'go': "Go!"
14083
14131
  },
14084
14132
  "sv-SE": {
14085
14133
  "days_of_the_week" : ["", "Söndag", "Måndag", "Tisdag", "Onsdag", "Torsdag", "Fredag", "Lördag"],
@@ -14133,7 +14181,10 @@ function CroutonLocalization(language) {
14133
14181
  'close': "Close",
14134
14182
  "bmlt2ics": "Add to your calendar",
14135
14183
  'meeting page': "Meeting Page",
14136
- 'meeting details': "Meeting Details"
14184
+ 'meeting details': "Meeting Details",
14185
+ 'report update': "Report an Update",
14186
+ 'filter by visibility': "List only these meetings",
14187
+ 'go': "Go!"
14137
14188
  }
14138
14189
  };
14139
14190
  }
@@ -14504,7 +14555,31 @@ this["hbs_Crouton"]["templates"]["main"] = Handlebars.template({"1":function(con
14504
14555
  + ((stack1 = container.invokePartial(lookupProperty(partials,"meetingCountTemplate"),depth0,{"name":"meetingCountTemplate","data":data,"indent":" ","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14505
14556
  + "</div>\n";
14506
14557
  },"usePartial":true,"useData":true});
14507
- this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data,blockParams,depths) {
14558
+ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data) {
14559
+ var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14560
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14561
+ return parent[propertyName];
14562
+ }
14563
+ return undefined
14564
+ };
14565
+
14566
+ return " <button id=\"filterMeetings\" style=\"display: block;\">"
14567
+ + 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}}}))
14568
+ + "</button>\n <button id=\"showAsTable\" style=\"display: block;\">"
14569
+ + 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}}}))
14570
+ + "</button>\n";
14571
+ },"3":function(container,depth0,helpers,partials,data) {
14572
+ var lookupProperty = container.lookupProperty || function(parent, propertyName) {
14573
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14574
+ return parent[propertyName];
14575
+ }
14576
+ return undefined
14577
+ };
14578
+
14579
+ return " <button id=\"filterTable\" style=\"display: block;\"><span id=\"filteringByVisibility\"></span>"
14580
+ + 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}}}))
14581
+ + "</button>\n";
14582
+ },"5":function(container,depth0,helpers,partials,data,blockParams,depths) {
14508
14583
  var stack1, helper, alias1=container.escapeExpression, alias2=depth0 != null ? depth0 : (container.nullContext || {}), alias3=container.hooks.helperMissing, alias4="function", lookupProperty = container.lookupProperty || function(parent, propertyName) {
14509
14584
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14510
14585
  return parent[propertyName];
@@ -14515,19 +14590,19 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14515
14590
  return " <div class=\"bmlt-dropdown-container\">\n <select class=\"crouton-select filter-dropdown\" style=\"width:"
14516
14591
  + alias1(container.lambda(((stack1 = (depths[1] != null ? lookupProperty(depths[1],"config") : depths[1])) != null ? lookupProperty(stack1,"dropdown_width") : stack1), depth0))
14517
14592
  + ";\" data-placeholder=\""
14518
- + 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)))
14593
+ + 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)))
14519
14594
  + "\" data-pointer=\""
14520
- + 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)))
14595
+ + 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)))
14521
14596
  + "\" id="
14522
- + 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)))
14597
+ + 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)))
14523
14598
  + ">\n <option value=\"a-\">"
14524
- + 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}}}))
14599
+ + 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}}}))
14525
14600
  + " "
14526
- + 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)))
14601
+ + 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)))
14527
14602
  + "</option>\n"
14528
- + ((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 : "")
14603
+ + ((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 : "")
14529
14604
  + " </select>\n </div>\n";
14530
- },"2":function(container,depth0,helpers,partials,data,blockParams,depths) {
14605
+ },"6":function(container,depth0,helpers,partials,data,blockParams,depths) {
14531
14606
  var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14532
14607
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14533
14608
  return parent[propertyName];
@@ -14536,11 +14611,11 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14536
14611
  };
14537
14612
 
14538
14613
  return " <option value=\"a-"
14539
- + 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}}}))
14614
+ + 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}}}))
14540
14615
  + "\">"
14541
- + 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}}}))
14616
+ + 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}}}))
14542
14617
  + "</option>\n";
14543
- },"4":function(container,depth0,helpers,partials,data) {
14618
+ },"8":function(container,depth0,helpers,partials,data) {
14544
14619
  var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14545
14620
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14546
14621
  return parent[propertyName];
@@ -14565,29 +14640,29 @@ this["hbs_Crouton"]["templates"]["mapMenu"] = Handlebars.template({"1":function(
14565
14640
  + 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}}}))
14566
14641
  + "</button>\n <button id=\"nearbyMeetings\" style=\"display: block;\">"
14567
14642
  + 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}}}))
14568
- + "</button>\n <button id=\"filterMeetings\" style=\"display: block;\">"
14569
- + 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}}}))
14570
- + "</button>\n <button id=\"showAsTable\" style=\"display: block;\">"
14571
- + 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}}}))
14572
- + "</button>\n <button id=\"fullscreenMode\" style=\"display: block;\">"
14573
- + 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}}}))
14643
+ + "</button>\n"
14644
+ + ((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 : "")
14645
+ + " <button id=\"fullscreenMode\" style=\"display: block;\">"
14646
+ + 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}}}))
14574
14647
  + "</button>\n </div>\n<div id=\"filter_modal\" class=\"modal\" style=\"display: none;\">\n <div class=\"modal-content\">\n <span class=\"modal-title\">"
14575
- + 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}}}))
14648
+ + 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}}}))
14576
14649
  + "</span><span id=\"close_filter\" class=\"modal-close\">×</span>\n"
14577
- + ((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 : "")
14650
+ + ((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 : "")
14578
14651
  + " </div>\n</div>\n<div id=\"table_page\" class=\"bmlt-page "
14579
- + 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}}}))
14652
+ + 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}}}))
14580
14653
  + " hide\" >\n <div id=\"bmlt-maptable-header\"><span class=\"map-list-title\">"
14581
- + 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}}}))
14582
- + "</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 "
14583
- + 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}}}))
14654
+ + 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}}}))
14655
+ + "</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 "
14656
+ + 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}}}))
14584
14657
  + "'>\n"
14585
- + ((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 : "")
14658
+ + ((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 : "")
14586
14659
  + " </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\">"
14587
- + 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}}}))
14660
+ + 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}}}))
14588
14661
  + "</span><span id=\"close_search\" class=\"modal-close\">x</span>\n <p></p>\n <div class=\"modal-search\">\n "
14589
- + 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}}}))
14590
- + "\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";
14662
+ + 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}}}))
14663
+ + "\n <input id=\"goto-text\" type=\"text\">\n <button id=\"goto-button\" class=\"filter-button\">"
14664
+ + 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}}}))
14665
+ + "</button>\n </div>\n </div>\n</div>\n\n";
14591
14666
  },"usePartial":true,"useData":true,"useDepths":true});
14592
14667
  this["hbs_Crouton"]["templates"]["mapSearch"] = Handlebars.template({"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
14593
14668
  var alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
@@ -14665,6 +14740,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14665
14740
  + "</div>\n </td>\n <td class=\"bmlt-column3\">\n"
14666
14741
  + ((stack1 = container.invokePartial(lookupProperty(partials,"metaDataTemplate"),depth0,{"name":"metaDataTemplate","data":data,"indent":"\t\t\t","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14667
14742
  + ((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 : "")
14743
+ + ((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 : "")
14668
14744
  + ((stack1 = container.invokePartial(lookupProperty(partials,"offerIcsButton"),depth0,{"name":"offerIcsButton","data":data,"indent":"\t\t\t","helpers":helpers,"partials":partials,"decorators":container.decorators})) != null ? stack1 : "")
14669
14745
  + " </td>\n </tr>\n";
14670
14746
  },"2":function(container,depth0,helpers,partials,data) {
@@ -14712,7 +14788,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14712
14788
  return undefined
14713
14789
  };
14714
14790
 
14715
- return " <a href=\"javascript:void(0);\" id=\"share-button\" class=\"btn btn-primary btn-xs\" onclick='navigator.share({ text: JSON.stringify(\""
14791
+ return " <a href=\"javascript:void(0);\" id=\"share-button\" class=\"btn btn-primary btn-xs\" onclick='navigator.share({ text: JSON.stringify(\""
14716
14792
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_day") : depth0), depth0))
14717
14793
  + " "
14718
14794
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"start_time_formatted") : depth0), depth0))
@@ -14726,10 +14802,10 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14726
14802
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_address") : depth0), depth0))
14727
14803
  + " "
14728
14804
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"formatted_location_info") : depth0), depth0))
14729
- + ((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 : "")
14805
+ + ((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 : "")
14730
14806
  + "\"), url: \""
14731
- + ((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 : "")
14732
- + ((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 : "")
14807
+ + ((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 : "")
14808
+ + ((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 : "")
14733
14809
  + "\"})'><span class=\"glyphicon glyphicon-share\"></span> "
14734
14810
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"share_word") : depth0), depth0))
14735
14811
  + "</a>\n";
@@ -14751,8 +14827,8 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14751
14827
  return undefined
14752
14828
  };
14753
14829
 
14754
- 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 : "")
14755
- + ((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 : "");
14830
+ 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 : "")
14831
+ + ((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 : "");
14756
14832
  },"12":function(container,depth0,helpers,partials,data) {
14757
14833
  var lookupProperty = container.lookupProperty || function(parent, propertyName) {
14758
14834
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
@@ -14787,6 +14863,21 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14787
14863
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"latitude") : depth0), depth0))
14788
14864
  + ","
14789
14865
  + alias2(alias1((depth0 != null ? lookupProperty(depth0,"longitude") : depth0), depth0));
14866
+ },"18":function(container,depth0,helpers,partials,data) {
14867
+ var helper, alias1=container.escapeExpression, alias2=container.lambda, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14868
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
14869
+ return parent[propertyName];
14870
+ }
14871
+ return undefined
14872
+ };
14873
+
14874
+ return " <a href=\""
14875
+ + 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)))
14876
+ + "?meeting_id="
14877
+ + alias1(alias2((depth0 != null ? lookupProperty(depth0,"id_bigint") : depth0), depth0))
14878
+ + "\" id=\"share-button\" class=\"btn btn-primary btn-xs\" target=\"_blank\"><span class=\"glyphicon glyphicon-edit\"></span> "
14879
+ + alias1(alias2((depth0 != null ? lookupProperty(depth0,"report_update_word") : depth0), depth0))
14880
+ + "</a>\n";
14790
14881
  },"compiler":[8,">= 4.3.0"],"main":function(container,depth0,helpers,partials,data) {
14791
14882
  var stack1, lookupProperty = container.lookupProperty || function(parent, propertyName) {
14792
14883
  if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
@@ -14795,7 +14886,7 @@ this["hbs_Crouton"]["templates"]["meetings"] = Handlebars.template({"1":function
14795
14886
  return undefined
14796
14887
  };
14797
14888
 
14798
- 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 : "");
14889
+ 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 : "");
14799
14890
  },"usePartial":true,"useData":true});
14800
14891
  this["hbs_Crouton"]["templates"]["weekdays"] = Handlebars.template({"1":function(container,depth0,helpers,partials,data) {
14801
14892
  var stack1, helper, alias1=depth0 != null ? depth0 : (container.nullContext || {}), alias2=container.hooks.helperMissing, alias3=container.escapeExpression, lookupProperty = container.lookupProperty || function(parent, propertyName) {
@@ -16065,7 +16156,7 @@ function Crouton(config) {
16065
16156
  time_format: "h:mm a", // The format for time
16066
16157
  language: "en-US", // Default language translation, available translations listed here: https://github.com/bmlt-enabled/crouton/blob/master/croutonjs/src/js/crouton-localization.js
16067
16158
  has_tabs: true, // Shows the day tabs
16068
- filter_tabs: false, // Whether to show weekday tabs on filtering.
16159
+ filter_tabs: 0, // Whether to show weekday tabs on filtering.
16069
16160
  header: true, // Shows the dropdowns and buttons
16070
16161
  include_weekday_button: true, // Shows the weekday button
16071
16162
  int_include_unpublished: 0, // Includes unpublished meeting
@@ -16115,6 +16206,7 @@ function Crouton(config) {
16115
16206
  force_timeformat_in_querystring: true, // Set to false to shorten generated meeting detail query strings
16116
16207
  force_language_in_querystring: true, // Set to false to shorten generated meeting detail query strings
16117
16208
  theme: "jack", // Allows for setting pre-packaged themes. Choices are listed here: https://github.com/bmlt-enabled/crouton/blob/master/croutonjs/dist/templates/themes
16209
+ report_update_url: "", // URL to edit a meeting for BMLT-workflow plugin
16118
16210
  meeting_data_template: croutonDefaultTemplates.meeting_data_template,
16119
16211
  metadata_template: croutonDefaultTemplates.metadata_template,
16120
16212
  observer_template: croutonDefaultTemplates.observer_template,
@@ -16241,6 +16333,7 @@ function Crouton(config) {
16241
16333
  "parentServiceBodyType",
16242
16334
  "map_word",
16243
16335
  "share_word",
16336
+ "report_update_word",
16244
16337
  "show_qrcode",
16245
16338
  "formatted_day",
16246
16339
  "formatted_address",
@@ -16350,7 +16443,10 @@ function Crouton(config) {
16350
16443
  jQuery(id).removeClass("hide").addClass("show");
16351
16444
  };
16352
16445
 
16353
- self.showView = function (viewName) {
16446
+ self.showView = function (viewName, resetFilters=true) {
16447
+ if (resetFilters) {
16448
+ self.resetFilter();
16449
+ }
16354
16450
  if (viewName === "byday") {
16355
16451
  self.byDayView();
16356
16452
  } else if (viewName === "day" || viewName === "weekday") {
@@ -16363,7 +16459,6 @@ function Crouton(config) {
16363
16459
  };
16364
16460
 
16365
16461
  self.byDayView = function () {
16366
- self.resetFilter();
16367
16462
  self.lowlightButton(".filterButton");
16368
16463
  self.highlightButton("#day");
16369
16464
  jQuery('.bmlt-page').each(function (index) {
@@ -16375,7 +16470,6 @@ function Crouton(config) {
16375
16470
  };
16376
16471
 
16377
16472
  self.dayView = function () {
16378
- self.resetFilter();
16379
16473
  self.lowlightButton(".filterButton");
16380
16474
  self.highlightButton("#day");
16381
16475
  jQuery('.bmlt-page').each(function (index) {
@@ -16387,10 +16481,7 @@ function Crouton(config) {
16387
16481
  });
16388
16482
  };
16389
16483
 
16390
- self.filteredView = function (field, resetFilters=true) {
16391
- if (resetFilters) {
16392
- self.resetFilter();
16393
- }
16484
+ self.filteredView = function (field) {
16394
16485
  self.lowlightButton("#day");
16395
16486
  self.lowlightButton(".filterButton");
16396
16487
  self.highlightButton("#filterButton_" + field);
@@ -16433,8 +16524,6 @@ function Crouton(config) {
16433
16524
  });
16434
16525
  if (!filteringDropdown) {
16435
16526
  self.filtering = false;
16436
- if (croutonMap) croutonMap.fillMap();
16437
- return;
16438
16527
  }
16439
16528
  var showingNow = [];
16440
16529
  jQuery(".bmlt-data-row").not(".hide").each(function (index, value) {
@@ -16454,12 +16543,12 @@ function Crouton(config) {
16454
16543
  }
16455
16544
 
16456
16545
  if (!self.config.map_page || jQuery('#byfield_embeddedMapPage').hasClass('hide')) {
16457
- self.showFilteredMeetingsAsTable();
16546
+ self.showFilteredMeetingsAsTable(showingNow.length);
16458
16547
  }
16459
16548
  self.filtering = true;
16460
16549
  };
16461
- self.showFilteredMeetingsAsTable = function () {
16462
- if (self.config['filter_tabs']) {
16550
+ self.showFilteredMeetingsAsTable = function (showingNow) {
16551
+ if (self.config['filter_tabs'] && self.config['filter_tabs'] <= showingNow) {
16463
16552
  self.showPage("#nav-days");
16464
16553
  self.showPage("#tabs-content");
16465
16554
  } else {
@@ -16475,12 +16564,13 @@ function Crouton(config) {
16475
16564
  }
16476
16565
  }
16477
16566
  self.resetFilter = function () {
16567
+ croutonMap.filterVisible(false);
16478
16568
  if (self.config.map_page) {
16479
16569
  if (self.filtering) croutonMap.fillMap();
16480
16570
  jQuery('#displayTypeButton_tablePages').addClass('hide');
16481
16571
  jQuery('#filterButton_embeddedMapPage').removeClass('hide');
16482
16572
  } else if (self.config.show_map) croutonMap.fillMap();
16483
- self.filtering = false;
16573
+ self.filtering = false;
16484
16574
  self.updateFilters();
16485
16575
  self.updateMeetingCount();
16486
16576
  jQuery(".filter-dropdown").val(null).trigger("change");
@@ -16552,6 +16642,7 @@ function Crouton(config) {
16552
16642
  meetingCount = showingNow.length;
16553
16643
  addLive = function(id) {return id+"-live"};
16554
16644
  }
16645
+ self.showingNowCount = meetingCount;
16555
16646
  jQuery(addLive('#bmlt_tabs_meeting_count')).text(meetingCount);
16556
16647
  jQuery(addLive('#bmlt_tabs_group_count')).each(function(){
16557
16648
  var filteredMeetings = self.meetingData;
@@ -16664,7 +16755,7 @@ function Crouton(config) {
16664
16755
  templateString = element.firstChild.textContent;
16665
16756
  }
16666
16757
  var handlebarResult;
16667
- try {
16758
+ try {
16668
16759
  var template = crouton_Handlebars.compile(templateString);
16669
16760
  handlebarResult = template(meetingDetailsData);
16670
16761
  } catch (e) {
@@ -16761,7 +16852,7 @@ function Crouton(config) {
16761
16852
  };
16762
16853
  self.toFarsinNumber = function( n ) {
16763
16854
  const farsiDigits = ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹'];
16764
-
16855
+
16765
16856
  return n.replace(/\d/g, x => farsiDigits[x]);
16766
16857
  }
16767
16858
  self.enrichMeetings = function (meetingData) {
@@ -16797,7 +16888,7 @@ function Crouton(config) {
16797
16888
  .format(self.config['time_format']);
16798
16889
  if (self.config.language === 'fa-IR') {
16799
16890
  meetingData[m]['start_time_formatted'] = self.toFarsinNumber(meetingData[m]['start_time_formatted']);
16800
- meetingData[m]['end_time_formatted'] = self.toFarsinNumber(meetingData[m]['end_time_formatted']);
16891
+ meetingData[m]['end_time_formatted'] = self.toFarsinNumber(meetingData[m]['end_time_formatted']);
16801
16892
  }
16802
16893
 
16803
16894
  // back to bmlt day
@@ -16842,6 +16933,7 @@ function Crouton(config) {
16842
16933
  : "";
16843
16934
  meetingData[m]['map_word'] = self.localization.getWord('map').toUpperCase();
16844
16935
  meetingData[m]['share_word'] = self.localization.getWord('share').toUpperCase();
16936
+ meetingData[m]['report_update_word'] = self.localization.getWord('report update');
16845
16937
  meetingData[m]['show_qrcode'] = self.config['show_qrcode'];
16846
16938
  for (var k in meetingData[m]) {
16847
16939
  if (meetingData[m].hasOwnProperty(k) && typeof meetingData[m][k] === 'string') {
@@ -16878,9 +16970,9 @@ function Crouton(config) {
16878
16970
  }
16879
16971
  meetingData[m]['meeting_details_url'] += queryStringChar + ('meeting-id=' + meetingData[m]['id_bigint']
16880
16972
  + '&language=' + self.config.language
16881
- + '&time_format=' + encodeURIComponent(self.config.time_format)
16973
+ + '&time_format=' + encodeURIComponent(self.config.time_format)
16882
16974
  + (self.config.force_rootserver_in_querystring ? '&root_server=' + encodeURIComponent(self.config.root_server) : '')
16883
- );
16975
+ );
16884
16976
  }
16885
16977
 
16886
16978
  meetings.push(meetingData[m])
@@ -17040,7 +17132,7 @@ Crouton.prototype.doHandlebars = function() {
17040
17132
  Crouton.prototype.meetingModal = function(meetingId) {
17041
17133
  let self = this;
17042
17134
  const tabs = document.getElementById('bmlt-tabs');
17043
-
17135
+
17044
17136
  let el = document.createElement('bmlt-handlebar');
17045
17137
  tabs.appendChild(el);
17046
17138
  let span = document.createElement('span');
@@ -17066,7 +17158,7 @@ Crouton.prototype.meetingModal = function(meetingId) {
17066
17158
  let doSwipe = function(swipedir) {
17067
17159
  switch(swipedir) {
17068
17160
  case 'left':
17069
- index = index+1;
17161
+ index = index+1;
17070
17162
  break;
17071
17163
  case 'right':
17072
17164
  index = index-1;
@@ -17253,68 +17345,68 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17253
17345
  self.dayNamesSequenced = self.config.day_sequence.map((d)=>self.localization.getDayOfTheWeekWord(d));
17254
17346
  self.dropdownData = [];
17255
17347
  if (self.config.has_days) self.dropdownData.push(
17256
- {placeholder: self.localization.getWord('weekday'), pointer: 'weekdays', elementId: "filter-dropdown-weekdays",
17257
- uniqueData: (meetings) => sortListByList(getUniqueValuesOfKey(meetings, "formatted_day"), self.dayNamesSequenced),
17348
+ {placeholder: self.localization.getWord('weekday'), pointer: 'weekdays', elementId: "filter-dropdown-weekdays",
17349
+ uniqueData: (meetings) => sortListByList(getUniqueValuesOfKey(meetings, "formatted_day"), self.dayNamesSequenced),
17258
17350
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17259
17351
  if (self.config.has_states) self.dropdownData.push(
17260
- {placeholder: self.localization.getWord('states'), pointer: 'States', elementId: "filter-dropdown-states",
17261
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_province').sort(),
17352
+ {placeholder: self.localization.getWord('states'), pointer: 'States', elementId: "filter-dropdown-states",
17353
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_province').sort(),
17262
17354
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17263
17355
  if (self.config.has_sub_province) self.dropdownData.push(
17264
- {placeholder: self.localization.getWord('counties'), pointer: 'Counties', elementId: "filter-dropdown-sub_province",
17265
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_sub_province').sort(),
17266
- objectPointer: convertToPunyCode, optionName: (s)=>s});
17356
+ {placeholder: self.localization.getWord('counties'), pointer: 'Counties', elementId: "filter-dropdown-sub_province",
17357
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_sub_province').sort(),
17358
+ objectPointer: convertToPunyCode, optionName: (s)=>s});
17267
17359
  if (self.config.has_cities) self.dropdownData.push(
17268
- {placeholder: self.localization.getWord('cities'), pointer: 'Cities', elementId: "filter-dropdown-cities",
17269
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_municipality').sort(),
17360
+ {placeholder: self.localization.getWord('cities'), pointer: 'Cities', elementId: "filter-dropdown-cities",
17361
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_municipality').sort(),
17270
17362
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17271
17363
  if (self.config.has_neighborhoods) self.dropdownData.push(
17272
- {placeholder: self.localization.getWord('neighborhood'), pointer: 'Neighborhoods', elementId: "filter-dropdown-neighborhoods",
17273
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_neighborhood').sort(),
17274
- objectPointer: convertToPunyCode, optionName: (s)=>s});
17364
+ {placeholder: self.localization.getWord('neighborhood'), pointer: 'Neighborhoods', elementId: "filter-dropdown-neighborhoods",
17365
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_neighborhood').sort(),
17366
+ objectPointer: convertToPunyCode, optionName: (s)=>s});
17275
17367
  if (self.config.has_zip_codes) self.dropdownData.push(
17276
- {placeholder: self.localization.getWord('postal_codes'), pointer: 'Zips', elementId: "filter-dropdown-zipcodes",
17277
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_postal_code_1').sort(),
17368
+ {placeholder: self.localization.getWord('postal_codes'), pointer: 'Zips', elementId: "filter-dropdown-zipcodes",
17369
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_postal_code_1').sort(),
17278
17370
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17279
17371
  if (self.config.has_locations) self.dropdownData.push(
17280
- {placeholder: self.localization.getWord('locations'), pointer: 'Locations', elementId: "filter-dropdown-locations",
17281
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_text').map((s)=>s.replace(/(<([^>]+)>)/gi, "")).sort(),
17372
+ {placeholder: self.localization.getWord('locations'), pointer: 'Locations', elementId: "filter-dropdown-locations",
17373
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'location_text').map((s)=>s.replace(/(<([^>]+)>)/gi, "")).sort(),
17282
17374
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17283
17375
  if (self.config.has_regions) self.dropdownData.push(
17284
- {placeholder: self.localization.getWord('regions'), pointer: 'Regions', elementId: "filter-dropdown-regions",
17285
- uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'parentServiceBodyId').includes(sb.id)).sortByKey('name'),
17376
+ {placeholder: self.localization.getWord('regions'), pointer: 'Regions', elementId: "filter-dropdown-regions",
17377
+ uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'parentServiceBodyId').includes(sb.id)).sortByKey('name'),
17286
17378
  objectPointer: (a) => convertToPunyCode(a.name), optionName: (a)=>a.name});
17287
17379
  if (self.config.has_areas) self.dropdownData.push(
17288
- {placeholder: self.localization.getWord('areas'), pointer: 'Areas', elementId: "filter-dropdown-areas",
17289
- uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'service_body_bigint').includes(sb.id)).sortByKey('name'),
17380
+ {placeholder: self.localization.getWord('areas'), pointer: 'Areas', elementId: "filter-dropdown-areas",
17381
+ uniqueData: (meetings) => self.all_service_bodies.filter((sb)=>getUniqueValuesOfKey(meetings,'service_body_bigint').includes(sb.id)).sortByKey('name'),
17290
17382
  objectPointer: (a) => a.id, optionName: (a)=>a.name});
17291
17383
  if (self.config.has_groups) self.dropdownData.push(
17292
- {placeholder: self.localization.getWord('groups'), pointer: 'Groups', elementId: "filter-dropdown-groups",
17293
- uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'meeting_name').sort(),
17384
+ {placeholder: self.localization.getWord('groups'), pointer: 'Groups', elementId: "filter-dropdown-groups",
17385
+ uniqueData: (meetings) => getUniqueValuesOfKey(meetings, 'meeting_name').sort(),
17294
17386
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17295
17387
  if (self.config.has_venues) self.dropdownData.push(
17296
- {placeholder: self.localization.getWord('venue_types'), pointer: 'Venues', elementId: "filter-dropdown-venues",
17297
- uniqueData: (meetings) => self.getUsedVenueType(meetings),
17388
+ {placeholder: self.localization.getWord('venue_types'), pointer: 'Venues', elementId: "filter-dropdown-venues",
17389
+ uniqueData: (meetings) => self.getUsedVenueType(meetings),
17298
17390
  objectPointer: convertToPunyCode, optionName: (s)=>s});
17299
17391
  if (self.config.has_formats) self.dropdownData.push(
17300
- {placeholder: self.localization.getWord('formats'), pointer: 'Formats', elementId: "filter-dropdown-formats",
17301
- uniqueData: (meetings) => getUniqueFormats(meetings),
17392
+ {placeholder: self.localization.getWord('formats'), pointer: 'Formats', elementId: "filter-dropdown-formats",
17393
+ uniqueData: (meetings) => getUniqueFormats(meetings),
17302
17394
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17303
17395
  if (self.config.has_languages) self.dropdownData.push(
17304
- {placeholder: self.localization.getWord('languages'), pointer: 'Formats', elementId: "filter-dropdown-languages",
17305
- uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'LANG').filter((f)=>f.key!==self.config.native_lang),
17396
+ {placeholder: self.localization.getWord('languages'), pointer: 'Formats', elementId: "filter-dropdown-languages",
17397
+ uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'LANG').filter((f)=>f.key!==self.config.native_lang),
17306
17398
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17307
17399
  if (self.config.has_common_needs) self.dropdownData.push(
17308
- {placeholder: self.localization.getWord('common_needs'), pointer: 'Formats', elementId: "filter-dropdown-commonneeds",
17309
- uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'FC3'),
17400
+ {placeholder: self.localization.getWord('common_needs'), pointer: 'Formats', elementId: "filter-dropdown-commonneeds",
17401
+ uniqueData: (meetings) => getUniqueFormatsOfType(meetings, 'FC3'),
17310
17402
  objectPointer: (f) => convertToPunyCode(f.name), optionName: (f)=>f.name});
17311
- if (doMeetingMap) self.dropdownData.push(
17312
- {placeholder: '', pointer: 'visible', elementId: "filter-dropdown-visibile",
17313
- uniqueData: (meetings) => self.getUsedVisibility(meetings),
17403
+ if (doMeetingMap || self.config.show_map || self.config.map_page) self.dropdownData.push(
17404
+ {placeholder: '', pointer: 'visible', elementId: "filter-dropdown-visibile",
17405
+ uniqueData: (meetings) => self.getUsedVisibility(meetings),
17314
17406
  objectPointer: (s)=>s.value, optionName: (s)=>s.name});
17315
17407
  if (doMeetingMap) self.dropdownData.push(
17316
- {placeholder: '', pointer: 'next24', elementId: "filter-dropdown-next24",
17317
- uniqueData: (meetings) => self.getUsedNext24(meetings),
17408
+ {placeholder: '', pointer: 'next24', elementId: "filter-dropdown-next24",
17409
+ uniqueData: (meetings) => self.getUsedNext24(meetings),
17318
17410
  objectPointer: (s)=>s.value, optionName: (s)=>s.name});
17319
17411
  let renderer = doMeetingMap ? self.renderStandaloneMap : self.renderView;
17320
17412
  renderer("#" + self.config['placeholder_id'], {
@@ -17396,11 +17488,12 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17396
17488
  });
17397
17489
  jQuery('#displayTypeButton_tablePages').on('click', function (e) {
17398
17490
  self.hidePage('#byfield_embeddedMapPage');
17399
- self.showFilteredMeetingsAsTable();
17491
+ const knt = self.showingNowCount ? self.showingNowCount : self.meetingData.length;
17492
+ self.showFilteredMeetingsAsTable(knt);
17400
17493
  });
17401
17494
  jQuery('#filterButton_embeddedMapPage').on('click', function (e) {
17402
17495
  self.filteredView(e.target.attributes['data-field'].value, false);
17403
- croutonMap.showMap();
17496
+ croutonMap.showMap(false,false);
17404
17497
  });
17405
17498
  jQuery('.custom-ul').on('click', 'a', function (event) {
17406
17499
  jQuery('.bmlt-page').each(function (index) {
@@ -17425,7 +17518,7 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17425
17518
 
17426
17519
  self.showPage(".bmlt-header");
17427
17520
  self.showPage(".bmlt-tabs");
17428
- self.showView(self.config['view_by']);
17521
+ self.showView(self.config['view_by'], false);
17429
17522
 
17430
17523
  if (self.config['default_filter_dropdown'] !== "") {
17431
17524
  var filter = self.config['default_filter_dropdown'].toLowerCase().split("=");
@@ -17455,6 +17548,11 @@ Crouton.prototype.render = function(doMeetingMap = false) {
17455
17548
  }, !doMeetingMap);
17456
17549
  });
17457
17550
  });
17551
+ Crouton.prototype.forceShowMap = function() {
17552
+ if (self.config.map_page && jQuery('#byfield_embeddedMapPage').hasClass('hide')) {
17553
+ jQuery('#filterButton_embeddedMapPage').click();
17554
+ }
17555
+ }
17458
17556
  };
17459
17557
 
17460
17558
 
@@ -17522,10 +17620,19 @@ crouton_Handlebars.registerHelper('formatDataPointer', function(str) {
17522
17620
  crouton_Handlebars.registerHelper('call', function(fn, str) {
17523
17621
  return fn(str);
17524
17622
  });
17623
+
17525
17624
  crouton_Handlebars.registerHelper('canShare', function(data, options) {
17526
17625
  return navigator.share ? getTrueResult(options, this) : getFalseResult(options, this);
17527
17626
  });
17528
17627
 
17628
+ crouton_Handlebars.registerHelper('reportUpdateEnabled', function(data, options) {
17629
+ return crouton.config.report_update_url !== "" ? getTrueResult(options, this) : getFalseResult(options, this)
17630
+ });
17631
+
17632
+ crouton_Handlebars.registerHelper('reportUpdateUrl', function() {
17633
+ return crouton.config.report_update_url;
17634
+ });
17635
+
17529
17636
  /**
17530
17637
  * @deprecated Since version 3.12.2, will be removed in a future version.
17531
17638
  */
@@ -17689,7 +17796,7 @@ crouton_Handlebars.registerHelper('hasBMLT2ics', function() {
17689
17796
  return crouton.config['bmlt2ics'].length>0;});
17690
17797
  crouton_Handlebars.registerHelper('BMLT2ics', function() {return crouton.config['bmlt2ics'];});
17691
17798
  crouton_Handlebars.registerPartial('icsButton',
17692
- '<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>');
17799
+ '<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>');
17693
17800
  crouton_Handlebars.registerPartial('offerIcsButton',
17694
17801
  "{{#if (hasBMLT2ics)}}{{> icsButton}}<br/>{{/if}}");
17695
17802
  function convertToPunyCode(str) {
@@ -17744,6 +17851,15 @@ Crouton.prototype.renderMeetingCount = function() {
17744
17851
  self.updateMeetingCount()
17745
17852
  });
17746
17853
  }
17854
+ Crouton.prototype.simulateFilterDropdown = function() {
17855
+ self = this;
17856
+ jQuery('.bmlt-page:not(#byfield_embeddedMapPage)').each(function () {
17857
+ self.hidePage(this);
17858
+ });
17859
+ self.filteredPage();
17860
+ if (!self.filtering && !self.config.map_page)
17861
+ self.showView(self.config['view_by'] === 'byday' ? 'byday' : 'day', false);
17862
+ }
17747
17863
  Crouton.prototype.getAdjustedDateTime = function(meeting_day, meeting_time, meeting_time_zone) {
17748
17864
  var timeZoneAware = this.config['auto_tz_adjust'] === true || this.config['auto_tz_adjust'] === "true";
17749
17865
  var meeting_date_time_obj;
@@ -17869,7 +17985,7 @@ Array.prototype.sortByKey = function (key) {
17869
17985
  return this;
17870
17986
  };
17871
17987
  function swipedetect(el, callback){
17872
-
17988
+
17873
17989
  var touchsurface = el,
17874
17990
  swipedir,
17875
17991
  startX,
@@ -17879,15 +17995,15 @@ function swipedetect(el, callback){
17879
17995
  threshold = 150, //required min distance traveled to be considered swipe
17880
17996
  restraint = 100, // maximum distance allowed at the same time in perpendicular direction
17881
17997
  handleswipe = callback || function(swipedir){}
17882
-
17998
+
17883
17999
  touchsurface.addEventListener('touchstart', function(e){
17884
18000
  var touchobj = e.changedTouches[0]
17885
18001
  swipedir = 'none'
17886
18002
  startX = touchobj.pageX
17887
18003
  startY = touchobj.pageY
17888
18004
  }, false)
17889
-
17890
-
18005
+
18006
+
17891
18007
  touchsurface.addEventListener('touchend', function(e){
17892
18008
  if (!e.cancelable) return;
17893
18009
  var touchobj = e.changedTouches[0]
@@ -17965,14 +18081,18 @@ function MeetingMap(inConfig) {
17965
18081
  }
17966
18082
  if (config.map_search.zoom) {
17967
18083
  config.zoom = config.map_search.zoom;
17968
- }
18084
+ }
17969
18085
  }
17970
18086
  let loc = {latitude: config.lat, longitude: config.lng, zoom: config.zoom};
17971
- if (handlebarMapOptions) loc = {latitude: handlebarMapOptions.lat, longitude: handlebarMapOptions.lng};
18087
+ if (handlebarMapOptions) loc = {latitude: handlebarMapOptions.lat, longitude: handlebarMapOptions.lng};
17972
18088
  if (gDelegate.createMap(inDiv, loc)) {
17973
18089
  gDelegate.addListener('zoomend', function (ev) {
17974
18090
  if (shouldRedrawMarkers() && gAllMeetings) {
17975
- searchResponseCallback();
18091
+ if (listOnlyVisible) {
18092
+ const oldValue = filterVisible(false);
18093
+ searchResponseCallback();
18094
+ filterVisible(oldValue);
18095
+ } else searchResponseCallback();
17976
18096
  }
17977
18097
  }, false);
17978
18098
  if (config.map_search) {
@@ -17982,7 +18102,11 @@ function MeetingMap(inConfig) {
17982
18102
  menuContext.imageDir = config.BMLTPlugin_images;
17983
18103
  gDelegate.addControl(createNext24Toggle(), 'topleft');
17984
18104
  gDelegate.addControl(createMenuButton(menuContext), 'topright', cb);
17985
- };
18105
+ }
18106
+ else {
18107
+ menuContext = {imageDir: config.BMLTPlugin_images, config: config, dropdownData:false};
18108
+ gDelegate.addControl(createMenuButton(menuContext), 'topright', cb);
18109
+ }
17986
18110
  }
17987
18111
  };
17988
18112
  };
@@ -18051,24 +18175,31 @@ function MeetingMap(inConfig) {
18051
18175
  controlDiv.innerHTML = template(menuContext);
18052
18176
  controlDiv.querySelector("#nearbyMeetings").addEventListener('click', function (e) {
18053
18177
  retrieveGeolocation().then(position => {
18054
- gDelegate.setViewToPosition(position, filterMeetingsAndBounds);
18178
+ filterVisible(false);
18179
+ gDelegate.setViewToPosition(position, filterMeetingsAndBounds, filterVisible);
18055
18180
  }).catch(error => {
18056
18181
  console.error(error.message);
18057
- $('.geo').removeClass("hide").addClass("show").html(`<p>${error.message}</p>`);
18182
+ jQuery('.geo').removeClass("hide").addClass("show").html(`<p>${error.message}</p>`);
18058
18183
  });
18059
18184
  dropdownContent = document.getElementById("map-menu-dropdown").style.display = "none";
18060
18185
  });
18061
18186
 
18062
18187
  controlDiv.querySelector("#lookupLocation").addEventListener('click', showGeocodingDialog);
18063
- controlDiv.querySelector("#filterMeetings").addEventListener('click', showFilterDialog);
18064
- controlDiv.querySelector("#showAsTable").addEventListener('click', showListView);
18188
+ if (menuContext && menuContext.dropdownData) {
18189
+ controlDiv.querySelector("#filterMeetings").addEventListener('click', showFilterDialog);
18190
+ controlDiv.querySelector("#showAsTable").addEventListener('click', showListView);
18191
+ } else {
18192
+ controlDiv.querySelector("#filterTable").addEventListener('click', toggleVisible);
18193
+ }
18065
18194
  controlDiv.querySelector("#fullscreenMode").addEventListener('click', toggleFullscreen);
18066
18195
  controlDiv.querySelector("#map-menu-button").addEventListener('click', function (e) {
18067
18196
  let dropdownContent = document.getElementById("map-menu-dropdown");
18068
- if (dropdownContent.style.display == "inline-block")
18197
+ if (dropdownContent.style.display == "inline-block") {
18069
18198
  dropdownContent.style.display = "none";
18070
- else
18199
+ else {
18200
+ jQuery("#filteringByVisibility").html(listOnlyVisible?'&#10004;':'');
18071
18201
  dropdownContent.style.display = "inline-block";
18202
+ }
18072
18203
  });
18073
18204
  [...controlDiv.getElementsByClassName('modal-close')].forEach((elem)=>elem.addEventListener('click', (e)=>closeModalWindow(e.target)));
18074
18205
  controlDiv.querySelector("#close_table").addEventListener('click', hideListView);
@@ -18115,7 +18246,7 @@ function MeetingMap(inConfig) {
18115
18246
  function filterFromCrouton(filter) {
18116
18247
  gMeetingIdsFromCrouton = filter;
18117
18248
  if (gAllMeetings)
18118
- searchResponseCallback(fitDuringFilter);
18249
+ searchResponseCallback(fitDuringFilter && !listOnlyVisible);
18119
18250
  };
18120
18251
  function nearMeSearch() {
18121
18252
  retrieveGeolocation().then(position => {
@@ -18128,7 +18259,7 @@ function MeetingMap(inConfig) {
18128
18259
  });
18129
18260
  };
18130
18261
  function clickSearch(e) {
18131
- croutonMap.showMap();
18262
+ croutonMap.showMap(false,false);
18132
18263
  gDelegate.clickSearch(e, function(lat,lng) {
18133
18264
  showThrobber();
18134
18265
  crouton.searchByCoordinates(lat, lng, config.map_search.width);
@@ -18193,20 +18324,23 @@ function MeetingMap(inConfig) {
18193
18324
  }
18194
18325
  searchResponseCallback();
18195
18326
  hideThrobber();
18327
+ if (config.filter_visible || config.centerMe || config.goto) crouton.forceShowMap();
18196
18328
  if (config.centerMe) {
18197
18329
  if (navigator.geolocation) {
18198
18330
  navigator.geolocation.getCurrentPosition(
18199
18331
  function (position) {
18200
18332
  coords = {latitude: position.coords.latitude, longitude: position.coords.longitude};
18201
- gDelegate.setViewToPosition(coords, filterMeetingsAndBounds);
18333
+ filterVisible(false);
18334
+ gDelegate.setViewToPosition(coords, filterMeetingsAndBounds, filterVisible);
18202
18335
  },
18203
18336
  showGeocodingDialog
18204
18337
  );
18205
18338
  } else if (fitAll) {
18206
18339
  showGeocodingDialog();
18207
18340
  }
18208
- } else if (config.goto) {
18209
- gDelegate.callGeocoder(config.goto, filterMeetingsAndBounds);
18341
+ } else {
18342
+ if (!config.centerMe && !config.goto) gDelegate.afterInit(()=>filterVisible(config.filter_visible));
18343
+ if (config.goto) gDelegate.callGeocoder(config.goto, resetVisibleThenFilterMeetingsAndBounds);
18210
18344
  }
18211
18345
  }
18212
18346
  function createCityHash(allMeetings) {
@@ -18298,14 +18432,20 @@ function MeetingMap(inConfig) {
18298
18432
  jQuery("#table_page").addClass("hide");
18299
18433
  jQuery("#bmlt-map").css("display", "block");
18300
18434
  }
18435
+ function resetVisibleThenFilterMeetingsAndBounds(bounds) {
18436
+ filterVisible(false);
18437
+ const ret = filterMeetingsAndBounds(bounds);
18438
+ filterVisible(true);
18439
+ return ret;
18440
+ }
18301
18441
  function lookupLocation(fullscreen) {
18302
18442
  if (document.getElementById('goto-text').value != '') {
18303
18443
  if (fullscreen) {
18304
18444
  gDelegate.addListener('idle', function () {
18305
- gDelegate.callGeocoder(document.getElementById('goto-text').value, filterMeetingsAndBounds);
18445
+ gDelegate.callGeocoder(document.getElementById('goto-text').value, resetVisibleThenFilterMeetingsAndBounds);
18306
18446
  }, true);
18307
18447
  } else {
18308
- gDelegate.callGeocoder(document.getElementById('goto-text').value, filterMeetingsAndBounds);
18448
+ gDelegate.callGeocoder(document.getElementById('goto-text').value, resetVisibleThenFilterMeetingsAndBounds);
18309
18449
  }
18310
18450
  } else {
18311
18451
  alert("");
@@ -18357,12 +18497,12 @@ function MeetingMap(inConfig) {
18357
18497
  ? filtered.map((m)=>[m])
18358
18498
  : mapOverlappingMarkersInCity(filtered);
18359
18499
 
18360
- if (useMarkerCluster()) gDelegate.createClusterLayer();
18500
+ if (useMarkerCluster()) gDelegate.createClusterLayer();
18361
18501
  // Draw the meeting markers.
18362
18502
  overlap_map.forEach(function (marker) {
18363
18503
  createMapMarker(marker);
18364
18504
  });
18365
- gDelegate.addClusterLayer();
18505
+ gDelegate.addClusterLayer();
18366
18506
  if (expand) {
18367
18507
  const lat_lngs = filtered.reduce(function(a,m) {a.push([m.latitude, m.longitude]); return a;},[]);
18368
18508
  gDelegate.fitBounds(lat_lngs);
@@ -18467,20 +18607,38 @@ function MeetingMap(inConfig) {
18467
18607
  (meetings.length > 1),
18468
18608
  marker_html, null ,meetings.map((m)=>parseInt(m.id_bigint)));
18469
18609
  };
18610
+ var listOnlyVisible = false;
18611
+ var listener = null;
18470
18612
  function filterBounds(bounds) {
18471
18613
  return gAllMeetings.filter((meeting) => gDelegate.contains(bounds, meeting.latitude, meeting.longitude));
18472
18614
  }
18615
+ function showAllMeetings() {
18616
+ filterVisible(false);
18617
+ gDelegate.addListener('dragend', filterVisible, true);
18618
+ }
18473
18619
  function filterVisible(on=true) {
18620
+ if (on==listOnlyVisible) return on;
18474
18621
  let mtgs = on ? filterBounds(gDelegate.getBounds()) : gAllMeetings;
18475
18622
  let visible = mtgs.map((m)=>m.id_bigint);
18476
18623
  jQuery(".bmlt-data-row").each(function(index,row) {
18477
18624
  row.dataset.visible = (visible.includes(row.id.split('-').pop())) ? '1' : '0';
18478
18625
  });
18479
18626
  jQuery("#byday").removeClass('hide');
18480
- jQuery("#filter-dropdown-visibile").val('a-1');
18627
+ jQuery("#filter-dropdown-visibile").val(on?'a-1':'');
18481
18628
  fitDuringFilter = false;
18482
- crouton.doFilters();
18629
+ crouton.simulateFilterDropdown();
18483
18630
  fitDuringFilter = true;
18631
+ jQuery("#filteringByVisibility").html(on?'&#10004;':'');
18632
+ listOnlyVisible = on;
18633
+ if (on) listener = gDelegate.addListener('dragstart', showAllMeetings, true);
18634
+ else if (listener) {
18635
+ gDelegate.removeListener(listener);
18636
+ listener = null;
18637
+ }
18638
+ return !on;
18639
+ }
18640
+ function toggleVisible() {
18641
+ filterVisible(!listOnlyVisible);
18484
18642
  }
18485
18643
  function filterBounds(bounds) {
18486
18644
  var ret = gAllMeetings.filter((meeting) =>
@@ -18559,14 +18717,14 @@ function MeetingMap(inConfig) {
18559
18717
  }
18560
18718
  gDelegate.invalidateSize();
18561
18719
  }
18562
- function showMap(isModal=false) {
18720
+ function showMap(isModal=false, fitBounds=true) {
18563
18721
  if (isModal && gModalDelegate) {
18564
18722
  gModalDelegate.invalidateSize();
18565
18723
  return;
18566
18724
  }
18567
18725
  gDelegate.invalidateSize();
18568
18726
  if (!gAllMeetings) return;
18569
- gDelegate.fitBounds(
18727
+ if (fitBounds) gDelegate.fitBounds(
18570
18728
  ((gMeetingIdsFromCrouton) ? gAllMeetings.filter((m) => gMeetingIdsFromCrouton.includes(m.id_bigint)) : gAllMeetings)
18571
18729
  .reduce(function(a,m) {a.push([m.latitude, m.longitude]); return a;},[])
18572
18730
  );
@@ -18584,6 +18742,7 @@ function MeetingMap(inConfig) {
18584
18742
  this.openModalWindow = openModalWindow;
18585
18743
  this.closeModalWindow = closeModalWindow;
18586
18744
  this.loadPopupMap = loadPopupMap;
18745
+ this.filterVisible = filterVisible;
18587
18746
  };
18588
18747
  MeetingMap.prototype.initialize = null;
18589
18748
  MeetingMap.prototype.showMap = null;
@@ -18595,6 +18754,7 @@ MeetingMap.prototype.refreshMeetings = null;
18595
18754
  MeetingMap.prototype.openModalWindow = null;
18596
18755
  MeetingMap.prototype.closeModalWindow = null;
18597
18756
  MeetingMap.prototype.loadPopupMap = null;
18757
+ MeetingMap.prototype.filterVisible = null;
18598
18758
 
18599
18759
  function MapDelegate(config) {
18600
18760
  var g_icon_image_single = L.icon({
@@ -18663,25 +18823,33 @@ function MapDelegate(config) {
18663
18823
  if (ev=='idle') {
18664
18824
  ev = 'moveend';
18665
18825
  }
18826
+ if (ev=='dragstart') {
18827
+ ev = 'movestart';
18828
+ }
18829
+ if (ev=='dragend') {
18830
+ ev = 'moveend';
18831
+ }
18666
18832
  if (once) {
18667
18833
  gMainMap.once(ev, f);
18668
18834
  } else {
18669
18835
  gMainMap.on(ev, f);
18670
18836
  }
18837
+ return {'event': ev, 'f': f};
18671
18838
  }
18839
+ function removeListener(o) {
18840
+ gMainMap.off(o.event, o.f);
18841
+ }
18672
18842
  function setViewToPosition(position, filterMeetings, extra=null) {
18673
18843
  var latlng = L.latLng(position.latitude, position.longitude);
18674
18844
  gMainMap.flyTo(latlng);
18675
- gMainMap.on('moveend', function(ev) {
18676
- gMainMap.off('moveend');
18845
+ gMainMap.once('moveend', function(ev) {
18677
18846
  newZoom = getZoomAdjust(false, filterMeetings);
18678
18847
  if (gMainMap.getZoom() != newZoom) {
18679
18848
  gMainMap.setZoom(newZoom);
18680
- gMainMap.on('zoomend',function() {
18681
- gMainMap.off('zoomend');
18849
+ gMainMap.once('zoomend',function() {
18682
18850
  gMainMap.invalidateSize();
18683
18851
  if (extra) {
18684
- gMainMap.on('load moveend', extra);
18852
+ gMainMap.once('load moveend', extra);
18685
18853
  }
18686
18854
  });
18687
18855
  } else {
@@ -18735,7 +18903,7 @@ function MapDelegate(config) {
18735
18903
  if (knt == 0) {
18736
18904
  ret -= 1;
18737
18905
  }
18738
- }
18906
+ }
18739
18907
  return ret;
18740
18908
  }
18741
18909
  function setZoom(filterMeetings, force=0) {
@@ -18748,7 +18916,7 @@ function MapDelegate(config) {
18748
18916
  return gMainMap.latLngToLayerPoint(L.latLng(lat,lng));
18749
18917
  }
18750
18918
  function createMarker ( inCoords, ///< The long/lat for the marker.
18751
- multi, ///< The URI for the main icon
18919
+ multi, ///< Flag if marker has multiple meetings
18752
18920
  in_html, ///< The info window HTML
18753
18921
  in_title, ///< The tooltip
18754
18922
  in_ids
@@ -18763,10 +18931,10 @@ function MapDelegate(config) {
18763
18931
  if (typeof crouton != 'undefined') crouton.dayTabFromId(id);
18764
18932
  }
18765
18933
  var marker = L.marker(inCoords, {icon: in_main_icon, title: in_title}).bindPopup(in_html);
18934
+ marker.isMulti = multi;
18766
18935
  if (gClusterLayer) gClusterLayer.addLayer(marker);
18767
18936
  else marker.addTo(gMainMap);
18768
18937
  marker.on('popupopen', function(e) {
18769
- marker.oldIcon = marker.getIcon();
18770
18938
  marker.setIcon(g_icon_image_selected);
18771
18939
  gMainMap.on('zoomstart',function(){
18772
18940
  marker.closePopup();
@@ -18779,7 +18947,7 @@ function MapDelegate(config) {
18779
18947
  });
18780
18948
  });
18781
18949
  marker.on('popupclose', function(e) {
18782
- marker.setIcon(marker.oldIcon);
18950
+ marker.setIcon(marker.isMulti ? g_icon_image_multi : g_icon_image_single);
18783
18951
  jQuery(".bmlt-data-row > td").removeClass("rowHighlight");
18784
18952
  });
18785
18953
  gAllMarkers.push( {ids: in_ids, marker: marker} );
@@ -18907,7 +19075,7 @@ function addControl(div,pos,cb) {
18907
19075
  gMainMap.on('moveend', function(ev) {
18908
19076
  gMainMap.off('moveend');
18909
19077
  gMainMap.setZoom(getZoomAdjust(true, filterMeetings));
18910
- gMainMap.on('moveend',function() {
19078
+ gMainMap.once('moveend',function() {
18911
19079
  gTileLayer.redraw();
18912
19080
  });
18913
19081
  });
@@ -18975,9 +19143,13 @@ function addControl(div,pos,cb) {
18975
19143
  function modalOff() {
18976
19144
  if (gMainMap) gMainMap.dragging.enable()
18977
19145
  }
19146
+ function afterInit(f) {
19147
+ f();
19148
+ }
18978
19149
  function returnTrue() {return true;}
18979
19150
  this.createMap = createMap;
18980
19151
  this.addListener = addListener;
19152
+ this.removeListener = removeListener;
18981
19153
  this.addControl = addControl;
18982
19154
  this.setViewToPosition = setViewToPosition;
18983
19155
  this.clearAllMarkers = clearAllMarkers;
@@ -19000,9 +19172,11 @@ function addControl(div,pos,cb) {
19000
19172
  this.getGeocodeCenter = getGeocodeCenter;
19001
19173
  this.modalOn = modalOn;
19002
19174
  this.modalOff = modalOff;
19175
+ this.afterInit = afterInit;
19003
19176
  }
19004
19177
  MapDelegate.prototype.createMap = null;
19005
19178
  MapDelegate.prototype.addListener = null;
19179
+ MapDelegate.prototype.removeListener = null;
19006
19180
  MapDelegate.prototype.addControl = null;
19007
19181
  MapDelegate.prototype.setViewToPosition = null;
19008
19182
  MapDelegate.prototype.clearAllMarkers = null;
@@ -19025,6 +19199,7 @@ MapDelegate.prototype.clickSearch = null;
19025
19199
  MapDelegate.prototype.getGeocodeCenter = null;
19026
19200
  MapDelegate.prototype.modalOn = null;
19027
19201
  MapDelegate.prototype.modalOff = null;
19202
+ MapDelegate.prototype.afterInit = null;
19028
19203
 
19029
19204
  /* @preserve
19030
19205
  * Leaflet 1.5.1+Detached: 2e3e0ffbe87f246eb76d86d2633ddd59b262830b.2e3e0ff, a JS library for interactive maps. http://leafletjs.com