All-in-One Event Calendar - Version 2.3.5

Version Description

Download this release

Release Info

Developer calvinyeh
Plugin Icon 128x128 All-in-One Event Calendar
Version 2.3.5
Comparing to
See all releases

Code changes from version 2.3.4 to 2.3.5

Files changed (84) hide show
  1. all-in-one-event-calendar.php +1 -1
  2. app/config/constants.php +7 -1
  3. app/controller/front.php +1 -1
  4. app/controller/javascript.php +2 -1
  5. app/model/event-compatibility.php +0 -14
  6. app/model/event.php +56 -19
  7. app/view/admin/settings.php +0 -0
  8. app/view/calendar/page.php +22 -30
  9. app/view/calendar/view/agenda.php +49 -33
  10. app/view/calendar/view/month.php +532 -532
  11. app/view/event/content.php +2 -2
  12. app/view/event/single.php +3 -1
  13. app/view/event/taxonomy.php +71 -0
  14. language/all-in-one-event-calendar.mo +0 -0
  15. language/all-in-one-event-calendar.po +78 -65
  16. language/all-in-one-event-calendar.pot +77 -64
  17. lib/bootstrap/loader-map.php +2000 -816
  18. lib/calendar-feed/ics.php +12 -8
  19. lib/compatibility/check.php +40 -2
  20. lib/content/filter.php +1 -3
  21. lib/date/system.php +27 -1
  22. lib/global-functions.php +85 -1
  23. lib/html/element/href.php +7 -0
  24. lib/html/element/setting/input.php +11 -0
  25. lib/import-export/ics.php +1275 -1249
  26. lib/recurrence/rule.php +1 -0
  27. lib/size/converter.php +40 -0
  28. lib/upload/size-determiner.php +44 -0
  29. lib/validator/email.php +27 -0
  30. lib/validator/human-readable-size.php +36 -0
  31. public/admin/font/fontawesome-webfont.eot +0 -0
  32. public/admin/font/fontawesome-webfont.svg +0 -0
  33. public/admin/font/fontawesome-webfont.ttf +0 -0
  34. public/admin/font/fontawesome-webfont.woff +0 -0
  35. public/admin/img/ajax-loader-small.gif +0 -0
  36. public/admin/less/bootstrap/alerts.less +0 -0
  37. public/admin/less/bootstrap/badges.less +0 -0
  38. public/admin/less/bootstrap/bootstrap.less +0 -0
  39. public/admin/less/bootstrap/breadcrumbs.less +0 -0
  40. public/admin/less/bootstrap/button-groups.less +0 -0
  41. public/admin/less/bootstrap/buttons.less +0 -0
  42. public/admin/less/bootstrap/carousel.less +0 -0
  43. public/admin/less/bootstrap/close.less +0 -0
  44. public/admin/less/bootstrap/code.less +0 -0
  45. public/admin/less/bootstrap/component-animations.less +0 -0
  46. public/admin/less/bootstrap/dropdowns.less +0 -0
  47. public/admin/less/bootstrap/forms.less +0 -0
  48. public/admin/less/bootstrap/glyphicons.less +0 -0
  49. public/admin/less/bootstrap/grid.less +0 -0
  50. public/admin/less/bootstrap/input-groups.less +0 -0
  51. public/admin/less/bootstrap/jumbotron.less +0 -0
  52. public/admin/less/bootstrap/labels.less +0 -0
  53. public/admin/less/bootstrap/list-group.less +0 -0
  54. public/admin/less/bootstrap/media.less +0 -0
  55. public/admin/less/bootstrap/mixins.less +0 -0
  56. public/admin/less/bootstrap/modals.less +0 -0
  57. public/admin/less/bootstrap/navbar.less +0 -0
  58. public/admin/less/bootstrap/navs.less +0 -0
  59. public/admin/less/bootstrap/normalize.less +0 -0
  60. public/admin/less/bootstrap/pager.less +0 -0
  61. public/admin/less/bootstrap/pagination.less +0 -0
  62. public/admin/less/bootstrap/panels.less +0 -0
  63. public/admin/less/bootstrap/popovers.less +0 -0
  64. public/admin/less/bootstrap/print.less +0 -0
  65. public/admin/less/bootstrap/progress-bars.less +0 -0
  66. public/admin/less/bootstrap/responsive-utilities.less +0 -0
  67. public/admin/less/bootstrap/scaffolding.less +0 -0
  68. public/admin/less/bootstrap/tables.less +0 -0
  69. public/admin/less/bootstrap/theme.less +0 -0
  70. public/admin/less/bootstrap/thumbnails.less +0 -0
  71. public/admin/less/bootstrap/tooltip.less +0 -0
  72. public/admin/less/bootstrap/type.less +0 -0
  73. public/admin/less/bootstrap/utilities.less +0 -0
  74. public/admin/less/bootstrap/variables.less +0 -0
  75. public/admin/less/bootstrap/wells.less +0 -0
  76. public/admin/less/build-css.sh +0 -0
  77. public/admin/less/plugins/datepicker3.less +0 -0
  78. public/admin/plugins/ics/display_feeds.php +1 -1
  79. public/admin/twig/widget-creator/super-widget-contents.twig +2 -1
  80. public/js/build.txt +0 -342
  81. public/js/oneday.js +1 -1
  82. public/js/pages/calendar.js +1 -1
  83. public/js/pages/event.js +1 -1
  84. public/js/scripts/calendar.js +0 -1
all-in-one-event-calendar.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: A calendar system with month, week, day, agenda views, upcoming events widget, color-coded categories, recurrence, and import/export of .ics feeds.
6
  * Author: Time.ly Network Inc.
7
  * Author URI: http://time.ly/
8
- * Version: 2.3.4
9
  * Text Domain: all-in-one-event-calendar
10
  * Domain Path: /language
11
  */
5
  * Description: A calendar system with month, week, day, agenda views, upcoming events widget, color-coded categories, recurrence, and import/export of .ics feeds.
6
  * Author: Time.ly Network Inc.
7
  * Author URI: http://time.ly/
8
+ * Version: 2.3.5
9
  * Text Domain: all-in-one-event-calendar
10
  * Domain Path: /language
11
  */
app/config/constants.php CHANGED
@@ -50,7 +50,7 @@ function ai1ec_initiate_constants( $ai1ec_base_dir, $ai1ec_base_url ) {
50
  // = Plugin Version =
51
  // ==================
52
  if ( ! defined( 'AI1EC_VERSION' ) ) {
53
- define( 'AI1EC_VERSION', '2.3.4' );
54
  }
55
 
56
  // ================
@@ -474,4 +474,10 @@ function ai1ec_initiate_constants( $ai1ec_base_dir, $ai1ec_base_url ) {
474
  AI1EC_ADMIN_BASE_URL . '&ai1ec_force_updates=true'
475
  );
476
  }
 
 
 
 
 
 
477
  }
50
  // = Plugin Version =
51
  // ==================
52
  if ( ! defined( 'AI1EC_VERSION' ) ) {
53
+ define( 'AI1EC_VERSION', '2.3.5' );
54
  }
55
 
56
  // ================
474
  AI1EC_ADMIN_BASE_URL . '&ai1ec_force_updates=true'
475
  );
476
  }
477
+
478
+ /*
479
+ require_once ABSPATH . 'wp-admin' . DIRECTORY_SEPARATOR . 'includes' .
480
+ DIRECTORY_SEPARATOR . 'schema.php';
481
+ populate_roles();
482
+ */
483
  }
app/controller/front.php CHANGED
@@ -506,7 +506,7 @@ class Ai1ec_Front_Controller {
506
  'user_has_cap',
507
  array( 'content.filter', 'display_trash_link' ),
508
  10,
509
- 4
510
  );
511
  }
512
  // post row action for parent/child
506
  'user_has_cap',
507
  array( 'content.filter', 'display_trash_link' ),
508
  10,
509
+ 2
510
  );
511
  }
512
  // post row action for parent/child
app/controller/javascript.php CHANGED
@@ -381,7 +381,7 @@ class Ai1ec_Javascript_Controller {
381
  $locale = $this->_registry->get( 'p28n.wpml' );
382
  $blog_timezone = $this->_registry->get( 'model.option' )
383
  ->get( 'gmt_offset' );
384
-
385
  $data = array(
386
  'calendar_feeds_nonce' => wp_create_nonce( 'ai1ec_ics_feed_nonce'),
387
  // ICS feed error messages
@@ -468,6 +468,7 @@ class Ai1ec_Javascript_Controller {
468
  'disable_autocompletion' => $settings->get( 'disable_autocompletion' ),
469
  'end_must_be_after_start' => __( 'The end date can\'t be earlier than the start date.', AI1EC_PLUGIN_NAME ),
470
  'show_at_least_six_hours' => __( 'For week and day view, you must select an interval of at least 6 hours.', AI1EC_PLUGIN_NAME ),
 
471
  );
472
  return apply_filters( 'ai1ec_js_translations', $data );
473
  }
381
  $locale = $this->_registry->get( 'p28n.wpml' );
382
  $blog_timezone = $this->_registry->get( 'model.option' )
383
  ->get( 'gmt_offset' );
384
+ $application = $this->_registry->get( 'bootstrap.registry.application' );
385
  $data = array(
386
  'calendar_feeds_nonce' => wp_create_nonce( 'ai1ec_ics_feed_nonce'),
387
  // ICS feed error messages
468
  'disable_autocompletion' => $settings->get( 'disable_autocompletion' ),
469
  'end_must_be_after_start' => __( 'The end date can\'t be earlier than the start date.', AI1EC_PLUGIN_NAME ),
470
  'show_at_least_six_hours' => __( 'For week and day view, you must select an interval of at least 6 hours.', AI1EC_PLUGIN_NAME ),
471
+ 'ai1ec_permalinks_enabled' => $application->get( 'permalinks_enabled' ),
472
  );
473
  return apply_filters( 'ai1ec_js_translations', $data );
474
  }
app/model/event-compatibility.php CHANGED
@@ -97,20 +97,6 @@ class Ai1ec_Event_Compatibility extends Ai1ec_Event {
97
  return $this->getavatar( false );
98
  }
99
 
100
- /**
101
- * Returns enddate specific info.
102
- *
103
- * @return array Date info structure.
104
- */
105
- public function getenddate_info() {
106
- return array(
107
- 'month' => $this->get( 'end' )->format( 'M' ),
108
- 'day' => $this->get( 'end' )->format( 'j' ),
109
- 'weekday' => $this->get( 'end' )->format( 'D' ),
110
- 'year' => $this->get( 'end' )->format( 'Y' ),
111
- );
112
- }
113
-
114
  /**
115
  * Returns Event avatar URL.
116
  *
97
  return $this->getavatar( false );
98
  }
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  /**
101
  * Returns Event avatar URL.
102
  *
app/model/event.php CHANGED
@@ -285,6 +285,35 @@ class Ai1ec_Event extends Ai1ec_Base {
285
  return $this->initialize_from_array( $event );
286
  }
287
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
288
  /**
289
  * Create new event object, using provided data for initialization.
290
  *
@@ -510,9 +539,12 @@ class Ai1ec_Event extends Ai1ec_Base {
510
  *
511
  * @param bool $update Whether to update an existing event or create a
512
  * new one
 
 
 
513
  * @return int The post_id of the new or existing event.
514
  */
515
- function save( $update = false ) {
516
  do_action( 'ai1ec_pre_save_event', $this, $update );
517
  if ( ! $update ) {
518
  $response = apply_filters( 'ai1ec_event_save_new', $this );
@@ -525,7 +557,7 @@ class Ai1ec_Event extends Ai1ec_Base {
525
 
526
  $dbi = $this->_registry->get( 'dbi.dbi' );
527
  $columns = $this->prepare_store_entity();
528
- $format = $this->prepare_store_format( $columns );
529
  $table_name = $dbi->get_table_name( 'ai1ec_events' );
530
  $post_id = $columns['post_id'];
531
 
@@ -612,25 +644,11 @@ class Ai1ec_Event extends Ai1ec_Base {
612
  /**
613
  * Prepare fields format flags to use in database operations.
614
  *
615
- * NOTICE: parameter $entity is ignored as of now.
616
- *
617
- * @param array $entity Serialized entity to prepare flags for.
618
  *
619
  * @return array List of format flags to use in integrations with DBI.
620
  */
621
- public function prepare_store_format( array $entity ) {
622
- // ===============================================================
623
- // ====== Sample implementation to follow method signature: ======
624
- // ===============================================================
625
- // static $format = array(
626
- // 'post_id' => '%d',
627
- // 'start' => '%d',
628
- // 'end' => '%d',
629
- // 'timezone_name' => '%s',
630
- // // other keys to follow...
631
- // );
632
- // return array_values( array_intersect_key( $format, $entity ) );
633
- // ===============================================================
634
  $format = array(
635
  '%d', // post_id
636
  '%d', // start
@@ -662,6 +680,25 @@ class Ai1ec_Event extends Ai1ec_Base {
662
  '%f', // latitude
663
  '%f', // longitude
664
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
665
  return $format;
666
  }
667
 
@@ -720,7 +757,7 @@ class Ai1ec_Event extends Ai1ec_Base {
720
  if (
721
  isset( $this->_swizzable[$field] ) &&
722
  $this->_swizzable[$field] <= 0
723
- ) {
724
  $value = $this->{ '_handle_property_destruct_' . $field }( $value );
725
  }
726
  return $value;
285
  return $this->initialize_from_array( $event );
286
  }
287
 
288
+ /**
289
+ * Returns enddate specific info.
290
+ *
291
+ * @return array Date info structure.
292
+ */
293
+ public function getenddate_info() {
294
+ $end = $this->get( 'end' );
295
+
296
+ if ( $this->is_allday() ) {
297
+ $end->set_time(
298
+ $end->format( 'H' ),
299
+ $end->format( 'i' ),
300
+ $end->format( 's' ) - 1
301
+ );
302
+ return array(
303
+ 'month' => $end->format( 'M' ),
304
+ 'day' => $end->format( 'j' ),
305
+ 'weekday' => $end->format( 'D' ),
306
+ 'year' => $end->format( 'Y' ),
307
+ );
308
+ }
309
+ return array(
310
+ 'month' => $this->get( 'end' )->format( 'M' ),
311
+ 'day' => $this->get( 'end' )->format( 'j' ),
312
+ 'weekday' => $this->get( 'end' )->format( 'D' ),
313
+ 'year' => $this->get( 'end' )->format( 'Y' ),
314
+ );
315
+ }
316
+
317
  /**
318
  * Create new event object, using provided data for initialization.
319
  *
539
  *
540
  * @param bool $update Whether to update an existing event or create a
541
  * new one
542
+ * @param bool $backward_compatibility The (wpdb) ofr the new wordpress 4.4
543
+ * now inserts NULL as null values. The previous version, if you insert a NULL
544
+ * value in an int value, the values saved would be 0 instead of null.
545
  * @return int The post_id of the new or existing event.
546
  */
547
+ function save( $update = false, $backward_compatibility = true ) {
548
  do_action( 'ai1ec_pre_save_event', $this, $update );
549
  if ( ! $update ) {
550
  $response = apply_filters( 'ai1ec_event_save_new', $this );
557
 
558
  $dbi = $this->_registry->get( 'dbi.dbi' );
559
  $columns = $this->prepare_store_entity();
560
+ $format = $this->prepare_store_format( $columns, $backward_compatibility );
561
  $table_name = $dbi->get_table_name( 'ai1ec_events' );
562
  $post_id = $columns['post_id'];
563
 
644
  /**
645
  * Prepare fields format flags to use in database operations.
646
  *
647
+ * @param array $columns Array of columns with data to insert.
 
 
648
  *
649
  * @return array List of format flags to use in integrations with DBI.
650
  */
651
+ public function prepare_store_format( array &$columns, $backward_compatibility = true ) {
 
 
 
 
 
 
 
 
 
 
 
 
652
  $format = array(
653
  '%d', // post_id
654
  '%d', // start
680
  '%f', // latitude
681
  '%f', // longitude
682
  );
683
+
684
+ if ( $backward_compatibility ) {
685
+ $columns_count = count( $columns );
686
+ if ( count( $format ) !== $columns_count ) {
687
+ throw new Ai1ec_Event_Not_Found_Exception(
688
+ 'Data columns count differs from format columns count'
689
+ );
690
+ }
691
+ $index = 0;
692
+ foreach ( $columns as $key => $value ) {
693
+ if ( '%d' === $format[ $index ] ) {
694
+ if ( is_null( $value ) ) {
695
+ $columns[ $key ] = 0;
696
+ }
697
+ }
698
+ $index++;
699
+ }
700
+ }
701
+
702
  return $format;
703
  }
704
 
757
  if (
758
  isset( $this->_swizzable[$field] ) &&
759
  $this->_swizzable[$field] <= 0
760
+ ) {
761
  $value = $this->{ '_handle_property_destruct_' . $field }( $value );
762
  }
763
  return $value;
app/view/admin/settings.php CHANGED
File without changes
app/view/calendar/page.php CHANGED
@@ -102,15 +102,10 @@ class Ai1ec_Calendar_Page extends Ai1ec_Base {
102
  // Add views dropdown markup to view args.
103
  $view_args['views_dropdown'] = $views_dropdown;
104
 
105
- // Get HTML for categories and for tags
106
- $taxonomy = $this->_registry->get( 'view.calendar.taxonomy' );
107
- $categories = $taxonomy->get_html_for_categories(
108
- $view_args
109
- );
110
- $tags = $taxonomy->get_html_for_tags(
111
- $view_args,
112
- true
113
- );
114
 
115
  // Get HTML for subscribe buttons.
116
  $subscribe_buttons = $this->get_html_for_subscribe_buttons( $view_args );
@@ -124,29 +119,30 @@ class Ai1ec_Calendar_Page extends Ai1ec_Base {
124
  );
125
 
126
  if (
127
- ( $view_args['no_navigation'] || $type !== 'html' ) && $is_json
 
128
  ) {
129
-
130
  // send data both for json and jsonp as shortcodes are jsonp
131
  return array(
132
  'html' => $view,
133
- 'categories' => $categories,
134
- 'tags' => $tags,
135
  'views_dropdown' => $views_dropdown,
136
  'subscribe_buttons' => $subscribe_buttons,
137
  'are_filters_set' => $are_filters_set,
138
  'is_json' => $is_json,
139
- 'custom_filters' => apply_filters(
140
- 'ai1ec_custom_filters_html',
141
- '',
142
- $view_args,
143
- $request
144
- ),
145
  );
146
 
147
  } else {
148
- $loader = $this->_registry->get( 'theme.loader' );
149
- $empty = $loader->get_file( 'empty.twig', array(), false );
 
 
 
 
 
 
 
 
 
150
 
151
  // option to show filters in the super widget
152
  // Define new arguments for overall calendar view
@@ -222,6 +218,10 @@ class Ai1ec_Calendar_Page extends Ai1ec_Base {
222
  ),
223
  );
224
 
 
 
 
 
225
  $calendar = $loader->get_file( 'calendar.twig', $calendar_args, false );
226
  // if it's just html, only the calendar html must be returned.
227
  if ( 'html' === $type ) {
@@ -230,18 +230,10 @@ class Ai1ec_Calendar_Page extends Ai1ec_Base {
230
  // send data both for json and jsonp as shortcodes are jsonp
231
  return array(
232
  'html' => $calendar->get_content(),
233
- 'categories' => $categories,
234
- 'tags' => $tags,
235
  'views_dropdown' => $views_dropdown,
236
  'subscribe_buttons' => $subscribe_buttons,
237
  'are_filters_set' => $are_filters_set,
238
- 'is_json' => $is_json,
239
- 'custom_filters' => apply_filters(
240
- 'ai1ec_custom_filters_html',
241
- '',
242
- $view_args,
243
- $request
244
- ),
245
  );
246
  }
247
  }
102
  // Add views dropdown markup to view args.
103
  $view_args['views_dropdown'] = $views_dropdown;
104
 
105
+ $settings = $this->_registry->get( 'model.settings' );
106
+ if ( $settings->get( 'ai1ec_use_frontend_rendering' ) ) {
107
+ $view_args['request_format'] = 'json';
108
+ }
 
 
 
 
 
109
 
110
  // Get HTML for subscribe buttons.
111
  $subscribe_buttons = $this->get_html_for_subscribe_buttons( $view_args );
119
  );
120
 
121
  if (
122
+ $is_json &&
123
+ ( $view_args['no_navigation'] || $type !== 'html' )
124
  ) {
 
125
  // send data both for json and jsonp as shortcodes are jsonp
126
  return array(
127
  'html' => $view,
 
 
128
  'views_dropdown' => $views_dropdown,
129
  'subscribe_buttons' => $subscribe_buttons,
130
  'are_filters_set' => $are_filters_set,
131
  'is_json' => $is_json,
 
 
 
 
 
 
132
  );
133
 
134
  } else {
135
+ $loader = $this->_registry->get( 'theme.loader' );
136
+ $empty = $loader->get_file( 'empty.twig', array(), false );
137
+ // Get HTML for categories and for tags
138
+ $taxonomy = $this->_registry->get( 'view.calendar.taxonomy' );
139
+ $categories = $taxonomy->get_html_for_categories(
140
+ $view_args
141
+ );
142
+ $tags = $taxonomy->get_html_for_tags(
143
+ $view_args,
144
+ true
145
+ );
146
 
147
  // option to show filters in the super widget
148
  // Define new arguments for overall calendar view
218
  ),
219
  );
220
 
221
+ if ( is_array( $calendar_args['view'] ) ) {
222
+ $view_args['request_format'] = 'html';
223
+ $calendar_args['view'] = $view_obj->get_content( $view_args );
224
+ }
225
  $calendar = $loader->get_file( 'calendar.twig', $calendar_args, false );
226
  // if it's just html, only the calendar html must be returned.
227
  if ( 'html' === $type ) {
230
  // send data both for json and jsonp as shortcodes are jsonp
231
  return array(
232
  'html' => $calendar->get_content(),
 
 
233
  'views_dropdown' => $views_dropdown,
234
  'subscribe_buttons' => $subscribe_buttons,
235
  'are_filters_set' => $are_filters_set,
236
+ 'is_json' => $is_json
 
 
 
 
 
 
237
  );
238
  }
239
  }
app/view/calendar/view/agenda.php CHANGED
@@ -22,6 +22,7 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
22
  * @see Ai1ec_Calendar_View_Abstract::get_content()
23
  */
24
  public function get_content( array $view_args ) {
 
25
  $type = $this->get_name();
26
  $time = $this->_registry->get( 'date.system' );
27
  // Get localized time
@@ -65,9 +66,16 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
65
  $view_args['request']
66
  );
67
 
 
68
  // Generate title of view based on date range month & year.
69
- $range_start = $results['date_first'] ? $results['date_first'] : $this->_registry->get( 'date.time', $timestamp );
70
- $range_end = $results['date_last'] ? $results['date_last'] : $this->_registry->get( 'date.time', $timestamp );
 
 
 
 
 
 
71
  $range_start = $this->_registry->get( 'date.time', $range_start );
72
  $range_end = $this->_registry->get( 'date.time', $range_end );
73
  $start_year = $range_start->format_i18n( 'Y' );
@@ -86,12 +94,13 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
86
  $title = "$start_month $start_year – $end_month $end_year";
87
  $title_short = "$start_month_short $start_year – $end_month_short $end_year";
88
  }
89
-
90
  // Create navigation bar if requested.
91
  $navigation = '';
92
  $loader = $this->_registry->get( 'theme.loader' );
93
  $pagination_links = '';
94
  if ( ! $view_args['no_navigation'] ) {
 
95
  $pagination_links = $this->_get_agenda_like_pagination_links(
96
  $view_args,
97
  $results['prev'],
@@ -99,7 +108,11 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
99
  $results['date_first'],
100
  $results['date_last'],
101
  $title,
102
- $title_short
 
 
 
 
103
  );
104
 
105
  $pagination_links = $loader->get_file(
@@ -257,12 +270,7 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
257
  $event_props['short_start_time'] = $event->get_runtime( 'short_start_time' );
258
  $event_props['is_allday'] = $event->is_allday();
259
  $event_props['is_multiday'] = $event->is_multiday();
260
- $event_props['enddate_info'] = array(
261
- 'month' => $event->get( 'end' )->format( 'M' ),
262
- 'day' => $event->get( 'end' )->format( 'j' ),
263
- 'weekday' => $event->get( 'end' )->format( 'D' ),
264
- 'year' => $event->get( 'end' )->format( 'Y' ),
265
- );
266
  $event_props['timespan_short'] = $event->_registry->
267
  get( 'view.event.time' )->get_timespan_html( $event, 'short' );
268
  $event_props['avatar'] = $event->getavatar();
@@ -320,23 +328,23 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
320
  * the current page
321
  * @param bool $next Whether there are more events after
322
  * the current page
323
- * @param int|null $date_first
324
- * @param int|null $date_last
325
  * @param string $title Title to display in datepicker button
326
  * @param string $title_short Short month names.
327
- *
328
  * @return array Array of links
329
  */
330
  protected function _get_agenda_like_pagination_links(
331
  $args,
332
- $prev = false,
333
- $next = false,
334
- $date_first = null,
335
- $date_last = null,
336
- $title = '',
337
- $title_short = ''
338
- ) {
339
-
340
  $links = array();
341
 
342
  if (
@@ -347,12 +355,16 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
347
  $args['request_format'] = 'json';
348
  }
349
  $args['page_offset'] = -1;
350
- $args['time_limit'] = $this->_registry
351
- ->get( 'date.time', $date_first )->set_time(
352
- $date_first->format( 'H' ),
353
- $date_first->format( 'i' ),
354
- $date_first->format( 's' ) - 1
355
- )->format_to_gmt();
 
 
 
 
356
  $href = $this->_registry->get(
357
  'html.element.href',
358
  $args
@@ -374,12 +386,16 @@ class Ai1ec_Calendar_View_Agenda extends Ai1ec_Calendar_View_Abstract {
374
  );
375
 
376
  $args['page_offset'] = 1;
377
- $args['time_limit'] = $this->_registry
378
- ->get( 'date.time', $date_last )->set_time(
379
- $date_last->format( 'H' ),
380
- $date_last->format( 'i' ),
381
- $date_last->format( 's' ) + 1
382
- )->format_to_gmt();
 
 
 
 
383
  $href = $this->_registry->get(
384
  'html.element.href',
385
  $args
22
  * @see Ai1ec_Calendar_View_Abstract::get_content()
23
  */
24
  public function get_content( array $view_args ) {
25
+
26
  $type = $this->get_name();
27
  $time = $this->_registry->get( 'date.system' );
28
  // Get localized time
66
  $view_args['request']
67
  );
68
 
69
+
70
  // Generate title of view based on date range month & year.
71
+ $range_start = $results['date_first'] &&
72
+ false === $results['date_first']->is_empty() ?
73
+ $results['date_first'] :
74
+ $this->_registry->get( 'date.time', $timestamp );
75
+ $range_end = $results['date_last'] &&
76
+ false === $results['date_last']->is_empty() ?
77
+ $results['date_last'] :
78
+ $this->_registry->get( 'date.time', $timestamp );
79
  $range_start = $this->_registry->get( 'date.time', $range_start );
80
  $range_end = $this->_registry->get( 'date.time', $range_end );
81
  $start_year = $range_start->format_i18n( 'Y' );
94
  $title = "$start_month $start_year – $end_month $end_year";
95
  $title_short = "$start_month_short $start_year – $end_month_short $end_year";
96
  }
97
+
98
  // Create navigation bar if requested.
99
  $navigation = '';
100
  $loader = $this->_registry->get( 'theme.loader' );
101
  $pagination_links = '';
102
  if ( ! $view_args['no_navigation'] ) {
103
+
104
  $pagination_links = $this->_get_agenda_like_pagination_links(
105
  $view_args,
106
  $results['prev'],
108
  $results['date_first'],
109
  $results['date_last'],
110
  $title,
111
+ $title_short,
112
+ null === $view_args['time_limit'] ||
113
+ 0 === $view_args['time_limit'] ?
114
+ $timestamp :
115
+ $view_args['time_limit']
116
  );
117
 
118
  $pagination_links = $loader->get_file(
270
  $event_props['short_start_time'] = $event->get_runtime( 'short_start_time' );
271
  $event_props['is_allday'] = $event->is_allday();
272
  $event_props['is_multiday'] = $event->is_multiday();
273
+ $event_props['enddate_info'] = $event->getenddate_info();
 
 
 
 
 
274
  $event_props['timespan_short'] = $event->_registry->
275
  get( 'view.event.time' )->get_timespan_html( $event, 'short' );
276
  $event_props['avatar'] = $event->getavatar();
328
  * the current page
329
  * @param bool $next Whether there are more events after
330
  * the current page
331
+ * @param Ai1ec_Date_Time|null $date_first
332
+ * @param Ai1ec_Date_Time|null $date_last
333
  * @param string $title Title to display in datepicker button
334
  * @param string $title_short Short month names.
335
+ * @param int|null $default_time_limit The default time limit in the case of pagination ends.
336
  * @return array Array of links
337
  */
338
  protected function _get_agenda_like_pagination_links(
339
  $args,
340
+ $prev = false,
341
+ $next = false,
342
+ $date_first = null,
343
+ $date_last = null,
344
+ $title = '',
345
+ $title_short = '',
346
+ $default_time_limit = 0
347
+ ) {
348
  $links = array();
349
 
350
  if (
355
  $args['request_format'] = 'json';
356
  }
357
  $args['page_offset'] = -1;
358
+ if ( null === $date_first || $date_first->is_empty() ) {
359
+ $args['time_limit'] = $default_time_limit;
360
+ } else {
361
+ $args['time_limit'] = $this->_registry
362
+ ->get( 'date.time', $date_first )->set_time(
363
+ $date_first->format( 'H' ),
364
+ $date_first->format( 'i' ),
365
+ $date_first->format( 's' ) - 1
366
+ )->format_to_gmt();
367
+ }
368
  $href = $this->_registry->get(
369
  'html.element.href',
370
  $args
386
  );
387
 
388
  $args['page_offset'] = 1;
389
+ if ( null === $date_last || $date_last->is_empty() ) {
390
+ $args['time_limit'] = $default_time_limit;
391
+ } else {
392
+ $args['time_limit'] = $this->_registry
393
+ ->get( 'date.time', $date_last )->set_time(
394
+ $date_last->format( 'H' ),
395
+ $date_last->format( 'i' ),
396
+ $date_last->format( 's' ) + 1
397
+ )->format_to_gmt();
398
+ }
399
  $href = $this->_registry->get(
400
  'html.element.href',
401
  $args
app/view/calendar/view/month.php CHANGED
@@ -1,532 +1,532 @@
1
- <?php
2
-
3
- /**
4
- * The concrete class for month view.
5
- *
6
- * @author Time.ly Network Inc.
7
- * @since 2.0
8
- *
9
- * @package AI1EC
10
- * @subpackage AI1EC.View
11
- */
12
- class Ai1ec_Calendar_View_Month extends Ai1ec_Calendar_View_Abstract {
13
-
14
- /* (non-PHPdoc)
15
- * @see Ai1ec_Calendar_View_Abstract::get_name()
16
- */
17
- public function get_name() {
18
- return 'month';
19
- }
20
-
21
- /* (non-PHPdoc)
22
- * @see Ai1ec_Calendar_View_Abstract::get_content()
23
- */
24
- public function get_content( array $view_args ) {
25
- $date_system = $this->_registry->get( 'date.system' );
26
- $settings = $this->_registry->get( 'model.settings' );
27
- $defaults = array(
28
- 'month_offset' => 0,
29
- 'cat_ids' => array(),
30
- 'auth_ids' => array(),
31
- 'tag_ids' => array(),
32
- 'post_ids' => array(),
33
- 'instance_ids' => array(),
34
- 'exact_date' => $date_system->current_time(),
35
- );
36
- $args = wp_parse_args( $view_args, $defaults );
37
- $local_date = $this->_registry
38
- ->get( 'date.time', $args['exact_date'], 'sys.default' );
39
- $local_date->set_date(
40
- $local_date->format( 'Y' ),
41
- $local_date->format( 'm' ) + $args['month_offset'],
42
- 1
43
- )
44
- ->set_time( 0, 0, 0 );
45
-
46
- $days_events = $this->get_events_for_month(
47
- $local_date,
48
- apply_filters(
49
- 'ai1ec_get_events_relative_to_filter',
50
- array(
51
- 'cat_ids' => $args['cat_ids'],
52
- 'tag_ids' => $args['tag_ids'],
53
- 'post_ids' => $args['post_ids'],
54
- 'auth_ids' => $args['auth_ids'],
55
- 'instance_ids' => $args['instance_ids'],
56
- ),
57
- $view_args,
58
- apply_filters(
59
- 'ai1ec_show_unique_events',
60
- false
61
- )
62
- )
63
- );
64
- $cell_array = $this->get_month_cell_array(
65
- $local_date,
66
- $days_events
67
- );
68
- // Create pagination links.
69
- $title = $local_date->format_i18n( 'F Y' );
70
- $pagination_links = $this->_get_pagination( $args, $title );
71
-
72
- $is_ticket_button_enabled = apply_filters(
73
- 'ai1ec_month_ticket_button',
74
- false
75
- );
76
-
77
- $view_args = array(
78
- 'title' => $title,
79
- 'type' => 'month',
80
- 'weekdays' => $this->get_weekdays(),
81
- 'cell_array' => $cell_array,
82
- 'show_location_in_title' => $settings->get( 'show_location_in_title' ),
83
- 'month_word_wrap' => $settings->get( 'month_word_wrap' ),
84
- 'post_ids' => join( ',', $args['post_ids'] ),
85
- 'data_type' => $args['data_type'],
86
- 'is_ticket_button_enabled' => $is_ticket_button_enabled,
87
- 'text_venue_separator' => __( '@ %s', AI1EC_PLUGIN_NAME ),
88
- 'pagination_links' => $pagination_links,
89
- );
90
-
91
- // Add navigation if requested.
92
- $view_args['navigation'] = $this->_get_navigation(
93
- array(
94
- 'no_navigation' => $args['no_navigation'],
95
- 'pagination_links' => $pagination_links,
96
- 'views_dropdown' => $args['views_dropdown'],
97
- 'below_toolbar' => apply_filters(
98
- 'ai1ec_below_toolbar',
99
- '',
100
- $this->get_name(),
101
- $args
102
- ),
103
- )
104
- );
105
-
106
- $view_args = $this->get_extra_template_arguments( $view_args );
107
-
108
- return
109
- $this->_registry->get( 'http.request' )->is_json_required(
110
- $args['request_format'], 'month'
111
- )
112
- ? $this->_apply_filters_to_args( $view_args )
113
- : $this->_get_view( $view_args );
114
- }
115
-
116
- /**
117
- * Returns a non-associative array of four links for the month view of the
118
- * calendar:
119
- * previous year, previous month, next month, and next year.
120
- * Each element is an associative array containing the link's enabled status
121
- * ['enabled'], CSS class ['class'], text ['text'] and value to assign to
122
- * link's href ['href'].
123
- *
124
- * @param array $args Current request arguments
125
- * @param string $title Title to display in datepicker button
126
- *
127
- * @return array Array of links
128
- */
129
- function get_month_pagination_links( $args, $title ) {
130
- $links = array();
131
-
132
- $local_date = $this->_registry
133
- ->get( 'date.time', $args['exact_date'], 'sys.default' );
134
- $orig_date = $this->_registry->get( 'date.time', $local_date );
135
- $default_tz = $this->_registry->get( 'date.timezone' )->get_default_timezone();
136
- // =================
137
- // = Previous year =
138
- // =================
139
- // Align date to first of month, month offset applied, 1 year behind.
140
- $local_date
141
- ->set_timezone( $default_tz )
142
- ->set_date(
143
- $local_date->format( 'Y' ) -1,
144
- $local_date->format( 'm' ) + $args['month_offset'],
145
- 1
146
- )
147
- ->set_time( 0, 0, 0 );
148
-
149
- $args['exact_date'] = $local_date->format();
150
- $href = $this->_registry->get( 'html.element.href', $args );
151
- $links[] = array(
152
- 'enabled' => true,
153
- 'class'=> 'ai1ec-prev-year',
154
- 'text' => '<i class="ai1ec-fa ai1ec-fa-angle-double-left"></i> ' .
155
- $local_date->format_i18n( 'Y' ),
156
- 'href' => $href->generate_href(),
157
- );
158
-
159
- // ==================
160
- // = Previous month =
161
- // ==================
162
- // Align date to first of month, month offset applied, 1 month behind.
163
- $local_date
164
- ->set_date(
165
- $local_date->format( 'Y' ) + 1,
166
- $local_date->format( 'm' ) - 1,
167
- 1
168
- );
169
- $args['exact_date'] = $local_date->format();
170
- $href = $this->_registry->get( 'html.element.href', $args );
171
- $links[] = array(
172
- 'enabled' => true,
173
- 'class'=> 'ai1ec-prev-month',
174
- 'text' => '<i class="ai1ec-fa ai1ec-fa-angle-left"></i> ' .
175
- $local_date->format_i18n( 'M' ),
176
- 'href' => $href->generate_href(),
177
- );
178
-
179
- // ======================
180
- // = Minical datepicker =
181
- // ======================
182
- // Align date to first of month, month offset applied.
183
-
184
- $orig_date
185
- ->set_timezone('UTC')
186
- ->set_date(
187
- $orig_date->format( 'Y' ),
188
- $orig_date->format( 'm' ) + $args['month_offset'],
189
- 1
190
- );
191
- $args['exact_date'] = $orig_date->format();
192
- $factory = $this->_registry->get( 'factory.html' );
193
- $links[] = $factory->create_datepicker_link(
194
- $args,
195
- $args['exact_date'],
196
- $title
197
- );
198
-
199
- // ==============
200
- // = Next month =
201
- // ==============
202
- // Align date to first of month, month offset applied, 1 month ahead.
203
- $orig_date
204
- ->set_timezone( $default_tz )
205
- ->set_date(
206
- $orig_date->format( 'Y' ),
207
- $orig_date->format( 'm' ) + 1,
208
- 1
209
- )
210
- ->set_time( 0, 0, 0 );
211
- $args['exact_date'] = $orig_date->format();
212
- $href = $this->_registry->get( 'html.element.href', $args );
213
- $links[] = array(
214
- 'enabled' => true,
215
- 'class'=> 'ai1ec-next-month',
216
- 'text' => $orig_date->format_i18n( 'M' ) .
217
- ' <i class="ai1ec-fa ai1ec-fa-angle-right"></i>',
218
- 'href' => $href->generate_href(),
219
- );
220
-
221
- // =============
222
- // = Next year =
223
- // =============
224
- // Align date to first of month, month offset applied, 1 year ahead.
225
- $orig_date
226
- ->set_date(
227
- $orig_date->format( 'Y' ) + 1,
228
- $orig_date->format( 'm' ) - 1,
229
- 1
230
- );
231
- $args['exact_date'] = $orig_date->format();
232
- $href = $this->_registry->get( 'html.element.href', $args );
233
- $links[] = array(
234
- 'enabled' => true,
235
- 'class'=> 'ai1ec-next-year',
236
- 'text' => $orig_date->format_i18n( 'Y' ) .
237
- ' <i class="ai1ec-fa ai1ec-fa-angle-double-right"></i>',
238
- 'href' => $href->generate_href(),
239
- );
240
-
241
- return $links;
242
- }
243
-
244
- /**
245
- * get_weekdays function
246
- *
247
- * Returns a list of abbreviated weekday names starting on the configured
248
- * week start day setting.
249
- *
250
- * @return array
251
- */
252
- protected function get_weekdays() {
253
- $settings = $this->_registry->get( 'model.settings' );
254
- static $weekdays;
255
-
256
- if ( ! isset( $weekdays ) ) {
257
- $time = $this->_registry->get(
258
- 'date.time',
259
- 'next Sunday',
260
- 'sys.default'
261
- );
262
- $time->adjust_day( $settings->get( 'week_start_day' ) );
263
-
264
- $weekdays = array();
265
- for( $i = 0; $i < 7; $i++ ) {
266
- $weekdays[] = $time->format_i18n( 'D' );
267
- $time->adjust_day( 1 );// Add a day
268
- }
269
- }
270
- return $weekdays;
271
- }
272
-
273
- /* (non-PHPdoc)
274
- * @see Ai1ec_Calendar_View_Abstract::_add_view_specific_runtime_properties()
275
- */
276
- protected function _add_view_specific_runtime_properties(
277
- Ai1ec_Event $event
278
- ) {
279
- $end_day = $this->_registry->get( 'date.time', $event->get( 'end' ) )
280
- ->adjust( -1, 'second' )
281
- ->format_i18n( 'd' );
282
- $event->set_runtime( 'multiday_end_day', $end_day );
283
- $event->set_runtime(
284
- 'start_day',
285
- $event->get( 'start' )->format( 'j' )
286
- );
287
- }
288
-
289
- /**
290
- * get_month_cell_array function
291
- *
292
- * Return an array of weeks, each containing an array of days, each
293
- * containing the date for the day ['date'] (if inside the month) and
294
- * the events ['events'] (if any) for the day, and a boolean ['today']
295
- * indicating whether that day is today.
296
- *
297
- * @param int $timestamp UNIX timestamp of the 1st day of the desired
298
- * month to display
299
- * @param array $days_events list of events for each day of the month in
300
- * the format returned by get_events_for_month()
301
- *
302
- * @return void
303
- */
304
- protected function get_month_cell_array( Ai1ec_Date_Time $timestamp, $days_events ) {
305
- $settings = $this->_registry->get( 'model.settings' );
306
- $date_system = $this->_registry->get( 'date.system' );
307
- $today = $this->_registry->get( 'date.time' );// Used to flag today's cell
308
-
309
- // Figure out index of first table cell
310
- $first_cell_index = $timestamp->format( 'w' );
311
- // Modify weekday based on start of week setting
312
- $first_cell_index = ( 7 + $first_cell_index - $settings->get( 'week_start_day' ) ) % 7;
313
-
314
- // Get the last day of the month
315
- $last_day = $timestamp->format( 't' );
316
- $last_timestamp = $this->_registry->get( 'date.time', $timestamp );
317
- $last_timestamp->set_date(
318
- $timestamp->format( 'Y' ),
319
- $timestamp->format( 'm' ),
320
- $last_day
321
- )->set_time( 0, 0, 0 );
322
- // Figure out index of last table cell
323
- $last_cell_index = $last_timestamp->format( 'w' );
324
- // Modify weekday based on start of week setting
325
- $last_cell_index = ( 7 + $last_cell_index - $settings->get( 'week_start_day' ) ) % 7;
326
-
327
- $weeks = array();
328
- $week = 0;
329
- $weeks[$week] = array();
330
-
331
- // Insert any needed blank cells into first week
332
- for( $i = 0; $i < $first_cell_index; $i++ ) {
333
- $weeks[$week][] = array(
334
- 'date' => null,
335
- 'events' => array(),
336
- 'date_link' => null
337
- );
338
- }
339
-
340
- // Insert each month's day and associated events
341
- for( $i = 1; $i <= $last_day; $i++ ) {
342
- $day = $this->_registry->get( 'date.time' )
343
- ->set_date(
344
- $timestamp->format( 'Y' ),
345
- $timestamp->format( 'm' ),
346
- $i
347
- )
348
- ->set_time( 0, 0, 0 )
349
- ->format();
350
- $exact_date = $date_system->format_date_for_url(
351
- $day,
352
- $settings->get( 'input_date_format' )
353
- );
354
- $events = array();
355
- foreach ( $days_events[$i] as $evt ){
356
- $event_data = array(
357
- 'filtered_title' => $evt->get_runtime( 'filtered_title' ),
358
- 'post_excerpt' => $evt->get_runtime( 'post_excerpt' ),
359
- 'color_style' => $evt->get_runtime( 'color_style' ),
360
- 'category_colors' => $evt->get_runtime( 'category_colors' ),
361
- 'permalink' => $evt->get_runtime( 'instance_permalink' ),
362
- 'ticket_url_label' => $evt->get_runtime( 'ticket_url_label' ),
363
- 'edit_post_link' => $evt->get_runtime( 'edit_post_link' ),
364
- 'short_start_time' => $evt->get_runtime( 'short_start_time' ),
365
- 'multiday_end_day' => $evt->get_runtime( 'multiday_end_day' ),
366
- 'start_day' => $evt->get_runtime( 'start_day' ),
367
- 'short_start_time' => $evt->get_runtime( 'short_start_time' ),
368
- 'instance_id' => $evt->get( 'instance_id' ),
369
- 'post_id' => $evt->get( 'post_id' ),
370
- 'is_allday' => $evt->is_allday(),
371
- 'is_multiday' => $evt->is_multiday(),
372
- 'venue' => $evt->get( 'venue' ),
373
- 'ticket_url' => $evt->get( 'ticket_url' ),
374
- 'start_truncated' => $evt->get( 'start_truncated' ),
375
- 'end_truncated' => $evt->get( 'end_truncated' ),
376
- 'popup_timespan' => $this->_registry
377
- ->get( 'twig.ai1ec-extension')->timespan( $evt, 'short' ),
378
- 'avatar' => $this->_registry
379
- ->get( 'twig.ai1ec-extension')->avatar(
380
- $evt,
381
- array(
382
- 'post_thumbnail',
383
- 'content_img',
384
- 'location_avatar',
385
- 'category_avatar',
386
- ),
387
- '',
388
- false ),
389
- );
390
- if (
391
- $this->_compatibility->use_backward_compatibility()
392
- ) {
393
- $event_data = $evt;
394
- }
395
- $events[] = $event_data;
396
- }
397
- $weeks[$week][] = array(
398
- 'date' => $i,
399
- 'date_link' => $this->_create_link_for_day_view( $exact_date ),
400
- 'today' =>
401
- $timestamp->format( 'Y' ) == $today->format( 'Y' ) &&
402
- $timestamp->format( 'm' ) == $today->format( 'm' ) &&
403
- $i == $today->format( 'j' ),
404
- 'events' => $events,
405
-
406
- );
407
- // If reached the end of the week, increment week
408
- if( count( $weeks[$week] ) == 7 )
409
- $week++;
410
- }
411
-
412
- // Insert any needed blank cells into last week
413
- for( $i = $last_cell_index + 1; $i < 7; $i++ ) {
414
- $weeks[$week][] = array( 'date' => null, 'events' => array() );
415
- }
416
-
417
- return $weeks;
418
- }
419
-
420
- /**
421
- * get_events_for_month function
422
- *
423
- * Return an array of all dates for the given month as an associative
424
- * array, with each element's value being another array of event objects
425
- * representing the events occuring on that date.
426
- *
427
- * @param int $time the UNIX timestamp of a date within the desired month
428
- * @param array $filter Array of filters for the events returned:
429
- * ['cat_ids'] => non-associatative array of category IDs
430
- * ['tag_ids'] => non-associatative array of tag IDs
431
- * ['post_ids'] => non-associatative array of post IDs
432
- * ['auth_ids'] => non-associatative array of author IDs
433
- *
434
- * @return array array of arrays as per function's description
435
- */
436
- protected function get_events_for_month(
437
- Ai1ec_Date_Time $time,
438
- $filter = array()
439
- ) {
440
- $last_day = $time->format( 't' );
441
-
442
- $day_entry = array(
443
- 'multi' => array(),
444
- 'allday' => array(),
445
- 'other' => array(),
446
- );
447
- $days_events = array_fill(
448
- 1,
449
- $last_day,
450
- $day_entry
451
- );
452
- unset( $day_entry );
453
- $start_time = $this->_registry->get( 'date.time', $time );
454
- $start_time->set_date(
455
- $time->format( 'Y' ),
456
- $time->format( 'm' ),
457
- 1
458
- )->set_time( 0, 0, 0 );
459
- $end_time = $this->_registry->get( 'date.time', $start_time );
460
-
461
- $end_time->adjust_month( 1 );
462
-
463
- $search = $this->_registry->get( 'model.search' );
464
- $month_events = $search->get_events_between(
465
- $start_time,
466
- $end_time,
467
- $filter,
468
- true
469
- );
470
- $start_time = $start_time->format();
471
- $end_time = $end_time->format();
472
- $this->_update_meta( $month_events );
473
- $this->_registry->get( 'controller.content-filter' )
474
- ->clear_the_content_filters();
475
- foreach ( $month_events as $event ) {
476
- $event_start = $event->get( 'start' )->format();
477
- $event_end = $event->get( 'end' )->format();
478
-
479
- /**
480
- * REASONING: we assume, that event spans multiple periods, one of
481
- * which happens to be current (month). Thus we mark, that current
482
- * event starts at the very first day of current month and further
483
- * we will mark it as having truncated beginning (unless it is not
484
- * overlapping period boundaries).
485
- * Although, if event starts after the first second of this period
486
- * it's start day will be decoded as time 'j' format (`int`-casted
487
- * to increase map access time), of it's actual start time.
488
- */
489
- $day = 1;
490
- if ( $event_start > $start_time ) {
491
- $day = (int)$event->get( 'start' )->format( 'j' );
492
- }
493
-
494
- // Set multiday properties. TODO: Should these be made event object
495
- // properties? They probably shouldn't be saved to the DB, so I'm
496
- // not sure. Just creating properties dynamically for now.
497
- if ( $event_start < $start_time ) {
498
- $event->set( 'start_truncated', true );
499
- }
500
- if ( $event_end >= $end_time ) {
501
- $event->set( 'end_truncated', true );
502
- }
503
-
504
- // Categorize event.
505
- $priority = 'other';
506
- if ( $event->is_allday() ) {
507
- $priority = 'allday';
508
- } elseif ( $event->is_multiday() ) {
509
- $priority = 'multi';
510
- }
511
- $this->_add_runtime_properties( $event );
512
- $days_events[$day][$priority][] = $event;
513
- }
514
- $this->_registry->get( 'controller.content-filter' )
515
- ->restore_the_content_filters();
516
- for ( $day = 1; $day <= $last_day; $day++ ) {
517
- $days_events[$day] = array_merge(
518
- $days_events[$day]['multi'],
519
- $days_events[$day]['allday'],
520
- $days_events[$day]['other']
521
- );
522
- }
523
-
524
- return apply_filters(
525
- 'ai1ec_get_events_for_month',
526
- $days_events,
527
- $time,
528
- $filter
529
- );
530
- }
531
-
532
- }
1
+ <?php
2
+
3
+ /**
4
+ * The concrete class for month view.
5
+ *
6
+ * @author Time.ly Network Inc.
7
+ * @since 2.0
8
+ *
9
+ * @package AI1EC
10
+ * @subpackage AI1EC.View
11
+ */
12
+ class Ai1ec_Calendar_View_Month extends Ai1ec_Calendar_View_Abstract {
13
+
14
+ /* (non-PHPdoc)
15
+ * @see Ai1ec_Calendar_View_Abstract::get_name()
16
+ */
17
+ public function get_name() {
18
+ return 'month';
19
+ }
20
+
21
+ /* (non-PHPdoc)
22
+ * @see Ai1ec_Calendar_View_Abstract::get_content()
23
+ */
24
+ public function get_content( array $view_args ) {
25
+ $date_system = $this->_registry->get( 'date.system' );
26
+ $settings = $this->_registry->get( 'model.settings' );
27
+ $defaults = array(
28
+ 'month_offset' => 0,
29
+ 'cat_ids' => array(),
30
+ 'auth_ids' => array(),
31
+ 'tag_ids' => array(),
32
+ 'post_ids' => array(),
33
+ 'instance_ids' => array(),
34
+ 'exact_date' => $date_system->current_time(),
35
+ );
36
+ $args = wp_parse_args( $view_args, $defaults );
37
+ $local_date = $this->_registry
38
+ ->get( 'date.time', $args['exact_date'], 'sys.default' );
39
+ $local_date->set_date(
40
+ $local_date->format( 'Y' ),
41
+ $local_date->format( 'm' ) + $args['month_offset'],
42
+ 1
43
+ )
44
+ ->set_time( 0, 0, 0 );
45
+
46
+ $days_events = $this->get_events_for_month(
47
+ $local_date,
48
+ apply_filters(
49
+ 'ai1ec_get_events_relative_to_filter',
50
+ array(
51
+ 'cat_ids' => $args['cat_ids'],
52
+ 'tag_ids' => $args['tag_ids'],
53
+ 'post_ids' => $args['post_ids'],
54
+ 'auth_ids' => $args['auth_ids'],
55
+ 'instance_ids' => $args['instance_ids'],
56
+ ),
57
+ $view_args,
58
+ apply_filters(
59
+ 'ai1ec_show_unique_events',
60
+ false
61
+ )
62
+ )
63
+ );
64
+ $cell_array = $this->get_month_cell_array(
65
+ $local_date,
66
+ $days_events
67
+ );
68
+ // Create pagination links.
69
+ $title = $local_date->format_i18n( 'F Y' );
70
+ $pagination_links = $this->_get_pagination( $args, $title );
71
+
72
+ $is_ticket_button_enabled = apply_filters(
73
+ 'ai1ec_month_ticket_button',
74
+ false
75
+ );
76
+
77
+ $view_args = array(
78
+ 'title' => $title,
79
+ 'type' => 'month',
80
+ 'weekdays' => $this->get_weekdays(),
81
+ 'cell_array' => $cell_array,
82
+ 'show_location_in_title' => $settings->get( 'show_location_in_title' ),
83
+ 'month_word_wrap' => $settings->get( 'month_word_wrap' ),
84
+ 'post_ids' => join( ',', $args['post_ids'] ),
85
+ 'data_type' => $args['data_type'],
86
+ 'is_ticket_button_enabled' => $is_ticket_button_enabled,
87
+ 'text_venue_separator' => __( '@ %s', AI1EC_PLUGIN_NAME ),
88
+ 'pagination_links' => $pagination_links,
89
+ );
90
+
91
+ // Add navigation if requested.
92
+ $view_args['navigation'] = $this->_get_navigation(
93
+ array(
94
+ 'no_navigation' => $args['no_navigation'],
95
+ 'pagination_links' => $pagination_links,
96
+ 'views_dropdown' => $args['views_dropdown'],
97
+ 'below_toolbar' => apply_filters(
98
+ 'ai1ec_below_toolbar',
99
+ '',
100
+ $this->get_name(),
101
+ $args
102
+ ),
103
+ )
104
+ );
105
+
106
+ $view_args = $this->get_extra_template_arguments( $view_args );
107
+
108
+ return
109
+ $this->_registry->get( 'http.request' )->is_json_required(
110
+ $args['request_format'], 'month'
111
+ )
112
+ ? $this->_apply_filters_to_args( $view_args )
113
+ : $this->_get_view( $view_args );
114
+ }
115
+
116
+ /**
117
+ * Returns a non-associative array of four links for the month view of the
118
+ * calendar:
119
+ * previous year, previous month, next month, and next year.
120
+ * Each element is an associative array containing the link's enabled status
121
+ * ['enabled'], CSS class ['class'], text ['text'] and value to assign to
122
+ * link's href ['href'].
123
+ *
124
+ * @param array $args Current request arguments
125
+ * @param string $title Title to display in datepicker button
126
+ *
127
+ * @return array Array of links
128
+ */
129
+ function get_month_pagination_links( $args, $title ) {
130
+ $links = array();
131
+
132
+ $local_date = $this->_registry
133
+ ->get( 'date.time', $args['exact_date'], 'sys.default' );
134
+ $orig_date = $this->_registry->get( 'date.time', $local_date );
135
+ $default_tz = $this->_registry->get( 'date.timezone' )->get_default_timezone();
136
+ // =================
137
+ // = Previous year =
138
+ // =================
139
+ // Align date to first of month, month offset applied, 1 year behind.
140
+ $local_date
141
+ ->set_timezone( $default_tz )
142
+ ->set_date(
143
+ $local_date->format( 'Y' ) -1,
144
+ $local_date->format( 'm' ) + $args['month_offset'],
145
+ 1
146
+ )
147
+ ->set_time( 0, 0, 0 );
148
+
149
+ $args['exact_date'] = $local_date->format();
150
+ $href = $this->_registry->get( 'html.element.href', $args );
151
+ $links[] = array(
152
+ 'enabled' => true,
153
+ 'class'=> 'ai1ec-prev-year',
154
+ 'text' => '<i class="ai1ec-fa ai1ec-fa-angle-double-left"></i> ' .
155
+ $local_date->format_i18n( 'Y' ),
156
+ 'href' => $href->generate_href(),
157
+ );
158
+
159
+ // ==================
160
+ // = Previous month =
161
+ // ==================
162
+ // Align date to first of month, month offset applied, 1 month behind.
163
+ $local_date
164
+ ->set_date(
165
+ $local_date->format( 'Y' ) + 1,
166
+ $local_date->format( 'm' ) - 1,
167
+ 1
168
+ );
169
+ $args['exact_date'] = $local_date->format();
170
+ $href = $this->_registry->get( 'html.element.href', $args );
171
+ $links[] = array(
172
+ 'enabled' => true,
173
+ 'class'=> 'ai1ec-prev-month',
174
+ 'text' => '<i class="ai1ec-fa ai1ec-fa-angle-left"></i> ' .
175
+ $local_date->format_i18n( 'M' ),
176
+ 'href' => $href->generate_href(),
177
+ );
178
+
179
+ // ======================
180
+ // = Minical datepicker =
181
+ // ======================
182
+ // Align date to first of month, month offset applied.
183
+
184
+ $orig_date
185
+ ->set_timezone('UTC')
186
+ ->set_date(
187
+ $orig_date->format( 'Y' ),
188
+ $orig_date->format( 'm' ) + $args['month_offset'],
189
+ 1
190
+ );
191
+ $args['exact_date'] = $orig_date->format();
192
+ $factory = $this->_registry->get( 'factory.html' );
193
+ $links[] = $factory->create_datepicker_link(
194
+ $args,
195
+ $args['exact_date'],
196
+ $title
197
+ );
198
+
199
+ // ==============
200
+ // = Next month =
201
+ // ==============
202
+ // Align date to first of month, month offset applied, 1 month ahead.
203
+ $orig_date
204
+ ->set_timezone( $default_tz )
205
+ ->set_date(
206
+ $orig_date->format( 'Y' ),
207
+ $orig_date->format( 'm' ) + 1,
208
+ 1
209
+ )
210
+ ->set_time( 0, 0, 0 );
211
+ $args['exact_date'] = $orig_date->format();
212
+ $href = $this->_registry->get( 'html.element.href', $args );
213
+ $links[] = array(
214
+ 'enabled' => true,
215
+ 'class'=> 'ai1ec-next-month',
216
+ 'text' => $orig_date->format_i18n( 'M' ) .
217
+ ' <i class="ai1ec-fa ai1ec-fa-angle-right"></i>',
218
+ 'href' => $href->generate_href(),
219
+ );
220
+
221
+ // =============
222
+ // = Next year =
223
+ // =============
224
+ // Align date to first of month, month offset applied, 1 year ahead.
225
+ $orig_date
226
+ ->set_date(
227
+ $orig_date->format( 'Y' ) + 1,
228
+ $orig_date->format( 'm' ) - 1,
229
+ 1
230
+ );
231
+ $args['exact_date'] = $orig_date->format();
232
+ $href = $this->_registry->get( 'html.element.href', $args );
233
+ $links[] = array(
234
+ 'enabled' => true,
235
+ 'class'=> 'ai1ec-next-year',
236
+ 'text' => $orig_date->format_i18n( 'Y' ) .
237
+ ' <i class="ai1ec-fa ai1ec-fa-angle-double-right"></i>',
238
+ 'href' => $href->generate_href(),
239
+ );
240
+
241
+ return $links;
242
+ }
243
+
244
+ /**
245
+ * get_weekdays function
246
+ *
247
+ * Returns a list of abbreviated weekday names starting on the configured
248
+ * week start day setting.
249
+ *
250
+ * @return array
251
+ */
252
+ protected function get_weekdays() {
253
+ $settings = $this->_registry->get( 'model.settings' );
254
+ static $weekdays;
255
+
256
+ if ( ! isset( $weekdays ) ) {
257
+ $time = $this->_registry->get(
258
+ 'date.time',
259
+ 'next Sunday',
260
+ 'sys.default'
261
+ );
262
+ $time->adjust_day( $settings->get( 'week_start_day' ) );
263
+
264
+ $weekdays = array();
265
+ for( $i = 0; $i < 7; $i++ ) {
266
+ $weekdays[] = $time->format_i18n( 'D' );
267
+ $time->adjust_day( 1 );// Add a day
268
+ }
269
+ }
270
+ return $weekdays;
271
+ }
272
+
273
+ /* (non-PHPdoc)
274
+ * @see Ai1ec_Calendar_View_Abstract::_add_view_specific_runtime_properties()
275
+ */
276
+ protected function _add_view_specific_runtime_properties(
277
+ Ai1ec_Event $event
278
+ ) {
279
+ $end_day = $this->_registry->get( 'date.time', $event->get( 'end' ) )
280
+ ->adjust( -1, 'second' )
281
+ ->format_i18n( 'd' );
282
+ $event->set_runtime( 'multiday_end_day', $end_day );
283
+ $event->set_runtime(
284
+ 'start_day',
285
+ $event->get( 'start' )->format( 'j' )
286
+ );
287
+ }
288
+
289
+ /**
290
+ * get_month_cell_array function
291
+ *
292
+ * Return an array of weeks, each containing an array of days, each
293
+ * containing the date for the day ['date'] (if inside the month) and
294
+ * the events ['events'] (if any) for the day, and a boolean ['today']
295
+ * indicating whether that day is today.
296
+ *
297
+ * @param int $timestamp UNIX timestamp of the 1st day of the desired
298
+ * month to display
299
+ * @param array $days_events list of events for each day of the month in
300
+ * the format returned by get_events_for_month()
301
+ *
302
+ * @return void
303
+ */
304
+ protected function get_month_cell_array( Ai1ec_Date_Time $timestamp, $days_events ) {
305
+ $settings = $this->_registry->get( 'model.settings' );
306
+ $date_system = $this->_registry->get( 'date.system' );
307
+ $today = $this->_registry->get( 'date.time' );// Used to flag today's cell
308
+
309
+ // Figure out index of first table cell
310
+ $first_cell_index = $timestamp->format( 'w' );
311
+ // Modify weekday based on start of week setting
312
+ $first_cell_index = ( 7 + $first_cell_index - $settings->get( 'week_start_day' ) ) % 7;
313
+
314
+ // Get the last day of the month
315
+ $last_day = $timestamp->format( 't' );
316
+ $last_timestamp = $this->_registry->get( 'date.time', $timestamp );
317
+ $last_timestamp->set_date(
318
+ $timestamp->format( 'Y' ),
319
+ $timestamp->format( 'm' ),
320
+ $last_day
321
+ )->set_time( 0, 0, 0 );
322
+ // Figure out index of last table cell
323
+ $last_cell_index = $last_timestamp->format( 'w' );
324
+ // Modify weekday based on start of week setting
325
+ $last_cell_index = ( 7 + $last_cell_index - $settings->get( 'week_start_day' ) ) % 7;
326
+
327
+ $weeks = array();
328
+ $week = 0;
329
+ $weeks[$week] = array();
330
+
331
+ // Insert any needed blank cells into first week
332
+ for( $i = 0; $i < $first_cell_index; $i++ ) {
333
+ $weeks[$week][] = array(
334
+ 'date' => null,
335
+ 'events' => array(),
336
+ 'date_link' => null
337
+ );
338
+ }
339
+
340
+ // Insert each month's day and associated events
341
+ for( $i = 1; $i <= $last_day; $i++ ) {
342
+ $day = $this->_registry->get( 'date.time' )
343
+ ->set_date(
344
+ $timestamp->format( 'Y' ),
345
+ $timestamp->format( 'm' ),
346
+ $i
347
+ )
348
+ ->set_time( 0, 0, 0 )
349
+ ->format();
350
+ $exact_date = $date_system->format_date_for_url(
351
+ $day,
352
+ $settings->get( 'input_date_format' )
353
+ );
354
+ $events = array();
355
+ foreach ( $days_events[$i] as $evt ){
356
+ $event_data = array(
357
+ 'filtered_title' => $evt->get_runtime( 'filtered_title' ),
358
+ 'post_excerpt' => $evt->get_runtime( 'post_excerpt' ),
359
+ 'color_style' => $evt->get_runtime( 'color_style' ),
360
+ 'category_colors' => $evt->get_runtime( 'category_colors' ),
361
+ 'permalink' => $evt->get_runtime( 'instance_permalink' ),
362
+ 'ticket_url_label' => $evt->get_runtime( 'ticket_url_label' ),
363
+ 'edit_post_link' => $evt->get_runtime( 'edit_post_link' ),
364
+ 'short_start_time' => $evt->get_runtime( 'short_start_time' ),
365
+ 'multiday_end_day' => $evt->get_runtime( 'multiday_end_day' ),
366
+ 'start_day' => $evt->get_runtime( 'start_day' ),
367
+ 'short_start_time' => $evt->get_runtime( 'short_start_time' ),
368
+ 'instance_id' => $evt->get( 'instance_id' ),
369
+ 'post_id' => $evt->get( 'post_id' ),
370
+ 'is_allday' => $evt->is_allday(),
371
+ 'is_multiday' => $evt->is_multiday(),
372
+ 'venue' => $evt->get( 'venue' ),
373
+ 'ticket_url' => $evt->get( 'ticket_url' ),
374
+ 'start_truncated' => $evt->get( 'start_truncated' ),
375
+ 'end_truncated' => $evt->get( 'end_truncated' ),
376
+ 'popup_timespan' => $this->_registry
377
+ ->get( 'twig.ai1ec-extension')->timespan( $evt, 'short' ),
378
+ 'avatar' => $this->_registry
379
+ ->get( 'twig.ai1ec-extension')->avatar(
380
+ $evt,
381
+ array(
382
+ 'post_thumbnail',
383
+ 'content_img',
384
+ 'location_avatar',
385
+ 'category_avatar',
386
+ ),
387
+ '',
388
+ false ),
389
+ );
390
+ if (
391
+ $this->_compatibility->use_backward_compatibility()
392
+ ) {
393
+ $event_data = $evt;
394
+ }
395
+ $events[] = $event_data;
396
+ }
397
+ $weeks[$week][] = array(
398
+ 'date' => $i,
399
+ 'date_link' => $this->_create_link_for_day_view( $exact_date ),
400
+ 'today' =>
401
+ $timestamp->format( 'Y' ) == $today->format( 'Y' ) &&
402
+ $timestamp->format( 'm' ) == $today->format( 'm' ) &&
403
+ $i == $today->format( 'j' ),
404
+ 'events' => $events,
405
+
406
+ );
407
+ // If reached the end of the week, increment week
408
+ if( count( $weeks[$week] ) == 7 )
409
+ $week++;
410
+ }
411
+
412
+ // Insert any needed blank cells into last week
413
+ for( $i = $last_cell_index + 1; $i < 7; $i++ ) {
414
+ $weeks[$week][] = array( 'date' => null, 'events' => array() );
415
+ }
416
+
417
+ return $weeks;
418
+ }
419
+
420
+ /**
421
+ * get_events_for_month function
422
+ *
423
+ * Return an array of all dates for the given month as an associative
424
+ * array, with each element's value being another array of event objects
425
+ * representing the events occuring on that date.
426
+ *
427
+ * @param int $time the UNIX timestamp of a date within the desired month
428
+ * @param array $filter Array of filters for the events returned:
429
+ * ['cat_ids'] => non-associatative array of category IDs
430
+ * ['tag_ids'] => non-associatative array of tag IDs
431
+ * ['post_ids'] => non-associatative array of post IDs
432
+ * ['auth_ids'] => non-associatative array of author IDs
433
+ *
434
+ * @return array array of arrays as per function's description
435
+ */
436
+ protected function get_events_for_month(
437
+ Ai1ec_Date_Time $time,
438
+ $filter = array()
439
+ ) {
440
+ $last_day = $time->format( 't' );
441
+
442
+ $day_entry = array(
443
+ 'multi' => array(),
444
+ 'allday' => array(),
445
+ 'other' => array(),
446
+ );
447
+ $days_events = array_fill(
448
+ 1,
449
+ $last_day,
450
+ $day_entry
451
+ );
452
+ unset( $day_entry );
453
+ $start_time = $this->_registry->get( 'date.time', $time );
454
+ $start_time->set_date(
455
+ $time->format( 'Y' ),
456
+ $time->format( 'm' ),
457
+ 1
458
+ )->set_time( 0, 0, 0 );
459
+ $end_time = $this->_registry->get( 'date.time', $start_time );
460
+
461
+ $end_time->adjust_month( 1 );
462
+
463
+ $search = $this->_registry->get( 'model.search' );
464
+ $month_events = $search->get_events_between(
465
+ $start_time,
466
+ $end_time,
467
+ $filter,
468
+ true
469
+ );
470
+ $start_time = $start_time->format();
471
+ $end_time = $end_time->format();
472
+ $this->_update_meta( $month_events );
473
+ $this->_registry->get( 'controller.content-filter' )
474
+ ->clear_the_content_filters();
475
+ foreach ( $month_events as $event ) {
476
+ $event_start = $event->get( 'start' )->format();
477
+ $event_end = $event->get( 'end' )->format();
478
+
479
+ /**
480
+ * REASONING: we assume, that event spans multiple periods, one of
481
+ * which happens to be current (month). Thus we mark, that current
482
+ * event starts at the very first day of current month and further
483
+ * we will mark it as having truncated beginning (unless it is not
484
+ * overlapping period boundaries).
485
+ * Although, if event starts after the first second of this period
486
+ * it's start day will be decoded as time 'j' format (`int`-casted
487
+ * to increase map access time), of it's actual start time.
488
+ */
489
+ $day = 1;
490
+ if ( $event_start > $start_time ) {
491
+ $day = (int)$event->get( 'start' )->format( 'j' );
492
+ }
493
+
494
+ // Set multiday properties. TODO: Should these be made event object
495
+ // properties? They probably shouldn't be saved to the DB, so I'm
496
+ // not sure. Just creating properties dynamically for now.
497
+ if ( $event_start < $start_time ) {
498
+ $event->set( 'start_truncated', true );
499
+ }
500
+ if ( $event_end >= $end_time ) {
501
+ $event->set( 'end_truncated', true );
502
+ }
503
+
504
+ // Categorize event.
505
+ $priority = 'other';
506
+ if ( $event->is_allday() ) {
507
+ $priority = 'allday';
508
+ } elseif ( $event->is_multiday() ) {
509
+ $priority = 'multi';
510
+ }
511
+ $this->_add_runtime_properties( $event );
512
+ $days_events[$day][$priority][] = $event;
513
+ }
514
+ $this->_registry->get( 'controller.content-filter' )
515
+ ->restore_the_content_filters();
516
+ for ( $day = 1; $day <= $last_day; $day++ ) {
517
+ $days_events[$day] = array_merge(
518
+ $days_events[$day]['multi'],
519
+ $days_events[$day]['allday'],
520
+ $days_events[$day]['other']
521
+ );
522
+ }
523
+
524
+ return apply_filters(
525
+ 'ai1ec_get_events_for_month',
526
+ $days_events,
527
+ $time,
528
+ $filter
529
+ );
530
+ }
531
+
532
+ }
app/view/event/content.php CHANGED
@@ -105,7 +105,7 @@ class Ai1ec_View_Event_Content extends Ai1ec_Base {
105
  }
106
 
107
  /**
108
- * Generate the html for the "Back to calendar" button for this event.
109
  *
110
  * @return string
111
  */
@@ -122,7 +122,7 @@ class Ai1ec_View_Event_Content extends Ai1ec_Base {
122
  $href = $this->_registry->get( 'html.element.href', array() );
123
  $href = $href->generate_href();
124
  }
125
- $text = esc_attr( Ai1ec_I18n::__( 'Back to Calendar' ) );
126
  $tooltip = esc_attr( Ai1ec_I18n::__( 'View all events' ) );
127
  $html = <<<HTML
128
  <a class="ai1ec-calendar-link ai1ec-btn ai1ec-btn-default ai1ec-btn-sm
105
  }
106
 
107
  /**
108
+ * Generate the html for the "Calendar" button for this event.
109
  *
110
  * @return string
111
  */
122
  $href = $this->_registry->get( 'html.element.href', array() );
123
  $href = $href->generate_href();
124
  }
125
+ $text = esc_attr( Ai1ec_I18n::__( 'Calendar' ) );
126
  $tooltip = esc_attr( Ai1ec_I18n::__( 'View all events' ) );
127
  $html = <<<HTML
128
  <a class="ai1ec-calendar-link ai1ec-btn ai1ec-btn-default ai1ec-btn-sm
app/view/event/single.php CHANGED
@@ -89,6 +89,8 @@ class Ai1ec_View_Event_Single extends Ai1ec_Base {
89
  // objects are passed by reference so an action is ok
90
  do_action( 'ai1ec_single_event_page_before_render', $event );
91
 
 
 
92
  $args = array(
93
  'event' => $event,
94
  'recurrence' => $rrule->rrule_to_text( $event->get( 'recurrence_rules' ) ),
@@ -96,6 +98,7 @@ class Ai1ec_View_Event_Single extends Ai1ec_Base {
96
  'categories' => $taxonomy->get_categories_html( $event ),
97
  'tags' => $taxonomy->get_tags_html( $event ),
98
  'location' => $venues_html,
 
99
  'map' => $location->get_map_view( $event ),
100
  'contact' => $ticket->get_contact_html( $event ),
101
  'back_to_calendar' => $content->get_back_to_calendar_button_html(),
@@ -201,5 +204,4 @@ class Ai1ec_View_Event_Single extends Ai1ec_Base {
201
  return $loader->get_file( 'event-single-full.twig', $args, false )
202
  ->get_content();
203
  }
204
-
205
  }
89
  // objects are passed by reference so an action is ok
90
  do_action( 'ai1ec_single_event_page_before_render', $event );
91
 
92
+ $filter_groups_html = apply_filters( 'ai1ec_get_filter_groups_html', $event );
93
+
94
  $args = array(
95
  'event' => $event,
96
  'recurrence' => $rrule->rrule_to_text( $event->get( 'recurrence_rules' ) ),
98
  'categories' => $taxonomy->get_categories_html( $event ),
99
  'tags' => $taxonomy->get_tags_html( $event ),
100
  'location' => $venues_html,
101
+ 'filter_groups' => $filter_groups_html,
102
  'map' => $location->get_map_view( $event ),
103
  'contact' => $ticket->get_contact_html( $event ),
104
  'back_to_calendar' => $content->get_back_to_calendar_button_html(),
204
  return $loader->get_file( 'event-single-full.twig', $args, false )
205
  ->get_content();
206
  }
 
207
  }
app/view/event/taxonomy.php CHANGED
@@ -319,6 +319,77 @@ class Ai1ec_View_Event_Taxonomy extends Ai1ec_Base {
319
  return implode( ' ', $tags );
320
  }
321
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
322
  public function __construct( Ai1ec_Registry_Object $registry ) {
323
  parent::__construct( $registry );
324
  $this->_taxonomy_model = $this->_registry->get( 'model.taxonomy' );
319
  return implode( ' ', $tags );
320
  }
321
 
322
+ /**
323
+ * Filter Groups as HTML, either as blocks or inline.
324
+ *
325
+ * @param Ai1ec_Event $event Rendered Event.
326
+ * @param array $filter_group Filter Group (Option Model)
327
+ * @param string $format Return 'blocks' or 'inline' formatted result.
328
+ *
329
+ * @return string String of HTML for filter group blocks.
330
+ */
331
+ public function get_filter_group_html(
332
+ Ai1ec_Event $event,
333
+ $filter_group,
334
+ $format = 'blocks'
335
+ ) {
336
+
337
+ $filter_groups = $this->_taxonomy_model->get_post_taxonomy(
338
+ $event->get( 'post_id' ), $filter_group['taxonomy_name']
339
+ );
340
+
341
+ $icon_name = '';
342
+ if ( 'ai1eccfgi-null' !== $filter_group['icon'] ) {
343
+ $icon_name = $filter_group['icon'];
344
+ } else {
345
+ $icon_name = 'ai1ec-icon-timely';
346
+ }
347
+
348
+ foreach ( $filter_groups as &$group ) {
349
+ $href = $this->_registry->get(
350
+ 'html.element.href',
351
+ array( $filter_group['taxonomy_name'] . '_ids' => $group->term_id )
352
+ );
353
+
354
+ $class = $data_type = $title = '';
355
+ if ( $group->description ) {
356
+ $title = 'title="' .
357
+ esc_attr( $group->description ) . '" ';
358
+ }
359
+
360
+ $html = '';
361
+ $class .= ' ai1ec-category';
362
+ $color_style = '';
363
+ if ( 'inline' === $format ) {
364
+ $taxonomy = $this->_registry->get( 'model.taxonomy' );
365
+ $color_style = $taxonomy->get_category_color(
366
+ $group->term_id
367
+ );
368
+ if ( $color_style !== '' ) {
369
+ $color_style = 'style="color: ' . $color_style . ';" ';
370
+ }
371
+ $class .= '-inline';
372
+ }
373
+
374
+ $html .= '<a ' . $data_type . ' class="' . $class .
375
+ ' ai1ec-term-id-' . $group->term_id . ' p-category" ' .
376
+ $title . $color_style . 'href="' . $href->generate_href() . '">';
377
+
378
+ if ( 'blocks' === $format ) {
379
+ $html .= $this->get_category_color_square($group->term_id) . ' ';
380
+ } else {
381
+ $html = $html
382
+ . '<i ' . $color_style . ' class="ai1ec-fa '
383
+ . $icon_name . '"></i>';
384
+ }
385
+
386
+ $html .= esc_html( $group->name ) . '</a>';
387
+ $group = $html;
388
+ }
389
+
390
+ return implode( ' ', $filter_groups );
391
+ }
392
+
393
  public function __construct( Ai1ec_Registry_Object $registry ) {
394
  parent::__construct( $registry );
395
  $this->_taxonomy_model = $this->_registry->get( 'model.taxonomy' );
language/all-in-one-event-calendar.mo CHANGED
Binary file
language/all-in-one-event-calendar.po CHANGED
@@ -1,14 +1,14 @@
1
- # Copyright (C) 2015 All-in-One Event Calendar by Time.ly
2
  # This file is distributed under the same license as the All-in-One Event Calendar by Time.ly package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: All-in-One Event Calendar by Time.ly 2.3.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
7
- "POT-Creation-Date: 2015-08-19 10:17:47+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: 2015-08-19 18:17+0800\n"
12
  "Last-Translator: Timely <support@time.ly>\n"
13
  "Language-Team:\n"
14
 
@@ -662,7 +662,7 @@ msgid "week(s)"
662
  msgstr "week(s)"
663
 
664
  #: app/view/admin/get-repeat-box.php:413 app/view/admin/get-repeat-box.php:485
665
- #: lib/recurrence/rule.php:297
666
  msgid "last"
667
  msgstr "last"
668
 
@@ -924,15 +924,15 @@ msgstr ""
924
  "Calendar was unable to initialize %s view and has reverted to Agenda view. "
925
  "Please check if you have installed the latest versions of calendar add-ons."
926
 
927
- #: app/view/calendar/page.php:268
928
  msgid "Subscribe to filtered calendar"
929
  msgstr "Subscribe to filtered calendar"
930
 
931
- #: app/view/calendar/page.php:269
932
  msgid "Subscribe"
933
  msgstr "Subscribe"
934
 
935
- #: app/view/calendar/page.php:270 app/view/event/single.php:115
936
  msgid "Get a Timely Calendar"
937
  msgstr "Get a Timely Calendar"
938
 
@@ -984,7 +984,7 @@ msgstr "Subscribe to this calendar in another plain-text calendar"
984
  msgid "Clear category filter"
985
  msgstr "Clear category filter"
986
 
987
- #: app/view/calendar/taxonomy.php:98 app/view/event/single.php:121
988
  #: lib/html/element/setting/tags-categories.php:47
989
  msgid "Categories"
990
  msgstr "Categories"
@@ -993,42 +993,42 @@ msgstr "Categories"
993
  msgid "Clear tag filter"
994
  msgstr "Clear tag filter"
995
 
996
- #: app/view/calendar/taxonomy.php:100 app/view/event/single.php:122
997
  #: lib/html/element/setting/tags-categories.php:39
998
  msgid "Tags"
999
  msgstr "Tags"
1000
 
1001
- #: app/view/calendar/view/agenda.php:129
1002
  msgid "Collapse All"
1003
  msgstr "Collapse All"
1004
 
1005
- #: app/view/calendar/view/agenda.php:130
1006
  msgid "Expand All"
1007
  msgstr "Expand All"
1008
 
1009
- #: app/view/calendar/view/agenda.php:153
1010
  msgid "There are no upcoming events to display at this time."
1011
  msgstr "There are no upcoming events to display at this time."
1012
 
1013
- #: app/view/calendar/view/agenda.php:154 app/view/calendar/widget.php:373
1014
  #: public/admin/feed_row.php:112
1015
  msgid "Edit"
1016
  msgstr "Edit"
1017
 
1018
- #: app/view/calendar/view/agenda.php:155
1019
  msgid "Read more"
1020
  msgstr "Read more"
1021
 
1022
- #: app/view/calendar/view/agenda.php:156
1023
  msgid "Categories:"
1024
  msgstr "Categories:"
1025
 
1026
- #: app/view/calendar/view/agenda.php:157 lib/theme/list.php:320
1027
  #: public/admin/themes.php:29
1028
  msgid "Tags:"
1029
  msgstr "Tags:"
1030
 
1031
- #: app/view/calendar/view/agenda.php:158 app/view/calendar/view/month.php:87
1032
  #: app/view/calendar/view/oneday.php:105 app/view/calendar/view/week.php:118
1033
  #: app/view/calendar/widget.php:374
1034
  msgid "@ %s"
@@ -1106,17 +1106,17 @@ msgstr "View Calendar"
1106
  msgid "Add"
1107
  msgstr "Add"
1108
 
1109
- #: app/view/event/content.php:33 app/view/event/single.php:116
1110
  msgid "When:"
1111
  msgstr "When:"
1112
 
1113
- #: app/view/event/content.php:34 app/view/event/single.php:117
1114
  msgid "Where:"
1115
  msgstr "Where:"
1116
 
1117
  #: app/view/event/content.php:125
1118
- msgid "Back to Calendar"
1119
- msgstr "Back to Calendar"
1120
 
1121
  #: app/view/event/content.php:126
1122
  msgid "View all events"
@@ -1185,27 +1185,27 @@ msgstr ""
1185
  msgid "Event was created in the %s time zone"
1186
  msgstr "Event was created in the %s time zone"
1187
 
1188
- #: app/view/event/single.php:111
1189
  msgid "Add to Calendar"
1190
  msgstr "Add to Calendar"
1191
 
1192
- #: app/view/event/single.php:118
1193
  msgid "Cost:"
1194
  msgstr "Cost:"
1195
 
1196
- #: app/view/event/single.php:119
1197
  msgid "Contact:"
1198
  msgstr "Contact:"
1199
 
1200
- #: app/view/event/single.php:120
1201
  msgid "Free"
1202
  msgstr "Free"
1203
 
1204
- #: app/view/event/single.php:145
1205
  msgid "Edit this occurrence (%s)"
1206
  msgstr "Edit this occurrence (%s)"
1207
 
1208
- #: app/view/event/single.php:160
1209
  msgid ""
1210
  "This post was replicated from another site's <a href=\"%s\" title="
1211
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
@@ -1215,7 +1215,7 @@ msgstr ""
1215
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
1216
  "feed</a>."
1217
 
1218
- #: app/view/event/single.php:171
1219
  msgid "View original"
1220
  msgstr "View original"
1221
 
@@ -1261,6 +1261,19 @@ msgstr " – "
1261
  msgid ", and "
1262
  msgstr ", and "
1263
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1264
  #: lib/calendar-feed/ics.php:38
1265
  msgid "ICS"
1266
  msgstr "ICS"
@@ -1295,41 +1308,41 @@ msgid_plural "Imported %s events"
1295
  msgstr[0] "Imported %s event"
1296
  msgstr[1] "Imported %s events"
1297
 
1298
- #: lib/calendar-feed/ics.php:202 lib/calendar-feed/ics.php:707
1299
  msgid "Invalid ICS feed ID"
1300
  msgstr "Invalid ICS feed ID"
1301
 
1302
- #: lib/calendar-feed/ics.php:350
1303
  msgid "Categories (optional)"
1304
  msgstr "Categories (optional)"
1305
 
1306
- #: lib/calendar-feed/ics.php:367
1307
  msgid ""
1308
  "Do you want to keep the events imported from the calendar or remove them?"
1309
  msgstr ""
1310
  "Do you want to keep the events imported from the calendar or remove them?"
1311
 
1312
- #: lib/calendar-feed/ics.php:373
1313
  msgid "Removing ICS Feed"
1314
  msgstr "Removing ICS Feed"
1315
 
1316
- #: lib/calendar-feed/ics.php:376
1317
  msgid "Keep Events"
1318
  msgstr "Keep Events"
1319
 
1320
- #: lib/calendar-feed/ics.php:379
1321
  msgid "Remove Events"
1322
  msgstr "Remove Events"
1323
 
1324
- #: lib/calendar-feed/ics.php:519
1325
  msgid "Oh, submission was not accepted."
1326
  msgstr "Oh, submission was not accepted."
1327
 
1328
- #: lib/calendar-feed/ics.php:699
1329
  msgid "Deleted %d events"
1330
  msgstr "Deleted %d events"
1331
 
1332
- #: lib/calendar-feed/ics.php:735
1333
  msgid "Feed deleted"
1334
  msgstr "Feed deleted"
1335
 
@@ -1393,7 +1406,7 @@ msgstr ""
1393
  "<p>The event <strong>%s</strong> was cloned succesfully. <a href=\"%s\">Edit "
1394
  "cloned event</a></p>"
1395
 
1396
- #: lib/compatibility/check.php:63
1397
  msgid ""
1398
  "You have turned on Frontend Rendering and you are using a custom calendar "
1399
  "theme. If your theme does not support Frontend Rendering, your calendar may "
@@ -1471,7 +1484,7 @@ msgstr ""
1471
  msgid "Error encountered: %s"
1472
  msgstr "Error encountered: %s"
1473
 
1474
- #: lib/date/system.php:176
1475
  msgid "GMT%+d:%02d"
1476
  msgstr "GMT%+d:%02d"
1477
 
@@ -1753,6 +1766,10 @@ msgstr ""
1753
  "page. Do not attempt to embed the calendar via shortcode in a page that "
1754
  "already displays the calendar."
1755
 
 
 
 
 
1756
  #: lib/less/variable/font.php:64
1757
  msgid "Custom..."
1758
  msgstr "Custom..."
@@ -1877,12 +1894,12 @@ msgid "on"
1877
  msgstr "on"
1878
 
1879
  #: lib/recurrence/rule.php:248 lib/recurrence/rule.php:277
1880
- #: lib/recurrence/rule.php:325
1881
  msgid "and"
1882
  msgstr "and"
1883
 
1884
  #: lib/recurrence/rule.php:273 lib/recurrence/rule.php:280
1885
- #: lib/recurrence/rule.php:286 lib/recurrence/rule.php:307
1886
  msgctxt "Recurrence editor - monthly tab"
1887
  msgid "on"
1888
  msgstr "on"
@@ -1892,70 +1909,70 @@ msgstr "on"
1892
  msgid "of the month"
1893
  msgstr "of the month"
1894
 
1895
- #: lib/recurrence/rule.php:320 lib/recurrence/rule.php:328
1896
- #: lib/recurrence/rule.php:335
1897
  msgctxt "Recurrence editor - yearly tab"
1898
  msgid "on"
1899
  msgstr "on"
1900
 
1901
- #: lib/recurrence/rule.php:375 public/admin/box_repeat.php:16
1902
  #: public/admin/cron_freq.php:9
1903
  msgid "Daily"
1904
  msgstr "Daily"
1905
 
1906
- #: lib/recurrence/rule.php:378
1907
  msgid "Every other day"
1908
  msgstr "Every other day"
1909
 
1910
- #: lib/recurrence/rule.php:381
1911
  msgid "Every %d days"
1912
  msgstr "Every %d days"
1913
 
1914
- #: lib/recurrence/rule.php:390 public/admin/box_repeat.php:21
1915
  msgid "Weekly"
1916
  msgstr "Weekly"
1917
 
1918
- #: lib/recurrence/rule.php:393
1919
  msgid "Every other week"
1920
  msgstr "Every other week"
1921
 
1922
- #: lib/recurrence/rule.php:396
1923
  msgid "Every %d weeks"
1924
  msgstr "Every %d weeks"
1925
 
1926
- #: lib/recurrence/rule.php:405 public/admin/box_repeat.php:26
1927
  msgid "Monthly"
1928
  msgstr "Monthly"
1929
 
1930
- #: lib/recurrence/rule.php:408
1931
  msgid "Every other month"
1932
  msgstr "Every other month"
1933
 
1934
- #: lib/recurrence/rule.php:411
1935
  msgid "Every %d months"
1936
  msgstr "Every %d months"
1937
 
1938
- #: lib/recurrence/rule.php:420 public/admin/box_repeat.php:31
1939
  msgid "Yearly"
1940
  msgstr "Yearly"
1941
 
1942
- #: lib/recurrence/rule.php:423
1943
  msgid "Every other year"
1944
  msgstr "Every other year"
1945
 
1946
- #: lib/recurrence/rule.php:426
1947
  msgid "Every %d years"
1948
  msgstr "Every %d years"
1949
 
1950
- #: lib/recurrence/rule.php:464
1951
  msgid "until %s"
1952
  msgstr "until %s"
1953
 
1954
- #: lib/recurrence/rule.php:474
1955
  msgid "for %d occurrences"
1956
  msgstr "for %d occurrences"
1957
 
1958
- #: lib/recurrence/rule.php:478
1959
  msgid "forever"
1960
  msgstr "forever"
1961
 
@@ -2086,10 +2103,6 @@ msgstr ""
2086
  "The calendar is temporarily disabled due to a rendering error. Please <a "
2087
  "href=\"javascript:location.reload();\">reload the page</a>."
2088
 
2089
- #: public/admin/agenda-widget-form.php:2
2090
- msgid "Title:"
2091
- msgstr "Title:"
2092
-
2093
  #: public/admin/agenda-widget-form.php:12
2094
  msgid "Number of events to show:"
2095
  msgstr "Number of events to show:"
@@ -2898,9 +2911,9 @@ msgstr "Today background"
2898
  msgid "All-in-One Event Calendar by Time.ly"
2899
  msgstr "All-in-One Event Calendar by Time.ly"
2900
 
2901
- #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.1) #-#-#-#-#
2902
  #. Plugin URI of the plugin/theme
2903
- #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.1) #-#-#-#-#
2904
  #. Author URI of the plugin/theme
2905
  msgid "http://time.ly/"
2906
  msgstr "http://time.ly/"
1
+ # Copyright (C) 2016 All-in-One Event Calendar by Time.ly
2
  # This file is distributed under the same license as the All-in-One Event Calendar by Time.ly package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: All-in-One Event Calendar by Time.ly 2.3.5\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
7
+ "POT-Creation-Date: 2016-01-06 22:06:06+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2016-01-06 20:06-0200\n"
12
  "Last-Translator: Timely <support@time.ly>\n"
13
  "Language-Team:\n"
14
 
662
  msgstr "week(s)"
663
 
664
  #: app/view/admin/get-repeat-box.php:413 app/view/admin/get-repeat-box.php:485
665
+ #: lib/recurrence/rule.php:298
666
  msgid "last"
667
  msgstr "last"
668
 
924
  "Calendar was unable to initialize %s view and has reverted to Agenda view. "
925
  "Please check if you have installed the latest versions of calendar add-ons."
926
 
927
+ #: app/view/calendar/page.php:260
928
  msgid "Subscribe to filtered calendar"
929
  msgstr "Subscribe to filtered calendar"
930
 
931
+ #: app/view/calendar/page.php:261
932
  msgid "Subscribe"
933
  msgstr "Subscribe"
934
 
935
+ #: app/view/calendar/page.php:262 app/view/event/single.php:118
936
  msgid "Get a Timely Calendar"
937
  msgstr "Get a Timely Calendar"
938
 
984
  msgid "Clear category filter"
985
  msgstr "Clear category filter"
986
 
987
+ #: app/view/calendar/taxonomy.php:98 app/view/event/single.php:124
988
  #: lib/html/element/setting/tags-categories.php:47
989
  msgid "Categories"
990
  msgstr "Categories"
993
  msgid "Clear tag filter"
994
  msgstr "Clear tag filter"
995
 
996
+ #: app/view/calendar/taxonomy.php:100 app/view/event/single.php:125
997
  #: lib/html/element/setting/tags-categories.php:39
998
  msgid "Tags"
999
  msgstr "Tags"
1000
 
1001
+ #: app/view/calendar/view/agenda.php:142
1002
  msgid "Collapse All"
1003
  msgstr "Collapse All"
1004
 
1005
+ #: app/view/calendar/view/agenda.php:143
1006
  msgid "Expand All"
1007
  msgstr "Expand All"
1008
 
1009
+ #: app/view/calendar/view/agenda.php:166
1010
  msgid "There are no upcoming events to display at this time."
1011
  msgstr "There are no upcoming events to display at this time."
1012
 
1013
+ #: app/view/calendar/view/agenda.php:167 app/view/calendar/widget.php:373
1014
  #: public/admin/feed_row.php:112
1015
  msgid "Edit"
1016
  msgstr "Edit"
1017
 
1018
+ #: app/view/calendar/view/agenda.php:168
1019
  msgid "Read more"
1020
  msgstr "Read more"
1021
 
1022
+ #: app/view/calendar/view/agenda.php:169
1023
  msgid "Categories:"
1024
  msgstr "Categories:"
1025
 
1026
+ #: app/view/calendar/view/agenda.php:170 lib/theme/list.php:320
1027
  #: public/admin/themes.php:29
1028
  msgid "Tags:"
1029
  msgstr "Tags:"
1030
 
1031
+ #: app/view/calendar/view/agenda.php:171 app/view/calendar/view/month.php:87
1032
  #: app/view/calendar/view/oneday.php:105 app/view/calendar/view/week.php:118
1033
  #: app/view/calendar/widget.php:374
1034
  msgid "@ %s"
1106
  msgid "Add"
1107
  msgstr "Add"
1108
 
1109
+ #: app/view/event/content.php:33 app/view/event/single.php:119
1110
  msgid "When:"
1111
  msgstr "When:"
1112
 
1113
+ #: app/view/event/content.php:34 app/view/event/single.php:120
1114
  msgid "Where:"
1115
  msgstr "Where:"
1116
 
1117
  #: app/view/event/content.php:125
1118
+ msgid "Calendar"
1119
+ msgstr "Calendar"
1120
 
1121
  #: app/view/event/content.php:126
1122
  msgid "View all events"
1185
  msgid "Event was created in the %s time zone"
1186
  msgstr "Event was created in the %s time zone"
1187
 
1188
+ #: app/view/event/single.php:114
1189
  msgid "Add to Calendar"
1190
  msgstr "Add to Calendar"
1191
 
1192
+ #: app/view/event/single.php:121
1193
  msgid "Cost:"
1194
  msgstr "Cost:"
1195
 
1196
+ #: app/view/event/single.php:122
1197
  msgid "Contact:"
1198
  msgstr "Contact:"
1199
 
1200
+ #: app/view/event/single.php:123
1201
  msgid "Free"
1202
  msgstr "Free"
1203
 
1204
+ #: app/view/event/single.php:148
1205
  msgid "Edit this occurrence (%s)"
1206
  msgstr "Edit this occurrence (%s)"
1207
 
1208
+ #: app/view/event/single.php:163
1209
  msgid ""
1210
  "This post was replicated from another site's <a href=\"%s\" title="
1211
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
1215
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
1216
  "feed</a>."
1217
 
1218
+ #: app/view/event/single.php:174
1219
  msgid "View original"
1220
  msgstr "View original"
1221
 
1261
  msgid ", and "
1262
  msgstr ", and "
1263
 
1264
+ #: cache/twig/64/6d/6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c.php:24
1265
+ #: public/admin/agenda-widget-form.php:2
1266
+ msgid "Title:"
1267
+ msgstr "Title:"
1268
+
1269
+ #: cache/twig/dc/78/b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php:37
1270
+ msgid "Excludes: "
1271
+ msgstr "Excludes: "
1272
+
1273
+ #: cache/twig/dc/78/b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php:48
1274
+ msgid "Repeats"
1275
+ msgstr "Repeats"
1276
+
1277
  #: lib/calendar-feed/ics.php:38
1278
  msgid "ICS"
1279
  msgstr "ICS"
1308
  msgstr[0] "Imported %s event"
1309
  msgstr[1] "Imported %s events"
1310
 
1311
+ #: lib/calendar-feed/ics.php:202 lib/calendar-feed/ics.php:711
1312
  msgid "Invalid ICS feed ID"
1313
  msgstr "Invalid ICS feed ID"
1314
 
1315
+ #: lib/calendar-feed/ics.php:354
1316
  msgid "Categories (optional)"
1317
  msgstr "Categories (optional)"
1318
 
1319
+ #: lib/calendar-feed/ics.php:371
1320
  msgid ""
1321
  "Do you want to keep the events imported from the calendar or remove them?"
1322
  msgstr ""
1323
  "Do you want to keep the events imported from the calendar or remove them?"
1324
 
1325
+ #: lib/calendar-feed/ics.php:377
1326
  msgid "Removing ICS Feed"
1327
  msgstr "Removing ICS Feed"
1328
 
1329
+ #: lib/calendar-feed/ics.php:380
1330
  msgid "Keep Events"
1331
  msgstr "Keep Events"
1332
 
1333
+ #: lib/calendar-feed/ics.php:383
1334
  msgid "Remove Events"
1335
  msgstr "Remove Events"
1336
 
1337
+ #: lib/calendar-feed/ics.php:523
1338
  msgid "Oh, submission was not accepted."
1339
  msgstr "Oh, submission was not accepted."
1340
 
1341
+ #: lib/calendar-feed/ics.php:703
1342
  msgid "Deleted %d events"
1343
  msgstr "Deleted %d events"
1344
 
1345
+ #: lib/calendar-feed/ics.php:739
1346
  msgid "Feed deleted"
1347
  msgstr "Feed deleted"
1348
 
1406
  "<p>The event <strong>%s</strong> was cloned succesfully. <a href=\"%s\">Edit "
1407
  "cloned event</a></p>"
1408
 
1409
+ #: lib/compatibility/check.php:101
1410
  msgid ""
1411
  "You have turned on Frontend Rendering and you are using a custom calendar "
1412
  "theme. If your theme does not support Frontend Rendering, your calendar may "
1484
  msgid "Error encountered: %s"
1485
  msgstr "Error encountered: %s"
1486
 
1487
+ #: lib/date/system.php:202
1488
  msgid "GMT%+d:%02d"
1489
  msgstr "GMT%+d:%02d"
1490
 
1766
  "page. Do not attempt to embed the calendar via shortcode in a page that "
1767
  "already displays the calendar."
1768
 
1769
+ #: lib/import-export/ics.php:753
1770
+ msgid "Tickets: "
1771
+ msgstr "Tickets: "
1772
+
1773
  #: lib/less/variable/font.php:64
1774
  msgid "Custom..."
1775
  msgstr "Custom..."
1894
  msgstr "on"
1895
 
1896
  #: lib/recurrence/rule.php:248 lib/recurrence/rule.php:277
1897
+ #: lib/recurrence/rule.php:326
1898
  msgid "and"
1899
  msgstr "and"
1900
 
1901
  #: lib/recurrence/rule.php:273 lib/recurrence/rule.php:280
1902
+ #: lib/recurrence/rule.php:286 lib/recurrence/rule.php:308
1903
  msgctxt "Recurrence editor - monthly tab"
1904
  msgid "on"
1905
  msgstr "on"
1909
  msgid "of the month"
1910
  msgstr "of the month"
1911
 
1912
+ #: lib/recurrence/rule.php:321 lib/recurrence/rule.php:329
1913
+ #: lib/recurrence/rule.php:336
1914
  msgctxt "Recurrence editor - yearly tab"
1915
  msgid "on"
1916
  msgstr "on"
1917
 
1918
+ #: lib/recurrence/rule.php:376 public/admin/box_repeat.php:16
1919
  #: public/admin/cron_freq.php:9
1920
  msgid "Daily"
1921
  msgstr "Daily"
1922
 
1923
+ #: lib/recurrence/rule.php:379
1924
  msgid "Every other day"
1925
  msgstr "Every other day"
1926
 
1927
+ #: lib/recurrence/rule.php:382
1928
  msgid "Every %d days"
1929
  msgstr "Every %d days"
1930
 
1931
+ #: lib/recurrence/rule.php:391 public/admin/box_repeat.php:21
1932
  msgid "Weekly"
1933
  msgstr "Weekly"
1934
 
1935
+ #: lib/recurrence/rule.php:394
1936
  msgid "Every other week"
1937
  msgstr "Every other week"
1938
 
1939
+ #: lib/recurrence/rule.php:397
1940
  msgid "Every %d weeks"
1941
  msgstr "Every %d weeks"
1942
 
1943
+ #: lib/recurrence/rule.php:406 public/admin/box_repeat.php:26
1944
  msgid "Monthly"
1945
  msgstr "Monthly"
1946
 
1947
+ #: lib/recurrence/rule.php:409
1948
  msgid "Every other month"
1949
  msgstr "Every other month"
1950
 
1951
+ #: lib/recurrence/rule.php:412
1952
  msgid "Every %d months"
1953
  msgstr "Every %d months"
1954
 
1955
+ #: lib/recurrence/rule.php:421 public/admin/box_repeat.php:31
1956
  msgid "Yearly"
1957
  msgstr "Yearly"
1958
 
1959
+ #: lib/recurrence/rule.php:424
1960
  msgid "Every other year"
1961
  msgstr "Every other year"
1962
 
1963
+ #: lib/recurrence/rule.php:427
1964
  msgid "Every %d years"
1965
  msgstr "Every %d years"
1966
 
1967
+ #: lib/recurrence/rule.php:465
1968
  msgid "until %s"
1969
  msgstr "until %s"
1970
 
1971
+ #: lib/recurrence/rule.php:475
1972
  msgid "for %d occurrences"
1973
  msgstr "for %d occurrences"
1974
 
1975
+ #: lib/recurrence/rule.php:479
1976
  msgid "forever"
1977
  msgstr "forever"
1978
 
2103
  "The calendar is temporarily disabled due to a rendering error. Please <a "
2104
  "href=\"javascript:location.reload();\">reload the page</a>."
2105
 
 
 
 
 
2106
  #: public/admin/agenda-widget-form.php:12
2107
  msgid "Number of events to show:"
2108
  msgstr "Number of events to show:"
2911
  msgid "All-in-One Event Calendar by Time.ly"
2912
  msgstr "All-in-One Event Calendar by Time.ly"
2913
 
2914
+ #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.5) #-#-#-#-#
2915
  #. Plugin URI of the plugin/theme
2916
+ #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.5) #-#-#-#-#
2917
  #. Author URI of the plugin/theme
2918
  msgid "http://time.ly/"
2919
  msgstr "http://time.ly/"
language/all-in-one-event-calendar.pot CHANGED
@@ -1,14 +1,14 @@
1
- # Copyright (C) 2015 All-in-One Event Calendar by Time.ly
2
  # This file is distributed under the same license as the All-in-One Event Calendar by Time.ly package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: All-in-One Event Calendar by Time.ly 2.3.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
7
- "POT-Creation-Date: 2015-08-19 10:17:47+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: 2015-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
@@ -575,7 +575,7 @@ msgid "week(s)"
575
  msgstr ""
576
 
577
  #: app/view/admin/get-repeat-box.php:413 app/view/admin/get-repeat-box.php:485
578
- #: lib/recurrence/rule.php:297
579
  msgid "last"
580
  msgstr ""
581
 
@@ -821,15 +821,15 @@ msgid ""
821
  "Please check if you have installed the latest versions of calendar add-ons."
822
  msgstr ""
823
 
824
- #: app/view/calendar/page.php:268
825
  msgid "Subscribe to filtered calendar"
826
  msgstr ""
827
 
828
- #: app/view/calendar/page.php:269
829
  msgid "Subscribe"
830
  msgstr ""
831
 
832
- #: app/view/calendar/page.php:270 app/view/event/single.php:115
833
  msgid "Get a Timely Calendar"
834
  msgstr ""
835
 
@@ -879,7 +879,7 @@ msgstr ""
879
  msgid "Clear category filter"
880
  msgstr ""
881
 
882
- #: app/view/calendar/taxonomy.php:98 app/view/event/single.php:121
883
  #: lib/html/element/setting/tags-categories.php:47
884
  msgid "Categories"
885
  msgstr ""
@@ -888,42 +888,42 @@ msgstr ""
888
  msgid "Clear tag filter"
889
  msgstr ""
890
 
891
- #: app/view/calendar/taxonomy.php:100 app/view/event/single.php:122
892
  #: lib/html/element/setting/tags-categories.php:39
893
  msgid "Tags"
894
  msgstr ""
895
 
896
- #: app/view/calendar/view/agenda.php:129
897
  msgid "Collapse All"
898
  msgstr ""
899
 
900
- #: app/view/calendar/view/agenda.php:130
901
  msgid "Expand All"
902
  msgstr ""
903
 
904
- #: app/view/calendar/view/agenda.php:153
905
  msgid "There are no upcoming events to display at this time."
906
  msgstr ""
907
 
908
- #: app/view/calendar/view/agenda.php:154 app/view/calendar/widget.php:373
909
  #: public/admin/feed_row.php:112
910
  msgid "Edit"
911
  msgstr ""
912
 
913
- #: app/view/calendar/view/agenda.php:155
914
  msgid "Read more"
915
  msgstr ""
916
 
917
- #: app/view/calendar/view/agenda.php:156
918
  msgid "Categories:"
919
  msgstr ""
920
 
921
- #: app/view/calendar/view/agenda.php:157 lib/theme/list.php:320
922
  #: public/admin/themes.php:29
923
  msgid "Tags:"
924
  msgstr ""
925
 
926
- #: app/view/calendar/view/agenda.php:158 app/view/calendar/view/month.php:87
927
  #: app/view/calendar/view/oneday.php:105 app/view/calendar/view/week.php:118
928
  #: app/view/calendar/widget.php:374
929
  msgid "@ %s"
@@ -1001,16 +1001,16 @@ msgstr ""
1001
  msgid "Add"
1002
  msgstr ""
1003
 
1004
- #: app/view/event/content.php:33 app/view/event/single.php:116
1005
  msgid "When:"
1006
  msgstr ""
1007
 
1008
- #: app/view/event/content.php:34 app/view/event/single.php:117
1009
  msgid "Where:"
1010
  msgstr ""
1011
 
1012
  #: app/view/event/content.php:125
1013
- msgid "Back to Calendar"
1014
  msgstr ""
1015
 
1016
  #: app/view/event/content.php:126
@@ -1077,34 +1077,34 @@ msgstr ""
1077
  msgid "Event was created in the %s time zone"
1078
  msgstr ""
1079
 
1080
- #: app/view/event/single.php:111
1081
  msgid "Add to Calendar"
1082
  msgstr ""
1083
 
1084
- #: app/view/event/single.php:118
1085
  msgid "Cost:"
1086
  msgstr ""
1087
 
1088
- #: app/view/event/single.php:119
1089
  msgid "Contact:"
1090
  msgstr ""
1091
 
1092
- #: app/view/event/single.php:120
1093
  msgid "Free"
1094
  msgstr ""
1095
 
1096
- #: app/view/event/single.php:145
1097
  msgid "Edit this occurrence (%s)"
1098
  msgstr ""
1099
 
1100
- #: app/view/event/single.php:160
1101
  msgid ""
1102
  "This post was replicated from another site's <a href=\"%s\" title="
1103
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
1104
  "feed</a>."
1105
  msgstr ""
1106
 
1107
- #: app/view/event/single.php:171
1108
  msgid "View original"
1109
  msgstr ""
1110
 
@@ -1150,6 +1150,19 @@ msgstr ""
1150
  msgid ", and "
1151
  msgstr ""
1152
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1153
  #: lib/calendar-feed/ics.php:38
1154
  msgid "ICS"
1155
  msgstr ""
@@ -1178,40 +1191,40 @@ msgid_plural "Imported %s events"
1178
  msgstr[0] ""
1179
  msgstr[1] ""
1180
 
1181
- #: lib/calendar-feed/ics.php:202 lib/calendar-feed/ics.php:707
1182
  msgid "Invalid ICS feed ID"
1183
  msgstr ""
1184
 
1185
- #: lib/calendar-feed/ics.php:350
1186
  msgid "Categories (optional)"
1187
  msgstr ""
1188
 
1189
- #: lib/calendar-feed/ics.php:367
1190
  msgid ""
1191
  "Do you want to keep the events imported from the calendar or remove them?"
1192
  msgstr ""
1193
 
1194
- #: lib/calendar-feed/ics.php:373
1195
  msgid "Removing ICS Feed"
1196
  msgstr ""
1197
 
1198
- #: lib/calendar-feed/ics.php:376
1199
  msgid "Keep Events"
1200
  msgstr ""
1201
 
1202
- #: lib/calendar-feed/ics.php:379
1203
  msgid "Remove Events"
1204
  msgstr ""
1205
 
1206
- #: lib/calendar-feed/ics.php:519
1207
  msgid "Oh, submission was not accepted."
1208
  msgstr ""
1209
 
1210
- #: lib/calendar-feed/ics.php:699
1211
  msgid "Deleted %d events"
1212
  msgstr ""
1213
 
1214
- #: lib/calendar-feed/ics.php:735
1215
  msgid "Feed deleted"
1216
  msgstr ""
1217
 
@@ -1272,7 +1285,7 @@ msgid ""
1272
  "cloned event</a></p>"
1273
  msgstr ""
1274
 
1275
- #: lib/compatibility/check.php:63
1276
  msgid ""
1277
  "You have turned on Frontend Rendering and you are using a custom calendar "
1278
  "theme. If your theme does not support Frontend Rendering, your calendar may "
@@ -1331,7 +1344,7 @@ msgstr ""
1331
  msgid "Error encountered: %s"
1332
  msgstr ""
1333
 
1334
- #: lib/date/system.php:176
1335
  msgid "GMT%+d:%02d"
1336
  msgstr ""
1337
 
@@ -1590,6 +1603,10 @@ msgid ""
1590
  "already displays the calendar."
1591
  msgstr ""
1592
 
 
 
 
 
1593
  #: lib/less/variable/font.php:64
1594
  msgid "Custom..."
1595
  msgstr ""
@@ -1712,12 +1729,12 @@ msgid "on"
1712
  msgstr ""
1713
 
1714
  #: lib/recurrence/rule.php:248 lib/recurrence/rule.php:277
1715
- #: lib/recurrence/rule.php:325
1716
  msgid "and"
1717
  msgstr ""
1718
 
1719
  #: lib/recurrence/rule.php:273 lib/recurrence/rule.php:280
1720
- #: lib/recurrence/rule.php:286 lib/recurrence/rule.php:307
1721
  msgctxt "Recurrence editor - monthly tab"
1722
  msgid "on"
1723
  msgstr ""
@@ -1727,70 +1744,70 @@ msgstr ""
1727
  msgid "of the month"
1728
  msgstr ""
1729
 
1730
- #: lib/recurrence/rule.php:320 lib/recurrence/rule.php:328
1731
- #: lib/recurrence/rule.php:335
1732
  msgctxt "Recurrence editor - yearly tab"
1733
  msgid "on"
1734
  msgstr ""
1735
 
1736
- #: lib/recurrence/rule.php:375 public/admin/box_repeat.php:16
1737
  #: public/admin/cron_freq.php:9
1738
  msgid "Daily"
1739
  msgstr ""
1740
 
1741
- #: lib/recurrence/rule.php:378
1742
  msgid "Every other day"
1743
  msgstr ""
1744
 
1745
- #: lib/recurrence/rule.php:381
1746
  msgid "Every %d days"
1747
  msgstr ""
1748
 
1749
- #: lib/recurrence/rule.php:390 public/admin/box_repeat.php:21
1750
  msgid "Weekly"
1751
  msgstr ""
1752
 
1753
- #: lib/recurrence/rule.php:393
1754
  msgid "Every other week"
1755
  msgstr ""
1756
 
1757
- #: lib/recurrence/rule.php:396
1758
  msgid "Every %d weeks"
1759
  msgstr ""
1760
 
1761
- #: lib/recurrence/rule.php:405 public/admin/box_repeat.php:26
1762
  msgid "Monthly"
1763
  msgstr ""
1764
 
1765
- #: lib/recurrence/rule.php:408
1766
  msgid "Every other month"
1767
  msgstr ""
1768
 
1769
- #: lib/recurrence/rule.php:411
1770
  msgid "Every %d months"
1771
  msgstr ""
1772
 
1773
- #: lib/recurrence/rule.php:420 public/admin/box_repeat.php:31
1774
  msgid "Yearly"
1775
  msgstr ""
1776
 
1777
- #: lib/recurrence/rule.php:423
1778
  msgid "Every other year"
1779
  msgstr ""
1780
 
1781
- #: lib/recurrence/rule.php:426
1782
  msgid "Every %d years"
1783
  msgstr ""
1784
 
1785
- #: lib/recurrence/rule.php:464
1786
  msgid "until %s"
1787
  msgstr ""
1788
 
1789
- #: lib/recurrence/rule.php:474
1790
  msgid "for %d occurrences"
1791
  msgstr ""
1792
 
1793
- #: lib/recurrence/rule.php:478
1794
  msgid "forever"
1795
  msgstr ""
1796
 
@@ -1891,10 +1908,6 @@ msgid ""
1891
  "href=\"javascript:location.reload();\">reload the page</a>."
1892
  msgstr ""
1893
 
1894
- #: public/admin/agenda-widget-form.php:2
1895
- msgid "Title:"
1896
- msgstr ""
1897
-
1898
  #: public/admin/agenda-widget-form.php:12
1899
  msgid "Number of events to show:"
1900
  msgstr ""
@@ -2684,9 +2697,9 @@ msgstr ""
2684
  msgid "All-in-One Event Calendar by Time.ly"
2685
  msgstr ""
2686
 
2687
- #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.1) #-#-#-#-#
2688
  #. Plugin URI of the plugin/theme
2689
- #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.1) #-#-#-#-#
2690
  #. Author URI of the plugin/theme
2691
  msgid "http://time.ly/"
2692
  msgstr ""
1
+ # Copyright (C) 2016 All-in-One Event Calendar by Time.ly
2
  # This file is distributed under the same license as the All-in-One Event Calendar by Time.ly package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: All-in-One Event Calendar by Time.ly 2.3.5\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/all-in-one-event-calendar\n"
7
+ "POT-Creation-Date: 2016-01-06 22:06:06+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2016-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
575
  msgstr ""
576
 
577
  #: app/view/admin/get-repeat-box.php:413 app/view/admin/get-repeat-box.php:485
578
+ #: lib/recurrence/rule.php:298
579
  msgid "last"
580
  msgstr ""
581
 
821
  "Please check if you have installed the latest versions of calendar add-ons."
822
  msgstr ""
823
 
824
+ #: app/view/calendar/page.php:260
825
  msgid "Subscribe to filtered calendar"
826
  msgstr ""
827
 
828
+ #: app/view/calendar/page.php:261
829
  msgid "Subscribe"
830
  msgstr ""
831
 
832
+ #: app/view/calendar/page.php:262 app/view/event/single.php:118
833
  msgid "Get a Timely Calendar"
834
  msgstr ""
835
 
879
  msgid "Clear category filter"
880
  msgstr ""
881
 
882
+ #: app/view/calendar/taxonomy.php:98 app/view/event/single.php:124
883
  #: lib/html/element/setting/tags-categories.php:47
884
  msgid "Categories"
885
  msgstr ""
888
  msgid "Clear tag filter"
889
  msgstr ""
890
 
891
+ #: app/view/calendar/taxonomy.php:100 app/view/event/single.php:125
892
  #: lib/html/element/setting/tags-categories.php:39
893
  msgid "Tags"
894
  msgstr ""
895
 
896
+ #: app/view/calendar/view/agenda.php:142
897
  msgid "Collapse All"
898
  msgstr ""
899
 
900
+ #: app/view/calendar/view/agenda.php:143
901
  msgid "Expand All"
902
  msgstr ""
903
 
904
+ #: app/view/calendar/view/agenda.php:166
905
  msgid "There are no upcoming events to display at this time."
906
  msgstr ""
907
 
908
+ #: app/view/calendar/view/agenda.php:167 app/view/calendar/widget.php:373
909
  #: public/admin/feed_row.php:112
910
  msgid "Edit"
911
  msgstr ""
912
 
913
+ #: app/view/calendar/view/agenda.php:168
914
  msgid "Read more"
915
  msgstr ""
916
 
917
+ #: app/view/calendar/view/agenda.php:169
918
  msgid "Categories:"
919
  msgstr ""
920
 
921
+ #: app/view/calendar/view/agenda.php:170 lib/theme/list.php:320
922
  #: public/admin/themes.php:29
923
  msgid "Tags:"
924
  msgstr ""
925
 
926
+ #: app/view/calendar/view/agenda.php:171 app/view/calendar/view/month.php:87
927
  #: app/view/calendar/view/oneday.php:105 app/view/calendar/view/week.php:118
928
  #: app/view/calendar/widget.php:374
929
  msgid "@ %s"
1001
  msgid "Add"
1002
  msgstr ""
1003
 
1004
+ #: app/view/event/content.php:33 app/view/event/single.php:119
1005
  msgid "When:"
1006
  msgstr ""
1007
 
1008
+ #: app/view/event/content.php:34 app/view/event/single.php:120
1009
  msgid "Where:"
1010
  msgstr ""
1011
 
1012
  #: app/view/event/content.php:125
1013
+ msgid "Calendar"
1014
  msgstr ""
1015
 
1016
  #: app/view/event/content.php:126
1077
  msgid "Event was created in the %s time zone"
1078
  msgstr ""
1079
 
1080
+ #: app/view/event/single.php:114
1081
  msgid "Add to Calendar"
1082
  msgstr ""
1083
 
1084
+ #: app/view/event/single.php:121
1085
  msgid "Cost:"
1086
  msgstr ""
1087
 
1088
+ #: app/view/event/single.php:122
1089
  msgid "Contact:"
1090
  msgstr ""
1091
 
1092
+ #: app/view/event/single.php:123
1093
  msgid "Free"
1094
  msgstr ""
1095
 
1096
+ #: app/view/event/single.php:148
1097
  msgid "Edit this occurrence (%s)"
1098
  msgstr ""
1099
 
1100
+ #: app/view/event/single.php:163
1101
  msgid ""
1102
  "This post was replicated from another site's <a href=\"%s\" title="
1103
  "\"iCalendar feed\"><i class=\"ai1ec-fa ai1ec-fa-calendar\"></i> calendar "
1104
  "feed</a>."
1105
  msgstr ""
1106
 
1107
+ #: app/view/event/single.php:174
1108
  msgid "View original"
1109
  msgstr ""
1110
 
1150
  msgid ", and "
1151
  msgstr ""
1152
 
1153
+ #: cache/twig/64/6d/6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c.php:24
1154
+ #: public/admin/agenda-widget-form.php:2
1155
+ msgid "Title:"
1156
+ msgstr ""
1157
+
1158
+ #: cache/twig/dc/78/b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php:37
1159
+ msgid "Excludes: "
1160
+ msgstr ""
1161
+
1162
+ #: cache/twig/dc/78/b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php:48
1163
+ msgid "Repeats"
1164
+ msgstr ""
1165
+
1166
  #: lib/calendar-feed/ics.php:38
1167
  msgid "ICS"
1168
  msgstr ""
1191
  msgstr[0] ""
1192
  msgstr[1] ""
1193
 
1194
+ #: lib/calendar-feed/ics.php:202 lib/calendar-feed/ics.php:711
1195
  msgid "Invalid ICS feed ID"
1196
  msgstr ""
1197
 
1198
+ #: lib/calendar-feed/ics.php:354
1199
  msgid "Categories (optional)"
1200
  msgstr ""
1201
 
1202
+ #: lib/calendar-feed/ics.php:371
1203
  msgid ""
1204
  "Do you want to keep the events imported from the calendar or remove them?"
1205
  msgstr ""
1206
 
1207
+ #: lib/calendar-feed/ics.php:377
1208
  msgid "Removing ICS Feed"
1209
  msgstr ""
1210
 
1211
+ #: lib/calendar-feed/ics.php:380
1212
  msgid "Keep Events"
1213
  msgstr ""
1214
 
1215
+ #: lib/calendar-feed/ics.php:383
1216
  msgid "Remove Events"
1217
  msgstr ""
1218
 
1219
+ #: lib/calendar-feed/ics.php:523
1220
  msgid "Oh, submission was not accepted."
1221
  msgstr ""
1222
 
1223
+ #: lib/calendar-feed/ics.php:703
1224
  msgid "Deleted %d events"
1225
  msgstr ""
1226
 
1227
+ #: lib/calendar-feed/ics.php:739
1228
  msgid "Feed deleted"
1229
  msgstr ""
1230
 
1285
  "cloned event</a></p>"
1286
  msgstr ""
1287
 
1288
+ #: lib/compatibility/check.php:101
1289
  msgid ""
1290
  "You have turned on Frontend Rendering and you are using a custom calendar "
1291
  "theme. If your theme does not support Frontend Rendering, your calendar may "
1344
  msgid "Error encountered: %s"
1345
  msgstr ""
1346
 
1347
+ #: lib/date/system.php:202
1348
  msgid "GMT%+d:%02d"
1349
  msgstr ""
1350
 
1603
  "already displays the calendar."
1604
  msgstr ""
1605
 
1606
+ #: lib/import-export/ics.php:753
1607
+ msgid "Tickets: "
1608
+ msgstr ""
1609
+
1610
  #: lib/less/variable/font.php:64
1611
  msgid "Custom..."
1612
  msgstr ""
1729
  msgstr ""
1730
 
1731
  #: lib/recurrence/rule.php:248 lib/recurrence/rule.php:277
1732
+ #: lib/recurrence/rule.php:326
1733
  msgid "and"
1734
  msgstr ""
1735
 
1736
  #: lib/recurrence/rule.php:273 lib/recurrence/rule.php:280
1737
+ #: lib/recurrence/rule.php:286 lib/recurrence/rule.php:308
1738
  msgctxt "Recurrence editor - monthly tab"
1739
  msgid "on"
1740
  msgstr ""
1744
  msgid "of the month"
1745
  msgstr ""
1746
 
1747
+ #: lib/recurrence/rule.php:321 lib/recurrence/rule.php:329
1748
+ #: lib/recurrence/rule.php:336
1749
  msgctxt "Recurrence editor - yearly tab"
1750
  msgid "on"
1751
  msgstr ""
1752
 
1753
+ #: lib/recurrence/rule.php:376 public/admin/box_repeat.php:16
1754
  #: public/admin/cron_freq.php:9
1755
  msgid "Daily"
1756
  msgstr ""
1757
 
1758
+ #: lib/recurrence/rule.php:379
1759
  msgid "Every other day"
1760
  msgstr ""
1761
 
1762
+ #: lib/recurrence/rule.php:382
1763
  msgid "Every %d days"
1764
  msgstr ""
1765
 
1766
+ #: lib/recurrence/rule.php:391 public/admin/box_repeat.php:21
1767
  msgid "Weekly"
1768
  msgstr ""
1769
 
1770
+ #: lib/recurrence/rule.php:394
1771
  msgid "Every other week"
1772
  msgstr ""
1773
 
1774
+ #: lib/recurrence/rule.php:397
1775
  msgid "Every %d weeks"
1776
  msgstr ""
1777
 
1778
+ #: lib/recurrence/rule.php:406 public/admin/box_repeat.php:26
1779
  msgid "Monthly"
1780
  msgstr ""
1781
 
1782
+ #: lib/recurrence/rule.php:409
1783
  msgid "Every other month"
1784
  msgstr ""
1785
 
1786
+ #: lib/recurrence/rule.php:412
1787
  msgid "Every %d months"
1788
  msgstr ""
1789
 
1790
+ #: lib/recurrence/rule.php:421 public/admin/box_repeat.php:31
1791
  msgid "Yearly"
1792
  msgstr ""
1793
 
1794
+ #: lib/recurrence/rule.php:424
1795
  msgid "Every other year"
1796
  msgstr ""
1797
 
1798
+ #: lib/recurrence/rule.php:427
1799
  msgid "Every %d years"
1800
  msgstr ""
1801
 
1802
+ #: lib/recurrence/rule.php:465
1803
  msgid "until %s"
1804
  msgstr ""
1805
 
1806
+ #: lib/recurrence/rule.php:475
1807
  msgid "for %d occurrences"
1808
  msgstr ""
1809
 
1810
+ #: lib/recurrence/rule.php:479
1811
  msgid "forever"
1812
  msgstr ""
1813
 
1908
  "href=\"javascript:location.reload();\">reload the page</a>."
1909
  msgstr ""
1910
 
 
 
 
 
1911
  #: public/admin/agenda-widget-form.php:12
1912
  msgid "Number of events to show:"
1913
  msgstr ""
2697
  msgid "All-in-One Event Calendar by Time.ly"
2698
  msgstr ""
2699
 
2700
+ #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.5) #-#-#-#-#
2701
  #. Plugin URI of the plugin/theme
2702
+ #. #-#-#-#-# all-in-one-event-calendar.pot (All-in-One Event Calendar by Time.ly 2.3.5) #-#-#-#-#
2703
  #. Author URI of the plugin/theme
2704
  msgid "http://time.ly/"
2705
  msgstr ""
lib/bootstrap/loader-map.php CHANGED
@@ -1330,6 +1330,13 @@
1330
  'c' => 'Ai1ec_Shutdown_Controller',
1331
  'i' => 'g',
1332
  ),
 
 
 
 
 
 
 
1333
  'Ai1ec_Taxonomy' =>
1334
  array (
1335
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'taxonomy.php',
@@ -1409,6 +1416,13 @@
1409
  'c' => 'Ai1ec_Twig_Loader_Filesystem',
1410
  'i' => 'g',
1411
  ),
 
 
 
 
 
 
 
1412
  'Ai1ec_Uri' =>
1413
  array (
1414
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri.php',
@@ -1428,6 +1442,20 @@
1428
  'i' => 'g',
1429
  'r' => 'y',
1430
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1431
  'Ai1ec_Validator_Numeric_Or_Default' =>
1432
  array (
1433
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'numeric.php',
@@ -2665,1504 +2693,2441 @@
2665
  'c' => 'Twig_TokenStream',
2666
  'i' => 'g',
2667
  ),
2668
- 'acl.aco' =>
2669
  array (
2670
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'acl' . DIRECTORY_SEPARATOR . 'aco.php',
2671
- 'c' => 'Ai1ec_Acl_Aco',
2672
  'i' => 'g',
2673
  ),
2674
- 'bootstrap.abstract' =>
2675
  array (
2676
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'abstract.php',
2677
- 'c' => 'Ai1ec_Base',
2678
  'i' => 'g',
2679
- 'r' => 'y',
2680
  ),
2681
- 'bootstrap.exception' =>
2682
  array (
2683
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'exception.php',
2684
- 'c' => 'Ai1ec_Bootstrap_Exception',
2685
  'i' => 'g',
2686
  ),
2687
- 'bootstrap.loader' =>
2688
  array (
2689
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'loader.php',
2690
- 'c' => 'Ai1ec_Loader',
2691
  'i' => 'g',
2692
  ),
2693
- 'bootstrap.registry.application' =>
2694
  array (
2695
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'application.php',
2696
- 'c' => 'Ai1ec_Registry_Application',
2697
  'i' => 'g',
2698
- 'r' => 'y',
2699
  ),
2700
- 'bootstrap.registry.interface' =>
2701
  array (
2702
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'interface.php',
2703
- 'c' => 'Ai1ec_Registry',
2704
  'i' => 'g',
2705
  ),
2706
- 'bootstrap.registry.object' =>
2707
  array (
2708
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'object.php',
2709
- 'c' => 'Ai1ec_Registry_Object',
2710
  'i' => 'g',
2711
  ),
2712
- 'cache.exception.not-set' =>
2713
  array (
2714
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'not-set.php',
2715
- 'c' => 'Ai1ec_Cache_Not_Set_Exception',
2716
  'i' => 'g',
2717
  ),
2718
- 'cache.exception.write' =>
2719
  array (
2720
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'write.php',
2721
- 'c' => 'Ai1ec_Cache_Write_Exception',
2722
  'i' => 'g',
2723
  ),
2724
- 'cache.interface' =>
2725
  array (
2726
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'interface.php',
2727
- 'c' => 'Ai1ec_Cache_Interface',
2728
  'i' => 'g',
2729
  ),
2730
- 'cache.memory' =>
2731
  array (
2732
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'memory.php',
2733
- 'c' => 'Ai1ec_Cache_Memory',
2734
- 'i' => 'n',
2735
  ),
2736
- 'cache.strategy.abstract' =>
2737
  array (
2738
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'abstract.php',
2739
- 'c' => 'Ai1ec_Cache_Strategy',
2740
  'i' => 'g',
2741
- 'r' => 'y',
2742
  ),
2743
- 'cache.strategy.apc' =>
2744
  array (
2745
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'apc.php',
2746
- 'c' => 'Ai1ec_Cache_Strategy_Apc',
2747
- 'i' => 'n',
2748
- 'r' => 'y',
2749
  ),
2750
- 'cache.strategy.db' =>
2751
  array (
2752
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'db.php',
2753
- 'c' => 'Ai1ec_Cache_Strategy_Db',
2754
- 'i' => 'n',
2755
- 'r' => 'y',
2756
  ),
2757
- 'cache.strategy.file' =>
2758
  array (
2759
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'file.php',
2760
- 'c' => 'Ai1ec_Cache_Strategy_File',
2761
- 'i' => 'n',
2762
- 'r' => 'y',
2763
  ),
2764
- 'cache.strategy.persistence-context' =>
2765
  array (
2766
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'persistence-context.php',
2767
- 'c' => 'Ai1ec_Persistence_Context',
2768
- 'i' => 'Ai1ec_Factory_Strategy.create_persistence_context',
2769
  ),
2770
- 'cache.strategy.void' =>
2771
  array (
2772
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'void.php',
2773
- 'c' => 'Ai1ec_Cache_Strategy_Void',
2774
- 'i' => 'n',
2775
- 'r' => 'y',
2776
  ),
2777
- 'calendar-feed.abstract' =>
2778
  array (
2779
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar-feed' . DIRECTORY_SEPARATOR . 'abstract.php',
2780
- 'c' => 'Ai1ec_Connector_Plugin',
2781
  'i' => 'g',
2782
- 'r' => 'y',
2783
  ),
2784
- 'calendar-feed.ics' =>
2785
  array (
2786
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar-feed' . DIRECTORY_SEPARATOR . 'ics.php',
2787
- 'c' => 'Ai1ecIcsConnectorPlugin',
2788
  'i' => 'g',
2789
- 'r' => 'y',
2790
  ),
2791
- 'calendar.state' =>
2792
  array (
2793
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar' . DIRECTORY_SEPARATOR . 'state.php',
2794
- 'c' => 'Ai1ec_Calendar_State',
2795
  'i' => 'g',
2796
- 'r' => 'y',
2797
  ),
2798
- 'calendar.updates' =>
2799
  array (
2800
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar' . DIRECTORY_SEPARATOR . 'updates.php',
2801
- 'c' => 'Ai1ec_Calendar_Updates',
2802
  'i' => 'g',
2803
- 'r' => 'y',
2804
  ),
2805
- 'calendarComponent' =>
2806
  array (
2807
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
2808
- 'c' => 'calendarComponent',
2809
  'i' => 'g',
2810
  ),
2811
- 'captcha.provider' =>
2812
  array (
2813
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider.php',
2814
- 'c' => 'Ai1ec_Captcha_Provider',
2815
  'i' => 'g',
2816
- 'r' => 'y',
2817
  ),
2818
- 'captcha.provider.nocaptcha' =>
2819
  array (
2820
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider' . DIRECTORY_SEPARATOR . 'nocaptcha.php',
2821
- 'c' => 'Ai1ec_Captcha_Nocaptcha_Provider',
2822
  'i' => 'g',
2823
- 'r' => 'y',
2824
  ),
2825
- 'captcha.provider.recaptcha' =>
2826
  array (
2827
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider' . DIRECTORY_SEPARATOR . 'recaptcha.php',
2828
- 'c' => 'Ai1ec_Captcha_Recaptcha_Provider',
2829
  'i' => 'g',
2830
- 'r' => 'y',
2831
  ),
2832
- 'captcha.providers' =>
2833
  array (
2834
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'providers.php',
2835
- 'c' => 'Ai1ec_Captcha_Providers',
2836
  'i' => 'g',
2837
- 'r' => 'y',
2838
  ),
2839
- 'clone.renderer-helper' =>
2840
  array (
2841
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'clone' . DIRECTORY_SEPARATOR . 'renderer-helper.php',
2842
- 'c' => 'Ai1ec_Clone_Renderer_Helper',
2843
  'i' => 'g',
2844
- 'r' => 'y',
2845
  ),
2846
- 'command.abstract' =>
2847
  array (
2848
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'abstract.php',
2849
- 'c' => 'Ai1ec_Command',
2850
  'i' => 'g',
2851
- 'r' => 'y',
2852
  ),
2853
- 'command.change-theme' =>
2854
  array (
2855
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'change-theme.php',
2856
- 'c' => 'Ai1ec_Command_Change_Theme',
2857
  'i' => 'g',
2858
- 'r' => 'y',
2859
  ),
2860
- 'command.check-updates' =>
2861
  array (
2862
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'check-updates.php',
2863
- 'c' => 'Ai1ec_Command_Check_Updates',
2864
  'i' => 'g',
2865
- 'r' => 'y',
2866
  ),
2867
- 'command.clone' =>
2868
  array (
2869
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'clone.php',
2870
- 'c' => 'Ai1ec_Command_Clone',
2871
  'i' => 'g',
2872
- 'r' => 'y',
2873
  ),
2874
- 'command.compile-core-css' =>
2875
  array (
2876
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'compile-core-css.php',
2877
- 'c' => 'Ai1ec_Command_Compile_Core_Css',
2878
  'i' => 'g',
2879
- 'r' => 'y',
2880
  ),
2881
- 'command.compile-themes' =>
2882
  array (
2883
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'compile-themes.php',
2884
- 'c' => 'Ai1ec_Command_Compile_Themes',
2885
  'i' => 'g',
2886
- 'r' => 'y',
2887
  ),
2888
- 'command.disable-gzip' =>
2889
  array (
2890
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'disable-gzip.php',
2891
- 'c' => 'Ai1ec_Command_Disable_Gzip',
2892
  'i' => 'g',
2893
- 'r' => 'y',
2894
  ),
2895
- 'command.export-events' =>
2896
  array (
2897
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'export-events.php',
2898
- 'c' => 'Ai1ec_Command_Export_Events',
2899
  'i' => 'g',
2900
- 'r' => 'y',
2901
  ),
2902
- 'command.render-calendar' =>
2903
  array (
2904
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'render-calendar.php',
2905
- 'c' => 'Ai1ec_Command_Render_Calendar',
2906
  'i' => 'g',
2907
- 'r' => 'y',
2908
  ),
2909
- 'command.render-event' =>
2910
  array (
2911
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'render-event.php',
2912
- 'c' => 'Ai1ec_Command_Render_Event',
2913
  'i' => 'g',
2914
- 'r' => 'y',
2915
  ),
2916
- 'command.resolver' =>
2917
  array (
2918
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'resolver.php',
2919
- 'c' => 'Ai1ec_Command_Resolver',
2920
  'i' => 'g',
2921
- 'r' => 'y',
2922
  ),
2923
- 'command.save-abstract' =>
2924
  array (
2925
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-abstract.php',
2926
- 'c' => 'Ai1ec_Command_Save_Abstract',
2927
  'i' => 'g',
2928
- 'r' => 'y',
2929
  ),
2930
- 'command.save-settings' =>
2931
  array (
2932
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-settings.php',
2933
- 'c' => 'Ai1ec_Command_Save_Settings',
2934
  'i' => 'g',
2935
- 'r' => 'y',
2936
  ),
2937
- 'command.save-theme-options' =>
2938
  array (
2939
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-theme-options.php',
2940
- 'c' => 'Ai1ec_Command_Save_Theme_Options',
2941
  'i' => 'g',
2942
- 'r' => 'y',
2943
  ),
2944
- 'compatibility.check' =>
2945
  array (
2946
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'check.php',
2947
- 'c' => 'Ai1ec_Compatibility_Check',
2948
  'i' => 'g',
2949
- 'r' => 'y',
2950
  ),
2951
- 'compatibility.cli' =>
2952
  array (
2953
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'cli.php',
2954
- 'c' => 'Ai1ec_Compatibility_Cli',
2955
  'i' => 'g',
2956
  ),
2957
- 'compatibility.memory' =>
2958
  array (
2959
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'memory.php',
2960
- 'c' => 'Ai1ec_Compatibility_Memory',
2961
  'i' => 'g',
2962
- 'r' => 'y',
2963
  ),
2964
- 'compatibility.ob' =>
2965
  array (
2966
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'ob.php',
2967
- 'c' => 'Ai1ec_Compatibility_OutputBuffer',
2968
  'i' => 'g',
2969
- 'r' => 'y',
2970
  ),
2971
- 'compatibility.xguard' =>
2972
  array (
2973
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'xguard.php',
2974
- 'c' => 'Ai1ec_Compatibility_Xguard',
2975
  'i' => 'g',
2976
- 'r' => 'y',
2977
  ),
2978
- 'config.exception' =>
2979
  array (
2980
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'exception.php',
2981
- 'c' => 'Ai1ec_Constants_Not_Set_Exception',
2982
  'i' => 'g',
2983
  ),
2984
- 'content.filter' =>
2985
  array (
2986
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'content' . DIRECTORY_SEPARATOR . 'filter.php',
2987
- 'c' => 'Ai1ec_Content_Filters',
2988
  'i' => 'g',
2989
- 'r' => 'y',
2990
  ),
2991
- 'controller.calendar-feeds' =>
2992
  array (
2993
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'calendar-feeds.php',
2994
- 'c' => 'Ai1ec_Controller_Calendar_Feeds',
2995
  'i' => 'g',
2996
- 'r' => 'y',
2997
  ),
2998
- 'controller.content-filter' =>
2999
  array (
3000
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'content-filter.php',
3001
- 'c' => 'Ai1ec_Controller_Content_Filter',
3002
  'i' => 'g',
3003
- 'r' => 'y',
3004
  ),
3005
- 'controller.exception.engine-not-set' =>
3006
  array (
3007
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'engine-not-set.php',
3008
- 'c' => 'Ai1ec_Engine_Not_Set_Exception',
3009
  'i' => 'g',
3010
  ),
3011
- 'controller.exception.file-not-found' =>
3012
  array (
3013
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'file-not-found.php',
3014
- 'c' => 'Ai1ec_File_Not_Found_Exception',
3015
  'i' => 'g',
3016
  ),
3017
- 'controller.extension' =>
3018
  array (
3019
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'extension.php',
3020
- 'c' => 'Ai1ec_Base_Extension_Controller',
3021
  'i' => 'g',
3022
  ),
3023
- 'controller.extension-license' =>
3024
  array (
3025
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'extension-license.php',
3026
- 'c' => 'Ai1ec_Base_License_Controller',
3027
  'i' => 'g',
3028
  ),
3029
- 'controller.front' =>
3030
  array (
3031
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'front.php',
3032
- 'c' => 'Ai1ec_Front_Controller',
3033
  'i' => 'g',
3034
  ),
3035
- 'controller.import-export' =>
3036
  array (
3037
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'import-export.php',
3038
- 'c' => 'Ai1ec_Import_Export_Controller',
3039
  'i' => 'g',
3040
- 'r' => 'y',
3041
  ),
3042
- 'controller.javascript' =>
3043
  array (
3044
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'javascript.php',
3045
- 'c' => 'Ai1ec_Javascript_Controller',
3046
  'i' => 'g',
3047
- 'r' => 'y',
3048
  ),
3049
- 'controller.javascript-widget' =>
3050
  array (
3051
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'javascript-widget.php',
3052
- 'c' => 'Ai1ec_Controller_Javascript_Widget',
3053
  'i' => 'g',
3054
- 'r' => 'y',
3055
  ),
3056
- 'controller.shutdown' =>
3057
  array (
3058
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'shutdown.php',
3059
- 'c' => 'Ai1ec_Shutdown_Controller',
3060
  'i' => 'g',
3061
  ),
3062
- 'cookie.dto' =>
3063
  array (
3064
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cookie' . DIRECTORY_SEPARATOR . 'dto.php',
3065
- 'c' => 'Ai1ec_Cookie_Present_Dto',
3066
  'i' => 'g',
3067
  ),
3068
- 'cookie.utility' =>
3069
  array (
3070
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cookie' . DIRECTORY_SEPARATOR . 'utility.php',
3071
- 'c' => 'Ai1ec_Cookie_Utility',
3072
  'i' => 'g',
3073
- 'r' => 'y',
3074
  ),
3075
- 'css.admin' =>
3076
  array (
3077
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . 'admin.php',
3078
- 'c' => 'Ai1ec_Css_Admin',
3079
  'i' => 'g',
3080
- 'r' => 'y',
3081
  ),
3082
- 'css.frontend' =>
3083
  array (
3084
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . 'frontend.php',
3085
- 'c' => 'Ai1ec_Css_Frontend',
3086
  'i' => 'g',
3087
- 'r' => 'y',
3088
  ),
3089
- 'database.applicator' =>
3090
  array (
3091
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'applicator.php',
3092
- 'c' => 'Ai1ec_Database_Applicator',
3093
  'i' => 'g',
3094
- 'r' => 'y',
3095
  ),
3096
- 'database.datetime-migration' =>
3097
  array (
3098
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'datetime-migration.php',
3099
- 'c' => 'Ai1ecdm_Datetime_Migration',
3100
  'i' => 'g',
3101
- 'r' => 'y',
3102
  ),
3103
- 'database.exception.database' =>
3104
  array (
3105
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'database.php',
3106
- 'c' => 'Ai1ec_Database_Error',
3107
  'i' => 'g',
3108
  ),
3109
- 'database.exception.schema' =>
3110
  array (
3111
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'schema.php',
3112
- 'c' => 'Ai1ec_Database_Schema_Exception',
3113
  'i' => 'g',
3114
  ),
3115
- 'database.exception.update' =>
3116
  array (
3117
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'update.php',
3118
- 'c' => 'Ai1ec_Database_Update_Exception',
3119
  'i' => 'g',
3120
  ),
3121
- 'database.helper' =>
3122
  array (
3123
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'helper.php',
3124
- 'c' => 'Ai1ec_Database_Helper',
3125
  'i' => 'g',
3126
- 'r' => 'y',
3127
  ),
3128
- 'date.converter' =>
3129
  array (
3130
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'converter.php',
3131
- 'c' => 'Ai1ec_Date_Converter',
3132
  'i' => 'g',
3133
- 'r' => 'y',
3134
  ),
3135
- 'date.date-time-zone' =>
3136
  array (
3137
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'date-time-zone.php',
3138
- 'c' => 'Ai1ec_Date_Date_Time_Zone',
3139
  'i' => 'g',
3140
  ),
3141
- 'date.exception.date' =>
3142
  array (
3143
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'date.php',
3144
- 'c' => 'Ai1ec_Date_Exception',
3145
  'i' => 'g',
3146
  ),
3147
- 'date.exception.timezone' =>
3148
  array (
3149
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'timezone.php',
3150
- 'c' => 'Ai1ec_Date_Timezone_Exception',
3151
  'i' => 'g',
3152
  ),
3153
- 'date.legacy' =>
3154
  array (
3155
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'legacy.php',
3156
- 'c' => 'Ai1ec_Time_Utility',
3157
  'i' => 'g',
3158
  ),
3159
- 'date.system' =>
3160
  array (
3161
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'system.php',
3162
- 'c' => 'Ai1ec_Date_System',
3163
  'i' => 'g',
3164
- 'r' => 'y',
3165
  ),
3166
- 'date.time' =>
3167
  array (
3168
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'time.php',
3169
- 'c' => 'Ai1ec_Date_Time',
3170
- 'i' => 'n',
3171
- 'r' => 'y',
3172
  ),
3173
- 'date.time-i18n' =>
3174
  array (
3175
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'time-i18n.php',
3176
- 'c' => 'Ai1ec_Time_I18n_Utility',
3177
  'i' => 'g',
3178
- 'r' => 'y',
3179
  ),
3180
- 'date.timezone' =>
3181
  array (
3182
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'timezone.php',
3183
- 'c' => 'Ai1ec_Date_Timezone',
3184
  'i' => 'g',
3185
- 'r' => 'y',
3186
  ),
3187
- 'date.validator' =>
3188
  array (
3189
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'validator.php',
3190
- 'c' => 'Ai1ec_Validation_Utility',
3191
  'i' => 'g',
3192
  ),
3193
- 'dbi.dbi' =>
3194
  array (
3195
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'dbi' . DIRECTORY_SEPARATOR . 'dbi.php',
3196
- 'c' => 'Ai1ec_Dbi',
3197
  'i' => 'g',
3198
- 'r' => 'y',
3199
  ),
3200
- 'dbi.dbi-utils' =>
3201
  array (
3202
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'dbi' . DIRECTORY_SEPARATOR . 'dbi-utils.php',
3203
- 'c' => 'Ai1ec_Dbi_Utils',
3204
  'i' => 'g',
3205
- 'r' => 'y',
3206
  ),
3207
- 'environment.check' =>
3208
  array (
3209
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'environment' . DIRECTORY_SEPARATOR . 'check.php',
3210
- 'c' => 'Ai1ec_Environment_Checks',
3211
  'i' => 'g',
3212
- 'r' => 'y',
3213
  ),
3214
- 'environment.exception.addon' =>
3215
  array (
3216
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'environment' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'addon.php',
3217
- 'c' => 'Ai1ec_Outdated_Addon_Exception',
3218
  'i' => 'g',
3219
  ),
3220
- 'event.callback.abstract' =>
3221
  array (
3222
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'abstract.php',
3223
- 'c' => 'Ai1ec_Event_Callback_Abstract',
3224
  'i' => 'g',
3225
- 'r' => 'y',
3226
  ),
3227
- 'event.callback.action' =>
3228
  array (
3229
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'action.php',
3230
- 'c' => 'Ai1ec_Event_Callback_Action',
3231
- 'i' => 'n',
3232
- 'r' => 'y',
3233
  ),
3234
- 'event.callback.filter' =>
3235
  array (
3236
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'filter.php',
3237
- 'c' => 'Ai1ec_Event_Callback_Filter',
3238
- 'i' => 'n',
3239
- 'r' => 'y',
3240
  ),
3241
- 'event.callback.shortcode' =>
3242
  array (
3243
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'shortcode.php',
3244
- 'c' => 'Ai1ec_Event_Callback_Shortcode',
3245
- 'i' => 'n',
3246
- 'r' => 'y',
3247
  ),
3248
- 'event.dispatcher' =>
3249
  array (
3250
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'dispatcher.php',
3251
- 'c' => 'Ai1ec_Event_Dispatcher',
3252
  'i' => 'g',
3253
- 'r' => 'y',
3254
  ),
3255
- 'exception.ai1ec' =>
3256
  array (
3257
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'ai1ec.php',
3258
- 'c' => 'Ai1ec_Exception',
3259
  'i' => 'g',
3260
  ),
3261
- 'exception.error' =>
3262
  array (
3263
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'error.php',
3264
- 'c' => 'Ai1ec_Error_Exception',
3265
  'i' => 'g',
3266
  ),
3267
- 'exception.handler' =>
3268
  array (
3269
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'handler.php',
3270
- 'c' => 'Ai1ec_Exception_Handler',
3271
  'i' => 'g',
3272
  ),
3273
- 'factory.event' =>
3274
  array (
3275
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'event.php',
3276
- 'c' => 'Ai1ec_Factory_Event',
3277
  'i' => 'g',
3278
- 'r' => 'y',
3279
  ),
3280
- 'factory.html' =>
3281
  array (
3282
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'html.php',
3283
- 'c' => 'Ai1ec_Factory_Html',
3284
  'i' => 'g',
3285
- 'r' => 'y',
3286
  ),
3287
- 'factory.strategy' =>
3288
  array (
3289
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'strategy.php',
3290
- 'c' => 'Ai1ec_Factory_Strategy',
3291
  'i' => 'g',
3292
- 'r' => 'y',
3293
  ),
3294
- 'filesystem.checker' =>
3295
  array (
3296
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'filesystem' . DIRECTORY_SEPARATOR . 'checker.php',
3297
- 'c' => 'Ai1ec_Filesystem_Checker',
3298
  'i' => 'g',
3299
  ),
3300
- 'filesystem.misc' =>
3301
  array (
3302
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'filesystem' . DIRECTORY_SEPARATOR . 'misc.php',
3303
- 'c' => 'Ai1ec_Filesystem_Misc',
3304
  'i' => 'g',
3305
  'r' => 'y',
3306
  ),
3307
- 'html.element.href' =>
3308
  array (
3309
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'href.php',
3310
- 'c' => 'Ai1ec_Html_Element_Href',
3311
- 'i' => 'Ai1ec_Factory_Html.create_href_helper_instance',
3312
  ),
3313
- 'html.element.interface' =>
3314
  array (
3315
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'interface.php',
3316
- 'c' => 'Ai1ec_Html_Element_Interface',
3317
  'i' => 'g',
3318
  ),
3319
- 'html.element.legacy.abstract.html-element' =>
3320
  array (
3321
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'abstract' . DIRECTORY_SEPARATOR . 'html-element.php',
3322
- 'c' => 'Ai1ec_Html_Element',
3323
  'i' => 'g',
3324
  'r' => 'y',
3325
  ),
3326
- 'html.element.legacy.abstract.interface' =>
3327
  array (
3328
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'abstract' . DIRECTORY_SEPARATOR . 'interface.php',
3329
- 'c' => 'Ai1ec_Renderable',
3330
  'i' => 'g',
3331
  ),
3332
- 'html.element.legacy.bootstrap.modal' =>
3333
- array (
3334
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'modal.php',
3335
- 'c' => 'Ai1ec_Bootstrap_Modal',
3336
- 'i' => 'n',
3337
- 'r' => 'y',
3338
- ),
3339
- 'html.element.setting-renderer' =>
3340
  array (
3341
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting-renderer.php',
3342
- 'c' => 'Ai1ec_Html_Setting_Renderer',
3343
  'i' => 'g',
3344
- 'r' => 'y',
3345
  ),
3346
- 'html.element.setting.abstract' =>
3347
  array (
3348
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'abstract.php',
3349
- 'c' => 'Ai1ec_Html_Element_Settings',
3350
  'i' => 'g',
3351
- 'r' => 'y',
3352
  ),
3353
- 'html.element.setting.cache' =>
3354
  array (
3355
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'cache.php',
3356
- 'c' => 'Ai1ec_Html_Setting_Cache',
3357
- 'i' => 'n',
3358
- 'r' => 'y',
3359
  ),
3360
- 'html.element.setting.calendar-page-selector' =>
3361
  array (
3362
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'calendar-page-selector.php',
3363
- 'c' => 'Ai1ec_Html_Element_Calendar_Page_Selector',
3364
  'i' => 'g',
3365
- 'r' => 'y',
3366
  ),
3367
- 'html.element.setting.checkbox' =>
3368
  array (
3369
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'checkbox.php',
3370
- 'c' => 'Ai1ec_Html_Settings_Checkbox',
3371
  'i' => 'n',
3372
- 'r' => 'y',
3373
  ),
3374
- 'html.element.setting.enabled-views' =>
3375
  array (
3376
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'enabled-views.php',
3377
- 'c' => 'Ai1ec_Html_Element_Enabled_Views',
3378
  'i' => 'g',
3379
  'r' => 'y',
3380
  ),
3381
- 'html.element.setting.html' =>
3382
  array (
3383
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'html.php',
3384
- 'c' => 'Ai1ec_Html_Setting_Html',
3385
  'i' => 'n',
3386
  'r' => 'y',
3387
  ),
3388
- 'html.element.setting.input' =>
3389
  array (
3390
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'input.php',
3391
- 'c' => 'Ai1ec_Html_Setting_Input',
3392
  'i' => 'n',
3393
  'r' => 'y',
3394
  ),
3395
- 'html.element.setting.select' =>
3396
  array (
3397
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'select.php',
3398
- 'c' => 'Ai1ec_Html_Setting_Select',
3399
  'i' => 'n',
3400
  'r' => 'y',
3401
  ),
3402
- 'html.element.setting.tags-categories' =>
3403
  array (
3404
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'tags-categories.php',
3405
- 'c' => 'Ai1ec_Html_Setting_Tags_Categories',
3406
- 'i' => 'n',
3407
- 'r' => 'y',
3408
  ),
3409
- 'html.element.setting.textarea' =>
3410
  array (
3411
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'textarea.php',
3412
- 'c' => 'Ai1ec_Html_Setting_Textarea',
3413
  'i' => 'n',
3414
  'r' => 'y',
3415
  ),
3416
- 'html.exception' =>
3417
  array (
3418
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'exception.php',
3419
- 'c' => 'Ai1ec_Html_Exception',
3420
  'i' => 'g',
 
3421
  ),
3422
- 'html.helper' =>
3423
  array (
3424
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'helper.php',
3425
- 'c' => 'Ai1ec_Html_Helper',
3426
  'i' => 'g',
 
3427
  ),
3428
- 'http.encoder' =>
3429
  array (
3430
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'encoder.php',
3431
- 'c' => 'Ai1ec_HTTP_Encoder',
3432
  'i' => 'g',
 
3433
  ),
3434
- 'http.request' =>
3435
  array (
3436
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request.php',
3437
- 'c' => 'Ai1ec_Http_Request',
3438
  'i' => 'g',
3439
  'r' => 'y',
3440
  ),
3441
- 'http.request.abstract' =>
3442
  array (
3443
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'abstract.php',
3444
- 'c' => 'Ai1ec_Abstract_Query',
3445
  'i' => 'g',
3446
- 'r' => 'y',
3447
  ),
3448
- 'http.request.interface' =>
3449
  array (
3450
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'interface.php',
3451
- 'c' => 'Ai1ec_Adapter_Query_Interface',
3452
  'i' => 'g',
 
3453
  ),
3454
- 'http.request.parser' =>
3455
  array (
3456
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'parser.php',
3457
- 'c' => 'Ai1ec_Request_Parser',
3458
- 'i' => 'n',
3459
  'r' => 'y',
3460
  ),
3461
- 'http.request.wordpress-adapter' =>
3462
  array (
3463
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'wordpress-adapter.php',
3464
- 'c' => 'Ai1ec_Adapter_Query_Wordpress',
3465
  'i' => 'g',
 
3466
  ),
3467
- 'http.response.helper' =>
3468
  array (
3469
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'helper.php',
3470
- 'c' => 'Ai1ec_Http_Response_Helper',
3471
  'i' => 'g',
 
3472
  ),
3473
- 'http.response.render.abstract' =>
3474
  array (
3475
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'abstract.php',
3476
- 'c' => 'Ai1ec_Http_Response_Render_Strategy',
3477
  'i' => 'g',
3478
  'r' => 'y',
3479
  ),
3480
- 'http.response.render.strategy.csv' =>
3481
  array (
3482
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'csv.php',
3483
- 'c' => 'Ai1ec_Render_Strategy_Csv',
3484
  'i' => 'g',
3485
  'r' => 'y',
3486
  ),
3487
- 'http.response.render.strategy.html' =>
3488
  array (
3489
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'html.php',
3490
- 'c' => 'Ai1ec_Render_Strategy_Html',
3491
  'i' => 'g',
3492
  'r' => 'y',
3493
  ),
3494
- 'http.response.render.strategy.ical' =>
3495
  array (
3496
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'ical.php',
3497
- 'c' => 'Ai1ec_Render_Strategy_Ical',
3498
  'i' => 'g',
3499
  'r' => 'y',
3500
  ),
3501
- 'http.response.render.strategy.json' =>
3502
  array (
3503
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'json.php',
3504
- 'c' => 'Ai1ec_Render_Strategy_Json',
3505
  'i' => 'g',
3506
  'r' => 'y',
3507
  ),
3508
- 'http.response.render.strategy.jsonp' =>
3509
  array (
3510
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'jsonp.php',
3511
- 'c' => 'Ai1ec_Render_Strategy_Jsonp',
3512
  'i' => 'g',
3513
  'r' => 'y',
3514
  ),
3515
- 'http.response.render.strategy.redirect' =>
3516
  array (
3517
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'redirect.php',
3518
- 'c' => 'Ai1ec_Render_Strategy_Redirect',
3519
  'i' => 'g',
3520
  'r' => 'y',
3521
  ),
3522
- 'http.response.render.strategy.void' =>
3523
  array (
3524
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'void.php',
3525
- 'c' => 'Ai1ec_Render_Strategy_Void',
3526
  'i' => 'g',
3527
  'r' => 'y',
3528
  ),
3529
- 'http.response.render.strategy.xml' =>
3530
  array (
3531
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'xml.php',
3532
- 'c' => 'Ai1ec_Render_Strategy_Xml',
3533
  'i' => 'g',
3534
  'r' => 'y',
3535
  ),
3536
- 'iCal.SG_iCal' =>
3537
  array (
3538
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'SG_iCal.php',
3539
- 'c' => 'SG_iCalReader',
3540
  'i' => 'g',
 
3541
  ),
3542
- 'iCal.block.SG_iCal_VCalendar' =>
3543
  array (
3544
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VCalendar.php',
3545
- 'c' => 'SG_iCal_VCalendar',
3546
  'i' => 'g',
 
3547
  ),
3548
- 'iCal.block.SG_iCal_VEvent' =>
3549
  array (
3550
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VEvent.php',
3551
- 'c' => 'SG_iCal_VEvent',
3552
  'i' => 'g',
 
3553
  ),
3554
- 'iCal.block.SG_iCal_VTimeZone' =>
3555
  array (
3556
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VTimeZone.php',
3557
- 'c' => 'SG_iCal_VTimeZone',
3558
  'i' => 'g',
 
3559
  ),
3560
- 'iCal.helper.SG_iCal_Duration' =>
3561
  array (
3562
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Duration.php',
3563
- 'c' => 'SG_iCal_Duration',
3564
  'i' => 'g',
 
3565
  ),
3566
- 'iCal.helper.SG_iCal_Factory' =>
3567
  array (
3568
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Factory.php',
3569
- 'c' => 'SG_iCal_Factory',
3570
  'i' => 'g',
 
3571
  ),
3572
- 'iCal.helper.SG_iCal_Freq' =>
3573
  array (
3574
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Freq.php',
3575
- 'c' => 'SG_iCal_Freq',
3576
  'i' => 'g',
 
3577
  ),
3578
- 'iCal.helper.SG_iCal_Line' =>
3579
  array (
3580
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Line.php',
3581
- 'c' => 'SG_iCal_Line',
3582
  'i' => 'g',
3583
  ),
3584
- 'iCal.helper.SG_iCal_Parser' =>
3585
  array (
3586
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Parser.php',
3587
- 'c' => 'SG_iCal_Parser',
3588
  'i' => 'g',
 
3589
  ),
3590
- 'iCal.helper.SG_iCal_Query' =>
3591
  array (
3592
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Query.php',
3593
- 'c' => 'SG_iCal_Query',
3594
  'i' => 'g',
 
3595
  ),
3596
- 'iCal.helper.SG_iCal_Recurrence' =>
3597
  array (
3598
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Recurrence.php',
3599
- 'c' => 'SG_iCal_Recurrence',
3600
  'i' => 'g',
 
3601
  ),
3602
- 'iCal.iCalcnv-3.0.iCalcnv.class' =>
3603
  array (
3604
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcnv-3.0' . DIRECTORY_SEPARATOR . 'iCalcnv.class.php',
3605
- 'c' => 'iCalcnv',
3606
  'i' => 'g',
3607
  ),
3608
- 'iCal.iCalcreator-2.20.iCalcreator.class' =>
3609
  array (
3610
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
3611
- 'c' => 'iCalUtilityFunctions',
3612
  'i' => 'g',
 
3613
  ),
3614
- 'iCalUtilityFunctions' =>
3615
  array (
3616
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
3617
- 'c' => 'iCalUtilityFunctions',
3618
  'i' => 'g',
 
3619
  ),
3620
- 'iCalcnv' =>
3621
  array (
3622
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcnv-3.0' . DIRECTORY_SEPARATOR . 'iCalcnv.class.php',
3623
- 'c' => 'iCalcnv',
3624
  'i' => 'g',
 
3625
  ),
3626
- 'import-export.exception' =>
3627
  array (
3628
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'exception.php',
3629
- 'c' => 'Ai1ec_Parse_Exception',
3630
  'i' => 'g',
3631
  ),
3632
- 'import-export.ics' =>
3633
  array (
3634
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'ics.php',
3635
- 'c' => 'Ai1ec_Ics_Import_Export_Engine',
3636
  'i' => 'g',
3637
- 'r' => 'y',
3638
  ),
3639
- 'import-export.interface.import-export-engine' =>
3640
  array (
3641
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'interface' . DIRECTORY_SEPARATOR . 'import-export-engine.php',
3642
- 'c' => 'Ai1ec_Import_Export_Engine',
3643
  'i' => 'g',
3644
  ),
3645
- 'import-export.interface.import-export-service-engine' =>
3646
  array (
3647
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'interface' . DIRECTORY_SEPARATOR . 'import-export-service-engine.php',
3648
- 'c' => 'Ai1ec_Import_Export_Service_Engine',
3649
  'i' => 'g',
3650
  ),
3651
- 'less.lessphp' =>
3652
  array (
3653
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'lessphp.php',
3654
- 'c' => 'Ai1ec_Less_Lessphp',
3655
  'i' => 'g',
3656
- 'r' => 'y',
3657
  ),
3658
- 'less.variable.abstract' =>
3659
  array (
3660
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'abstract.php',
3661
- 'c' => 'Ai1ec_Less_Variable',
3662
  'i' => 'g',
3663
  'r' => 'y',
3664
  ),
3665
- 'less.variable.color' =>
3666
  array (
3667
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'color.php',
3668
- 'c' => 'Ai1ec_Less_Variable_Color',
3669
- 'i' => 'n',
3670
  'r' => 'y',
3671
  ),
3672
- 'less.variable.font' =>
3673
  array (
3674
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'font.php',
3675
- 'c' => 'Ai1ec_Less_Variable_Font',
3676
- 'i' => 'n',
3677
  'r' => 'y',
3678
  ),
3679
- 'less.variable.size' =>
3680
  array (
3681
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'size.php',
3682
- 'c' => 'Ai1ec_Less_Variable_Size',
3683
- 'i' => 'n',
3684
- 'r' => 'y',
3685
  ),
3686
- 'lessc' =>
3687
  array (
3688
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3689
- 'c' => 'lessc',
3690
  'i' => 'g',
3691
  ),
3692
- 'lessc_formatter_classic' =>
3693
  array (
3694
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3695
- 'c' => 'lessc_formatter_classic',
3696
  'i' => 'g',
 
3697
  ),
3698
- 'lessc_formatter_compressed' =>
3699
  array (
3700
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3701
- 'c' => 'lessc_formatter_compressed',
3702
  'i' => 'g',
 
3703
  ),
3704
- 'lessc_formatter_lessjs' =>
3705
  array (
3706
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3707
- 'c' => 'lessc_formatter_lessjs',
3708
  'i' => 'g',
 
3709
  ),
3710
- 'lessc_parser' =>
3711
  array (
3712
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3713
- 'c' => 'lessc_parser',
3714
  'i' => 'g',
 
3715
  ),
3716
- 'lessphp.lessc.inc' =>
3717
  array (
3718
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
3719
- 'c' => 'lessc_formatter_lessjs',
3720
  'i' => 'g',
 
3721
  ),
3722
- 'minify.ConditionalGet' =>
3723
  array (
3724
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'minify' . DIRECTORY_SEPARATOR . 'ConditionalGet.php',
3725
- 'c' => 'HTTP_ConditionalGet',
3726
  'i' => 'g',
3727
  ),
3728
- 'minify.Encoder' =>
3729
  array (
3730
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'minify' . DIRECTORY_SEPARATOR . 'Encoder.php',
3731
- 'c' => 'HTTP_Encoder',
3732
  'i' => 'g',
3733
  ),
3734
- 'model.app' =>
3735
  array (
3736
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'app.php',
3737
- 'c' => 'Ai1ec_App',
3738
  'i' => 'g',
3739
- 'r' => 'y',
3740
  ),
3741
- 'model.event' =>
3742
  array (
3743
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event.php',
3744
- 'c' => 'Ai1ec_Event',
3745
- 'i' => 'Ai1ec_Factory_Event.create_event_instance',
3746
  'r' => 'y',
3747
  ),
3748
- 'model.event-compatibility' =>
3749
  array (
3750
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event-compatibility.php',
3751
- 'c' => 'Ai1ec_Event_Compatibility',
3752
- 'i' => 'Ai1ec_Factory_Event.create_event_instance',
3753
  'r' => 'y',
3754
  ),
3755
- 'model.event.creating' =>
3756
  array (
3757
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'creating.php',
3758
- 'c' => 'Ai1ec_Event_Creating',
3759
  'i' => 'g',
3760
- 'r' => 'y',
3761
  ),
3762
- 'model.event.entity' =>
3763
  array (
3764
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'entity.php',
3765
- 'c' => 'Ai1ec_Event_Entity',
3766
- 'i' => 'n',
3767
- 'r' => 'y',
3768
  ),
3769
- 'model.event.event-create-exception' =>
3770
  array (
3771
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'event-create-exception.php',
3772
- 'c' => 'Ai1ec_Event_Create_Exception',
3773
  'i' => 'g',
3774
  ),
3775
- 'model.event.instance' =>
3776
  array (
3777
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'instance.php',
3778
- 'c' => 'Ai1ec_Event_Instance',
3779
  'i' => 'g',
3780
- 'r' => 'y',
3781
  ),
3782
- 'model.event.invalid-argument-exception' =>
3783
  array (
3784
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'invalid-argument-exception.php',
3785
- 'c' => 'Ai1ec_Invalid_Argument_Exception',
3786
  'i' => 'g',
 
3787
  ),
3788
- 'model.event.legacy' =>
3789
  array (
3790
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'legacy.php',
3791
- 'c' => 'Ai1ec_Event_Legacy',
3792
  'i' => 'n',
3793
  'r' => 'y',
3794
  ),
3795
- 'model.event.not-found-exception' =>
3796
  array (
3797
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'not-found-exception.php',
3798
- 'c' => 'Ai1ec_Event_Not_Found_Exception',
3799
  'i' => 'g',
 
3800
  ),
3801
- 'model.event.parent' =>
3802
  array (
3803
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'parent.php',
3804
- 'c' => 'Ai1ec_Event_Parent',
3805
  'i' => 'g',
3806
  'r' => 'y',
3807
  ),
3808
- 'model.event.taxonomy' =>
3809
  array (
3810
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'taxonomy.php',
3811
- 'c' => 'Ai1ec_Event_Taxonomy',
3812
- 'i' => 'n',
3813
- 'r' => 'y',
3814
  ),
3815
- 'model.event.trashing' =>
3816
  array (
3817
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'trashing.php',
3818
- 'c' => 'Ai1ec_Event_Trashing',
3819
  'i' => 'g',
3820
  'r' => 'y',
3821
  ),
3822
- 'model.filter.auth_ids' =>
3823
  array (
3824
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'auth_ids.php',
3825
- 'c' => 'Ai1ec_Filter_Authors',
3826
- 'i' => 'n',
3827
  'r' => 'y',
3828
  ),
3829
- 'model.filter.cat_ids' =>
3830
  array (
3831
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'cat_ids.php',
3832
- 'c' => 'Ai1ec_Filter_Categories',
3833
- 'i' => 'n',
3834
  'r' => 'y',
3835
  ),
3836
- 'model.filter.instance_ids' =>
3837
  array (
3838
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'instance_ids.php',
3839
- 'c' => 'Ai1ec_Filter_Posts_By_Instance',
3840
- 'i' => 'n',
3841
- 'r' => 'y',
3842
  ),
3843
- 'model.filter.int' =>
3844
  array (
3845
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'int.php',
3846
- 'c' => 'Ai1ec_Filter_Int',
3847
  'i' => 'g',
3848
  'r' => 'y',
3849
  ),
3850
- 'model.filter.interface' =>
3851
  array (
3852
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'interface.php',
3853
- 'c' => 'Ai1ec_Filter_Interface',
3854
- 'i' => 'g',
 
3855
  ),
3856
- 'model.filter.post_ids' =>
3857
  array (
3858
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'post_ids.php',
3859
- 'c' => 'Ai1ec_Filter_Posts',
3860
  'i' => 'n',
3861
  'r' => 'y',
3862
  ),
3863
- 'model.filter.tag_ids' =>
3864
  array (
3865
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'tag_ids.php',
3866
- 'c' => 'Ai1ec_Filter_Tags',
3867
  'i' => 'n',
3868
  'r' => 'y',
3869
  ),
3870
- 'model.filter.taxonomy' =>
3871
  array (
3872
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'taxonomy.php',
3873
- 'c' => 'Ai1ec_Filter_Taxonomy',
3874
  'i' => 'g',
3875
  'r' => 'y',
3876
  ),
3877
- 'model.meta' =>
3878
  array (
3879
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta.php',
3880
- 'c' => 'Ai1ec_Meta',
3881
  'i' => 'g',
3882
- 'r' => 'y',
3883
  ),
3884
- 'model.meta-post' =>
3885
  array (
3886
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta-post.php',
3887
- 'c' => 'Ai1ec_Meta_Post',
3888
  'i' => 'g',
3889
- 'r' => 'y',
3890
  ),
3891
- 'model.meta-user' =>
3892
  array (
3893
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta-user.php',
3894
- 'c' => 'Ai1ec_Meta_User',
3895
  'i' => 'g',
3896
- 'r' => 'y',
3897
  ),
3898
- 'model.option' =>
3899
  array (
3900
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'option.php',
3901
- 'c' => 'Ai1ec_Option',
3902
  'i' => 'g',
3903
  'r' => 'y',
3904
  ),
3905
- 'model.search' =>
3906
  array (
3907
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'search.php',
3908
- 'c' => 'Ai1ec_Event_Search',
3909
  'i' => 'g',
3910
  'r' => 'y',
3911
  ),
3912
- 'model.settings' =>
3913
  array (
3914
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings.php',
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3915
  'c' => 'Ai1ec_Settings',
3916
  'i' => 'g',
3917
  'r' => 'y',
3918
  ),
3919
- 'model.settings-view' =>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3920
  array (
3921
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings-view.php',
3922
- 'c' => 'Ai1ec_Settings_View',
3923
  'i' => 'g',
3924
- 'r' => 'y',
3925
  ),
3926
- 'model.settings.exception' =>
3927
  array (
3928
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings' . DIRECTORY_SEPARATOR . 'exception.php',
3929
- 'c' => 'Ai1ec_Settings_Exception',
3930
  'i' => 'g',
3931
  ),
3932
- 'model.taxonomy' =>
3933
  array (
3934
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'taxonomy.php',
3935
- 'c' => 'Ai1ec_Taxonomy',
3936
  'i' => 'g',
3937
- 'r' => 'y',
3938
  ),
3939
- 'news.feed' =>
3940
  array (
3941
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'news' . DIRECTORY_SEPARATOR . 'feed.php',
3942
- 'c' => 'Ai1ec_News_Feed',
3943
  'i' => 'g',
3944
  ),
3945
- 'notification.abstract' =>
3946
  array (
3947
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'abstract.php',
3948
- 'c' => 'Ai1ec_Notification',
3949
  'i' => 'g',
3950
- 'r' => 'y',
3951
  ),
3952
- 'notification.admin' =>
3953
  array (
3954
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'admin.php',
3955
- 'c' => 'Ai1ec_Notification_Admin',
3956
  'i' => 'g',
3957
- 'r' => 'y',
3958
  ),
3959
- 'notification.email' =>
3960
  array (
3961
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'email.php',
3962
- 'c' => 'Ai1ec_Email_Notification',
3963
- 'i' => 'n',
3964
- 'r' => 'y',
3965
  ),
3966
- 'p28n.i18n' =>
3967
  array (
3968
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'p28n' . DIRECTORY_SEPARATOR . 'i18n.php',
3969
- 'c' => 'Ai1ec_I18n',
3970
  'i' => 'g',
3971
  ),
3972
- 'p28n.wpml' =>
3973
  array (
3974
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'p28n' . DIRECTORY_SEPARATOR . 'wpml.php',
3975
- 'c' => 'Ai1ec_Localization_Helper',
3976
  'i' => 'g',
3977
  ),
3978
- 'parser.date' =>
3979
  array (
3980
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'parser' . DIRECTORY_SEPARATOR . 'date.php',
3981
- 'c' => 'Ai1ec_Parser_Date',
3982
  'i' => 'g',
3983
  ),
3984
- 'parser.frequency' =>
3985
  array (
3986
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'parser' . DIRECTORY_SEPARATOR . 'frequency.php',
3987
- 'c' => 'Ai1ec_Frequency_Utility',
3988
- 'i' => 'n',
3989
  ),
3990
- 'post.content' =>
3991
  array (
3992
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'post' . DIRECTORY_SEPARATOR . 'content.php',
3993
- 'c' => 'Ai1ec_Post_Content_Check',
3994
  'i' => 'g',
3995
- 'r' => 'y',
3996
  ),
3997
- 'post.custom-type' =>
3998
  array (
3999
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'post' . DIRECTORY_SEPARATOR . 'custom-type.php',
4000
- 'c' => 'Ai1ec_Post_Custom_Type',
4001
  'i' => 'g',
4002
- 'r' => 'y',
4003
  ),
4004
- 'primitive.array' =>
4005
  array (
4006
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'primitive' . DIRECTORY_SEPARATOR . 'array.php',
4007
- 'c' => 'Ai1ec_Primitive_Array',
4008
  'i' => 'g',
4009
  ),
4010
- 'primitive.int' =>
4011
  array (
4012
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'primitive' . DIRECTORY_SEPARATOR . 'int.php',
4013
- 'c' => 'Ai1ec_Primitive_Int',
4014
  'i' => 'g',
4015
  ),
4016
- 'query.helper' =>
4017
  array (
4018
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'query' . DIRECTORY_SEPARATOR . 'helper.php',
4019
- 'c' => 'Ai1ec_Query_Helper',
4020
  'i' => 'g',
4021
  ),
4022
- 'recaptcha.recaptchalib' =>
4023
  array (
4024
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'recaptcha' . DIRECTORY_SEPARATOR . 'recaptchalib.php',
4025
- 'c' => 'ReCaptchaResponse',
4026
  'i' => 'g',
4027
  ),
4028
- 'recurrence.rule' =>
4029
  array (
4030
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'recurrence' . DIRECTORY_SEPARATOR . 'rule.php',
4031
- 'c' => 'Ai1ec_Recurrence_Rule',
4032
  'i' => 'g',
4033
- 'r' => 'y',
4034
  ),
4035
- 'request.redirect' =>
4036
  array (
4037
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'redirect.php',
4038
- 'c' => 'Ai1ec_Request_Redirect',
4039
  'i' => 'g',
4040
- 'r' => 'y',
4041
  ),
4042
- 'rewrite.helper' =>
4043
  array (
4044
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'rewrite' . DIRECTORY_SEPARATOR . 'helper.php',
4045
- 'c' => 'Ai1ec_Rewrite_Helper',
4046
  'i' => 'g',
4047
  ),
4048
- 'robots.helper' =>
4049
  array (
4050
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'robots' . DIRECTORY_SEPARATOR . 'helper.php',
4051
- 'c' => 'Ai1ec_Robots_Helper',
4052
  'i' => 'g',
4053
- 'r' => 'y',
4054
  ),
4055
- 'routing.router' =>
4056
  array (
4057
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'router.php',
4058
- 'c' => 'Ai1ec_Router',
4059
  'i' => 'g',
4060
- 'r' => 'y',
4061
  ),
4062
- 'routing.uri' =>
4063
  array (
4064
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri.php',
4065
- 'c' => 'Ai1ec_Uri',
4066
  'i' => 'g',
4067
  ),
4068
- 'routing.uri-helper' =>
4069
  array (
4070
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri-helper.php',
4071
- 'c' => 'Ai1ec_Wp_Uri_Helper',
4072
  'i' => 'g',
4073
  ),
4074
- 'scheduling.exception' =>
4075
  array (
4076
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'scheduling' . DIRECTORY_SEPARATOR . 'exception.php',
4077
- 'c' => 'Ai1ec_Scheduling_Exception',
4078
  'i' => 'g',
4079
  ),
4080
- 'scheduling.utility' =>
4081
  array (
4082
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'scheduling' . DIRECTORY_SEPARATOR . 'utility.php',
4083
- 'c' => 'Ai1ec_Scheduling_Utility',
4084
  'i' => 'g',
4085
- 'r' => 'y',
4086
  ),
4087
- 'script.helper' =>
4088
  array (
4089
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'script' . DIRECTORY_SEPARATOR . 'helper.php',
4090
- 'c' => 'Ai1ec_Script_Helper',
4091
  'i' => 'g',
4092
  ),
4093
- 'template.link.helper' =>
4094
  array (
4095
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'template' . DIRECTORY_SEPARATOR . 'link' . DIRECTORY_SEPARATOR . 'helper.php',
4096
- 'c' => 'Ai1ec_Template_Link_Helper',
4097
  'i' => 'g',
4098
  ),
4099
- 'theme.compiler' =>
4100
  array (
4101
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'compiler.php',
4102
- 'c' => 'Ai1ec_Theme_Compiler',
4103
  'i' => 'g',
4104
- 'r' => 'y',
4105
  ),
4106
- 'theme.file.abstract' =>
4107
  array (
4108
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'abstract.php',
4109
- 'c' => 'Ai1ec_File_Abstract',
4110
  'i' => 'g',
4111
- 'r' => 'y',
4112
  ),
4113
- 'theme.file.exception' =>
4114
  array (
4115
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'exception.php',
4116
- 'c' => 'Ai1ec_File_Exception',
4117
  'i' => 'g',
4118
  ),
4119
- 'theme.file.image' =>
4120
  array (
4121
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'image.php',
4122
- 'c' => 'Ai1ec_File_Image',
4123
- 'i' => 'n',
4124
- 'r' => 'y',
4125
  ),
4126
- 'theme.file.less' =>
4127
  array (
4128
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'less.php',
4129
- 'c' => 'Ai1ec_File_Less',
4130
- 'i' => 'n',
4131
- 'r' => 'y',
4132
  ),
4133
- 'theme.file.php' =>
4134
  array (
4135
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'php.php',
4136
- 'c' => 'Ai1ec_File_Php',
4137
- 'i' => 'n',
4138
- 'r' => 'y',
4139
  ),
4140
- 'theme.file.twig' =>
4141
  array (
4142
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'twig.php',
4143
- 'c' => 'Ai1ec_File_Twig',
4144
- 'i' => 'n',
4145
  ),
4146
- 'theme.list' =>
4147
  array (
4148
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'list.php',
4149
- 'c' => 'Ai1ec_Theme_List',
4150
  'i' => 'g',
4151
- 'r' => 'y',
4152
  ),
4153
- 'theme.loader' =>
4154
  array (
4155
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'loader.php',
4156
- 'c' => 'Ai1ec_Theme_Loader',
4157
  'i' => 'g',
4158
- 'r' => 'y',
4159
  ),
4160
- 'theme.search' =>
4161
  array (
4162
- 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'search.php',
4163
- 'c' => 'Ai1ec_Theme_Search',
4164
  'i' => 'g',
4165
- 'r' => 'y',
4166
  ),
4167
  'twig.Compiler' =>
4168
  array (
@@ -5100,12 +6065,108 @@
5100
  'c' => 'Twig_TokenStream',
5101
  'i' => 'g',
5102
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5103
  'twig.ai1ec-extension' =>
5104
  array (
5105
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'ai1ec-extension.php',
5106
  'c' => 'Ai1ec_Twig_Ai1ec_Extension',
5107
  'i' => 'g',
5108
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5109
  'twig.cache' =>
5110
  array (
5111
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'cache.php',
@@ -5113,18 +6174,127 @@
5113
  'i' => 'g',
5114
  'r' => 'y',
5115
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5116
  'twig.environment' =>
5117
  array (
5118
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'environment.php',
5119
  'c' => 'Ai1ec_Twig_Environment',
5120
  'i' => 'g',
5121
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5122
  'twig.loader' =>
5123
  array (
5124
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'loader.php',
5125
  'c' => 'Ai1ec_Twig_Loader_Filesystem',
5126
  'i' => 'g',
5127
  ),
 
 
 
 
 
 
 
5128
  'valarm' =>
5129
  array (
5130
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
@@ -5138,12 +6308,26 @@
5138
  'i' => 'g',
5139
  'r' => 'y',
5140
  ),
 
 
 
 
 
 
 
5141
  'validator.exception' =>
5142
  array (
5143
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'exception.php',
5144
  'c' => 'Ai1ec_Value_Not_Valid_Exception',
5145
  'i' => 'g',
5146
  ),
 
 
 
 
 
 
 
5147
  'validator.numeric' =>
5148
  array (
5149
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'numeric.php',
1330
  'c' => 'Ai1ec_Shutdown_Controller',
1331
  'i' => 'g',
1332
  ),
1333
+ 'Ai1ec_Size_Converter_Utility' =>
1334
+ array (
1335
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'size' . DIRECTORY_SEPARATOR . 'converter.php',
1336
+ 'c' => 'Ai1ec_Size_Converter_Utility',
1337
+ 'i' => 'g',
1338
+ 'r' => 'y',
1339
+ ),
1340
  'Ai1ec_Taxonomy' =>
1341
  array (
1342
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'taxonomy.php',
1416
  'c' => 'Ai1ec_Twig_Loader_Filesystem',
1417
  'i' => 'g',
1418
  ),
1419
+ 'Ai1ec_Upload_Size_Determiner_Utility' =>
1420
+ array (
1421
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'upload' . DIRECTORY_SEPARATOR . 'size-determiner.php',
1422
+ 'c' => 'Ai1ec_Upload_Size_Determiner_Utility',
1423
+ 'i' => 'g',
1424
+ 'r' => 'y',
1425
+ ),
1426
  'Ai1ec_Uri' =>
1427
  array (
1428
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri.php',
1442
  'i' => 'g',
1443
  'r' => 'y',
1444
  ),
1445
+ 'Ai1ec_Validator_Email' =>
1446
+ array (
1447
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'email.php',
1448
+ 'c' => 'Ai1ec_Validator_Email',
1449
+ 'i' => 'n',
1450
+ 'r' => 'y',
1451
+ ),
1452
+ 'Ai1ec_Validator_Human_Readable_Size' =>
1453
+ array (
1454
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'human-readable-size.php',
1455
+ 'c' => 'Ai1ec_Validator_Human_Readable_Size',
1456
+ 'i' => 'n',
1457
+ 'r' => 'y',
1458
+ ),
1459
  'Ai1ec_Validator_Numeric_Or_Default' =>
1460
  array (
1461
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'numeric.php',
2693
  'c' => 'Twig_TokenStream',
2694
  'i' => 'g',
2695
  ),
2696
+ '__TwigTemplate_0372ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8' =>
2697
  array (
2698
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '03' . DIRECTORY_SEPARATOR . '72' . DIRECTORY_SEPARATOR . 'ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8.php',
2699
+ 'c' => '__TwigTemplate_0372ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8',
2700
  'i' => 'g',
2701
  ),
2702
+ '__TwigTemplate_08d260d90987101ec432b0392e970794b475660dc3505582327e77eef0670735' =>
2703
  array (
2704
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'd2' . DIRECTORY_SEPARATOR . '60d90987101ec432b0392e970794b475660dc3505582327e77eef0670735.php',
2705
+ 'c' => '__TwigTemplate_08d260d90987101ec432b0392e970794b475660dc3505582327e77eef0670735',
2706
  'i' => 'g',
 
2707
  ),
2708
+ '__TwigTemplate_08e44d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00' =>
2709
  array (
2710
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'e4' . DIRECTORY_SEPARATOR . '4d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00.php',
2711
+ 'c' => '__TwigTemplate_08e44d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00',
2712
  'i' => 'g',
2713
  ),
2714
+ '__TwigTemplate_08e7a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc' =>
2715
  array (
2716
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'e7' . DIRECTORY_SEPARATOR . 'a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc.php',
2717
+ 'c' => '__TwigTemplate_08e7a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc',
2718
  'i' => 'g',
2719
  ),
2720
+ '__TwigTemplate_0aaa4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46' =>
2721
  array (
2722
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46.php',
2723
+ 'c' => '__TwigTemplate_0aaa4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46',
2724
  'i' => 'g',
 
2725
  ),
2726
+ '__TwigTemplate_0be5dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9' =>
2727
  array (
2728
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0b' . DIRECTORY_SEPARATOR . 'e5' . DIRECTORY_SEPARATOR . 'dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9.php',
2729
+ 'c' => '__TwigTemplate_0be5dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9',
2730
  'i' => 'g',
2731
  ),
2732
+ '__TwigTemplate_0bf13e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd' =>
2733
  array (
2734
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0b' . DIRECTORY_SEPARATOR . 'f1' . DIRECTORY_SEPARATOR . '3e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd.php',
2735
+ 'c' => '__TwigTemplate_0bf13e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd',
2736
  'i' => 'g',
2737
  ),
2738
+ '__TwigTemplate_0ed077483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20' =>
2739
  array (
2740
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0e' . DIRECTORY_SEPARATOR . 'd0' . DIRECTORY_SEPARATOR . '77483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20.php',
2741
+ 'c' => '__TwigTemplate_0ed077483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20',
2742
  'i' => 'g',
2743
  ),
2744
+ '__TwigTemplate_1c59d9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd' =>
2745
  array (
2746
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1c' . DIRECTORY_SEPARATOR . '59' . DIRECTORY_SEPARATOR . 'd9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd.php',
2747
+ 'c' => '__TwigTemplate_1c59d9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd',
2748
  'i' => 'g',
2749
  ),
2750
+ '__TwigTemplate_1db441d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550' =>
2751
  array (
2752
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1d' . DIRECTORY_SEPARATOR . 'b4' . DIRECTORY_SEPARATOR . '41d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550.php',
2753
+ 'c' => '__TwigTemplate_1db441d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550',
2754
  'i' => 'g',
2755
  ),
2756
+ '__TwigTemplate_1f25bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d' =>
2757
  array (
2758
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . 'bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d.php',
2759
+ 'c' => '__TwigTemplate_1f25bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d',
2760
+ 'i' => 'g',
2761
  ),
2762
+ '__TwigTemplate_1f30d67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff' =>
2763
  array (
2764
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '30' . DIRECTORY_SEPARATOR . 'd67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff.php',
2765
+ 'c' => '__TwigTemplate_1f30d67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff',
2766
  'i' => 'g',
 
2767
  ),
2768
+ '__TwigTemplate_1f5301836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a' =>
2769
  array (
2770
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '53' . DIRECTORY_SEPARATOR . '01836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a.php',
2771
+ 'c' => '__TwigTemplate_1f5301836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a',
2772
+ 'i' => 'g',
 
2773
  ),
2774
+ '__TwigTemplate_1fc7b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5' =>
2775
  array (
2776
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . 'b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5.php',
2777
+ 'c' => '__TwigTemplate_1fc7b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5',
2778
+ 'i' => 'g',
 
2779
  ),
2780
+ '__TwigTemplate_21cfb7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099' =>
2781
  array (
2782
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '21' . DIRECTORY_SEPARATOR . 'cf' . DIRECTORY_SEPARATOR . 'b7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099.php',
2783
+ 'c' => '__TwigTemplate_21cfb7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099',
2784
+ 'i' => 'g',
 
2785
  ),
2786
+ '__TwigTemplate_25cf38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd' =>
2787
  array (
2788
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . 'cf' . DIRECTORY_SEPARATOR . '38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd.php',
2789
+ 'c' => '__TwigTemplate_25cf38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd',
2790
+ 'i' => 'g',
2791
  ),
2792
+ '__TwigTemplate_260aae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea' =>
2793
  array (
2794
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '26' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'ae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea.php',
2795
+ 'c' => '__TwigTemplate_260aae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea',
2796
+ 'i' => 'g',
 
2797
  ),
2798
+ '__TwigTemplate_26624a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e' =>
2799
  array (
2800
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '26' . DIRECTORY_SEPARATOR . '62' . DIRECTORY_SEPARATOR . '4a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e.php',
2801
+ 'c' => '__TwigTemplate_26624a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e',
2802
  'i' => 'g',
 
2803
  ),
2804
+ '__TwigTemplate_2715acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45' =>
2805
  array (
2806
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . 'acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45.php',
2807
+ 'c' => '__TwigTemplate_2715acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45',
2808
  'i' => 'g',
 
2809
  ),
2810
+ '__TwigTemplate_282745a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee' =>
2811
  array (
2812
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '28' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . '45a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee.php',
2813
+ 'c' => '__TwigTemplate_282745a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee',
2814
  'i' => 'g',
 
2815
  ),
2816
+ '__TwigTemplate_297c22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73' =>
2817
  array (
2818
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '29' . DIRECTORY_SEPARATOR . '7c' . DIRECTORY_SEPARATOR . '22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73.php',
2819
+ 'c' => '__TwigTemplate_297c22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73',
2820
  'i' => 'g',
 
2821
  ),
2822
+ '__TwigTemplate_2cdb363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43' =>
2823
  array (
2824
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '2c' . DIRECTORY_SEPARATOR . 'db' . DIRECTORY_SEPARATOR . '363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43.php',
2825
+ 'c' => '__TwigTemplate_2cdb363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43',
2826
  'i' => 'g',
2827
  ),
2828
+ '__TwigTemplate_2e4133d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b' =>
2829
  array (
2830
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '2e' . DIRECTORY_SEPARATOR . '41' . DIRECTORY_SEPARATOR . '33d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b.php',
2831
+ 'c' => '__TwigTemplate_2e4133d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b',
2832
  'i' => 'g',
 
2833
  ),
2834
+ '__TwigTemplate_31156fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde' =>
2835
  array (
2836
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '31' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . '6fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde.php',
2837
+ 'c' => '__TwigTemplate_31156fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde',
2838
  'i' => 'g',
 
2839
  ),
2840
+ '__TwigTemplate_33e16cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc' =>
2841
  array (
2842
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '33' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . '6cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc.php',
2843
+ 'c' => '__TwigTemplate_33e16cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc',
2844
  'i' => 'g',
 
2845
  ),
2846
+ '__TwigTemplate_41ed2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5' =>
2847
  array (
2848
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '41' . DIRECTORY_SEPARATOR . 'ed' . DIRECTORY_SEPARATOR . '2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5.php',
2849
+ 'c' => '__TwigTemplate_41ed2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5',
2850
  'i' => 'g',
 
2851
  ),
2852
+ '__TwigTemplate_43d9a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c' =>
2853
  array (
2854
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '43' . DIRECTORY_SEPARATOR . 'd9' . DIRECTORY_SEPARATOR . 'a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c.php',
2855
+ 'c' => '__TwigTemplate_43d9a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c',
2856
  'i' => 'g',
 
2857
  ),
2858
+ '__TwigTemplate_44e780d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c' =>
2859
  array (
2860
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '44' . DIRECTORY_SEPARATOR . 'e7' . DIRECTORY_SEPARATOR . '80d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c.php',
2861
+ 'c' => '__TwigTemplate_44e780d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c',
2862
  'i' => 'g',
 
2863
  ),
2864
+ '__TwigTemplate_4932ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a' =>
2865
  array (
2866
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '49' . DIRECTORY_SEPARATOR . '32' . DIRECTORY_SEPARATOR . 'ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a.php',
2867
+ 'c' => '__TwigTemplate_4932ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a',
2868
  'i' => 'g',
 
2869
  ),
2870
+ '__TwigTemplate_4a179da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0' =>
2871
  array (
2872
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4a' . DIRECTORY_SEPARATOR . '17' . DIRECTORY_SEPARATOR . '9da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0.php',
2873
+ 'c' => '__TwigTemplate_4a179da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0',
2874
  'i' => 'g',
 
2875
  ),
2876
+ '__TwigTemplate_4b548023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34' =>
2877
  array (
2878
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4b' . DIRECTORY_SEPARATOR . '54' . DIRECTORY_SEPARATOR . '8023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34.php',
2879
+ 'c' => '__TwigTemplate_4b548023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34',
2880
  'i' => 'g',
 
2881
  ),
2882
+ '__TwigTemplate_4b73ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0' =>
2883
  array (
2884
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4b' . DIRECTORY_SEPARATOR . '73' . DIRECTORY_SEPARATOR . 'ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0.php',
2885
+ 'c' => '__TwigTemplate_4b73ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0',
2886
  'i' => 'g',
 
2887
  ),
2888
+ '__TwigTemplate_50bcdf7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544' =>
2889
  array (
2890
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '50' . DIRECTORY_SEPARATOR . 'bc' . DIRECTORY_SEPARATOR . 'df7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544.php',
2891
+ 'c' => '__TwigTemplate_50bcdf7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544',
2892
  'i' => 'g',
 
2893
  ),
2894
+ '__TwigTemplate_5438397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543' =>
2895
  array (
2896
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '54' . DIRECTORY_SEPARATOR . '38' . DIRECTORY_SEPARATOR . '397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543.php',
2897
+ 'c' => '__TwigTemplate_5438397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543',
2898
  'i' => 'g',
 
2899
  ),
2900
+ '__TwigTemplate_5ca1499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4' =>
2901
  array (
2902
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '5c' . DIRECTORY_SEPARATOR . 'a1' . DIRECTORY_SEPARATOR . '499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4.php',
2903
+ 'c' => '__TwigTemplate_5ca1499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4',
2904
  'i' => 'g',
 
2905
  ),
2906
+ '__TwigTemplate_5dd773750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3' =>
2907
  array (
2908
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '5d' . DIRECTORY_SEPARATOR . 'd7' . DIRECTORY_SEPARATOR . '73750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3.php',
2909
+ 'c' => '__TwigTemplate_5dd773750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3',
2910
  'i' => 'g',
 
2911
  ),
2912
+ '__TwigTemplate_646d6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c' =>
2913
  array (
2914
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '64' . DIRECTORY_SEPARATOR . '6d' . DIRECTORY_SEPARATOR . '6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c.php',
2915
+ 'c' => '__TwigTemplate_646d6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c',
2916
  'i' => 'g',
 
2917
  ),
2918
+ '__TwigTemplate_65b5a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9' =>
2919
  array (
2920
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '65' . DIRECTORY_SEPARATOR . 'b5' . DIRECTORY_SEPARATOR . 'a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9.php',
2921
+ 'c' => '__TwigTemplate_65b5a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9',
2922
  'i' => 'g',
 
2923
  ),
2924
+ '__TwigTemplate_6b2c061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3' =>
2925
  array (
2926
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6b' . DIRECTORY_SEPARATOR . '2c' . DIRECTORY_SEPARATOR . '061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3.php',
2927
+ 'c' => '__TwigTemplate_6b2c061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3',
2928
  'i' => 'g',
 
2929
  ),
2930
+ '__TwigTemplate_6ba7e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65' =>
2931
  array (
2932
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6b' . DIRECTORY_SEPARATOR . 'a7' . DIRECTORY_SEPARATOR . 'e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65.php',
2933
+ 'c' => '__TwigTemplate_6ba7e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65',
2934
  'i' => 'g',
 
2935
  ),
2936
+ '__TwigTemplate_6c728cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353' =>
2937
  array (
2938
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6c' . DIRECTORY_SEPARATOR . '72' . DIRECTORY_SEPARATOR . '8cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353.php',
2939
+ 'c' => '__TwigTemplate_6c728cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353',
2940
  'i' => 'g',
 
2941
  ),
2942
+ '__TwigTemplate_6e01f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1' =>
2943
  array (
2944
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6e' . DIRECTORY_SEPARATOR . '01' . DIRECTORY_SEPARATOR . 'f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1.php',
2945
+ 'c' => '__TwigTemplate_6e01f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1',
2946
  'i' => 'g',
 
2947
  ),
2948
+ '__TwigTemplate_70fdf46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854' =>
2949
  array (
2950
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '70' . DIRECTORY_SEPARATOR . 'fd' . DIRECTORY_SEPARATOR . 'f46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854.php',
2951
+ 'c' => '__TwigTemplate_70fdf46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854',
2952
  'i' => 'g',
2953
  ),
2954
+ '__TwigTemplate_73ce4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346' =>
2955
  array (
2956
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '73' . DIRECTORY_SEPARATOR . 'ce' . DIRECTORY_SEPARATOR . '4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346.php',
2957
+ 'c' => '__TwigTemplate_73ce4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346',
2958
  'i' => 'g',
 
2959
  ),
2960
+ '__TwigTemplate_748f9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092' =>
2961
  array (
2962
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '74' . DIRECTORY_SEPARATOR . '8f' . DIRECTORY_SEPARATOR . '9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092.php',
2963
+ 'c' => '__TwigTemplate_748f9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092',
2964
  'i' => 'g',
 
2965
  ),
2966
+ '__TwigTemplate_77551fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6' =>
2967
  array (
2968
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '77' . DIRECTORY_SEPARATOR . '55' . DIRECTORY_SEPARATOR . '1fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6.php',
2969
+ 'c' => '__TwigTemplate_77551fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6',
2970
  'i' => 'g',
 
2971
  ),
2972
+ '__TwigTemplate_788a05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f' =>
2973
  array (
2974
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '78' . DIRECTORY_SEPARATOR . '8a' . DIRECTORY_SEPARATOR . '05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f.php',
2975
+ 'c' => '__TwigTemplate_788a05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f',
2976
  'i' => 'g',
2977
  ),
2978
+ '__TwigTemplate_80307ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38' =>
2979
  array (
2980
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '80' . DIRECTORY_SEPARATOR . '30' . DIRECTORY_SEPARATOR . '7ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38.php',
2981
+ 'c' => '__TwigTemplate_80307ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38',
2982
  'i' => 'g',
 
2983
  ),
2984
+ '__TwigTemplate_84a6c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740' =>
2985
  array (
2986
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '84' . DIRECTORY_SEPARATOR . 'a6' . DIRECTORY_SEPARATOR . 'c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740.php',
2987
+ 'c' => '__TwigTemplate_84a6c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740',
2988
  'i' => 'g',
 
2989
  ),
2990
+ '__TwigTemplate_8738aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4' =>
2991
  array (
2992
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '87' . DIRECTORY_SEPARATOR . '38' . DIRECTORY_SEPARATOR . 'aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4.php',
2993
+ 'c' => '__TwigTemplate_8738aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4',
2994
  'i' => 'g',
 
2995
  ),
2996
+ '__TwigTemplate_89d906e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2' =>
2997
  array (
2998
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '89' . DIRECTORY_SEPARATOR . 'd9' . DIRECTORY_SEPARATOR . '06e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2.php',
2999
+ 'c' => '__TwigTemplate_89d906e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2',
3000
  'i' => 'g',
3001
  ),
3002
+ '__TwigTemplate_8c5c438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f' =>
3003
  array (
3004
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8c' . DIRECTORY_SEPARATOR . '5c' . DIRECTORY_SEPARATOR . '438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f.php',
3005
+ 'c' => '__TwigTemplate_8c5c438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f',
3006
  'i' => 'g',
3007
  ),
3008
+ '__TwigTemplate_8d5826547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b' =>
3009
  array (
3010
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8d' . DIRECTORY_SEPARATOR . '58' . DIRECTORY_SEPARATOR . '26547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b.php',
3011
+ 'c' => '__TwigTemplate_8d5826547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b',
3012
  'i' => 'g',
3013
  ),
3014
+ '__TwigTemplate_8d6cdb965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d' =>
3015
  array (
3016
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8d' . DIRECTORY_SEPARATOR . '6c' . DIRECTORY_SEPARATOR . 'db965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d.php',
3017
+ 'c' => '__TwigTemplate_8d6cdb965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d',
3018
  'i' => 'g',
3019
  ),
3020
+ '__TwigTemplate_93258ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9' =>
3021
  array (
3022
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '93' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . '8ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9.php',
3023
+ 'c' => '__TwigTemplate_93258ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9',
3024
  'i' => 'g',
3025
  ),
3026
+ '__TwigTemplate_943e432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71' =>
3027
  array (
3028
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '94' . DIRECTORY_SEPARATOR . '3e' . DIRECTORY_SEPARATOR . '432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71.php',
3029
+ 'c' => '__TwigTemplate_943e432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71',
3030
  'i' => 'g',
 
3031
  ),
3032
+ '__TwigTemplate_94e338b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f' =>
3033
  array (
3034
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '94' . DIRECTORY_SEPARATOR . 'e3' . DIRECTORY_SEPARATOR . '38b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f.php',
3035
+ 'c' => '__TwigTemplate_94e338b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f',
3036
  'i' => 'g',
 
3037
  ),
3038
+ '__TwigTemplate_95b0bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca' =>
3039
  array (
3040
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '95' . DIRECTORY_SEPARATOR . 'b0' . DIRECTORY_SEPARATOR . 'bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca.php',
3041
+ 'c' => '__TwigTemplate_95b0bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca',
3042
  'i' => 'g',
 
3043
  ),
3044
+ '__TwigTemplate_987d741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8' =>
3045
  array (
3046
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '98' . DIRECTORY_SEPARATOR . '7d' . DIRECTORY_SEPARATOR . '741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8.php',
3047
+ 'c' => '__TwigTemplate_987d741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8',
3048
  'i' => 'g',
3049
  ),
3050
+ '__TwigTemplate_991a7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064' =>
3051
  array (
3052
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '99' . DIRECTORY_SEPARATOR . '1a' . DIRECTORY_SEPARATOR . '7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064.php',
3053
+ 'c' => '__TwigTemplate_991a7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064',
3054
  'i' => 'g',
3055
  ),
3056
+ '__TwigTemplate_9c3c1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3' =>
3057
  array (
3058
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '9c' . DIRECTORY_SEPARATOR . '3c' . DIRECTORY_SEPARATOR . '1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3.php',
3059
+ 'c' => '__TwigTemplate_9c3c1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3',
3060
  'i' => 'g',
 
3061
  ),
3062
+ '__TwigTemplate_a2d63fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd' =>
3063
  array (
3064
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a2' . DIRECTORY_SEPARATOR . 'd6' . DIRECTORY_SEPARATOR . '3fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd.php',
3065
+ 'c' => '__TwigTemplate_a2d63fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd',
3066
  'i' => 'g',
 
3067
  ),
3068
+ '__TwigTemplate_a54faca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a' =>
3069
  array (
3070
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a5' . DIRECTORY_SEPARATOR . '4f' . DIRECTORY_SEPARATOR . 'aca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a.php',
3071
+ 'c' => '__TwigTemplate_a54faca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a',
3072
  'i' => 'g',
 
3073
  ),
3074
+ '__TwigTemplate_a658c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13' =>
3075
  array (
3076
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a6' . DIRECTORY_SEPARATOR . '58' . DIRECTORY_SEPARATOR . 'c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13.php',
3077
+ 'c' => '__TwigTemplate_a658c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13',
3078
  'i' => 'g',
 
3079
  ),
3080
+ '__TwigTemplate_a845b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629' =>
3081
  array (
3082
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a8' . DIRECTORY_SEPARATOR . '45' . DIRECTORY_SEPARATOR . 'b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629.php',
3083
+ 'c' => '__TwigTemplate_a845b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629',
3084
  'i' => 'g',
 
3085
  ),
3086
+ '__TwigTemplate_a91319c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131' =>
3087
  array (
3088
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a9' . DIRECTORY_SEPARATOR . '13' . DIRECTORY_SEPARATOR . '19c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131.php',
3089
+ 'c' => '__TwigTemplate_a91319c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131',
3090
  'i' => 'g',
3091
  ),
3092
+ '__TwigTemplate_aa1cd52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780' =>
3093
  array (
3094
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '1c' . DIRECTORY_SEPARATOR . 'd52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780.php',
3095
+ 'c' => '__TwigTemplate_aa1cd52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780',
3096
  'i' => 'g',
3097
  ),
3098
+ '__TwigTemplate_aa616d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528' =>
3099
  array (
3100
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '61' . DIRECTORY_SEPARATOR . '6d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528.php',
3101
+ 'c' => '__TwigTemplate_aa616d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528',
3102
  'i' => 'g',
3103
  ),
3104
+ '__TwigTemplate_aaf160acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446' =>
3105
  array (
3106
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . 'f1' . DIRECTORY_SEPARATOR . '60acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446.php',
3107
+ 'c' => '__TwigTemplate_aaf160acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446',
3108
  'i' => 'g',
 
3109
  ),
3110
+ '__TwigTemplate_b1af5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4' =>
3111
  array (
3112
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b1' . DIRECTORY_SEPARATOR . 'af' . DIRECTORY_SEPARATOR . '5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4.php',
3113
+ 'c' => '__TwigTemplate_b1af5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4',
3114
  'i' => 'g',
 
3115
  ),
3116
+ '__TwigTemplate_b30ae319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb' =>
3117
  array (
3118
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b3' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'e319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb.php',
3119
+ 'c' => '__TwigTemplate_b30ae319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb',
3120
  'i' => 'g',
3121
  ),
3122
+ '__TwigTemplate_b5633d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f' =>
3123
  array (
3124
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b5' . DIRECTORY_SEPARATOR . '63' . DIRECTORY_SEPARATOR . '3d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f.php',
3125
+ 'c' => '__TwigTemplate_b5633d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f',
3126
  'i' => 'g',
3127
  ),
3128
+ '__TwigTemplate_b69bc1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb' =>
3129
  array (
3130
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b6' . DIRECTORY_SEPARATOR . '9b' . DIRECTORY_SEPARATOR . 'c1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb.php',
3131
+ 'c' => '__TwigTemplate_b69bc1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb',
3132
  'i' => 'g',
3133
  ),
3134
+ '__TwigTemplate_c1804f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c' =>
3135
  array (
3136
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c1' . DIRECTORY_SEPARATOR . '80' . DIRECTORY_SEPARATOR . '4f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c.php',
3137
+ 'c' => '__TwigTemplate_c1804f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c',
3138
  'i' => 'g',
3139
  ),
3140
+ '__TwigTemplate_c1e16bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919' =>
3141
  array (
3142
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c1' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . '6bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919.php',
3143
+ 'c' => '__TwigTemplate_c1e16bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919',
3144
  'i' => 'g',
 
3145
  ),
3146
+ '__TwigTemplate_c715262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580' =>
3147
  array (
3148
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . '262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580.php',
3149
+ 'c' => '__TwigTemplate_c715262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580',
3150
+ 'i' => 'g',
 
3151
  ),
3152
+ '__TwigTemplate_c7b4ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949' =>
3153
  array (
3154
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . 'b4' . DIRECTORY_SEPARATOR . 'ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949.php',
3155
+ 'c' => '__TwigTemplate_c7b4ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949',
3156
  'i' => 'g',
 
3157
  ),
3158
+ '__TwigTemplate_d0fd53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed' =>
3159
  array (
3160
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd0' . DIRECTORY_SEPARATOR . 'fd' . DIRECTORY_SEPARATOR . '53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed.php',
3161
+ 'c' => '__TwigTemplate_d0fd53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed',
3162
  'i' => 'g',
 
3163
  ),
3164
+ '__TwigTemplate_d5480ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3' =>
3165
  array (
3166
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd5' . DIRECTORY_SEPARATOR . '48' . DIRECTORY_SEPARATOR . '0ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3.php',
3167
+ 'c' => '__TwigTemplate_d5480ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3',
3168
  'i' => 'g',
3169
  ),
3170
+ '__TwigTemplate_d8ccdd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a' =>
3171
  array (
3172
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd8' . DIRECTORY_SEPARATOR . 'cc' . DIRECTORY_SEPARATOR . 'dd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a.php',
3173
+ 'c' => '__TwigTemplate_d8ccdd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a',
3174
  'i' => 'g',
 
3175
  ),
3176
+ '__TwigTemplate_dc78b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545' =>
3177
  array (
3178
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'dc' . DIRECTORY_SEPARATOR . '78' . DIRECTORY_SEPARATOR . 'b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php',
3179
+ 'c' => '__TwigTemplate_dc78b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545',
3180
  'i' => 'g',
 
3181
  ),
3182
+ '__TwigTemplate_e0be9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec' =>
3183
  array (
3184
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e0' . DIRECTORY_SEPARATOR . 'be' . DIRECTORY_SEPARATOR . '9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec.php',
3185
+ 'c' => '__TwigTemplate_e0be9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec',
3186
  'i' => 'g',
 
3187
  ),
3188
+ '__TwigTemplate_e1a321e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6' =>
3189
  array (
3190
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . 'a3' . DIRECTORY_SEPARATOR . '21e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6.php',
3191
+ 'c' => '__TwigTemplate_e1a321e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6',
3192
  'i' => 'g',
3193
  ),
3194
+ '__TwigTemplate_e2c54407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014' =>
3195
  array (
3196
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e2' . DIRECTORY_SEPARATOR . 'c5' . DIRECTORY_SEPARATOR . '4407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014.php',
3197
+ 'c' => '__TwigTemplate_e2c54407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014',
3198
  'i' => 'g',
 
3199
  ),
3200
+ '__TwigTemplate_e899403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d' =>
3201
  array (
3202
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e8' . DIRECTORY_SEPARATOR . '99' . DIRECTORY_SEPARATOR . '403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d.php',
3203
+ 'c' => '__TwigTemplate_e899403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d',
3204
+ 'i' => 'g',
 
3205
  ),
3206
+ '__TwigTemplate_e90fcb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944' =>
3207
  array (
3208
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e9' . DIRECTORY_SEPARATOR . '0f' . DIRECTORY_SEPARATOR . 'cb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944.php',
3209
+ 'c' => '__TwigTemplate_e90fcb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944',
3210
+ 'i' => 'g',
 
3211
  ),
3212
+ '__TwigTemplate_e9b8f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040' =>
3213
  array (
3214
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e9' . DIRECTORY_SEPARATOR . 'b8' . DIRECTORY_SEPARATOR . 'f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040.php',
3215
+ 'c' => '__TwigTemplate_e9b8f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040',
3216
+ 'i' => 'g',
 
3217
  ),
3218
+ '__TwigTemplate_eeeaebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d' =>
3219
  array (
3220
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'ee' . DIRECTORY_SEPARATOR . 'ea' . DIRECTORY_SEPARATOR . 'ebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d.php',
3221
+ 'c' => '__TwigTemplate_eeeaebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d',
3222
  'i' => 'g',
 
3223
  ),
3224
+ '__TwigTemplate_f33591d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65' =>
3225
  array (
3226
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f3' . DIRECTORY_SEPARATOR . '35' . DIRECTORY_SEPARATOR . '91d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65.php',
3227
+ 'c' => '__TwigTemplate_f33591d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65',
3228
  'i' => 'g',
3229
  ),
3230
+ '__TwigTemplate_f6f7742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e' =>
3231
  array (
3232
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f6' . DIRECTORY_SEPARATOR . 'f7' . DIRECTORY_SEPARATOR . '742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e.php',
3233
+ 'c' => '__TwigTemplate_f6f7742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e',
3234
  'i' => 'g',
3235
  ),
3236
+ '__TwigTemplate_f927e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326' =>
3237
  array (
3238
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f9' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . 'e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326.php',
3239
+ 'c' => '__TwigTemplate_f927e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326',
3240
  'i' => 'g',
3241
  ),
3242
+ '__TwigTemplate_fa8f0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237' =>
3243
  array (
3244
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fa' . DIRECTORY_SEPARATOR . '8f' . DIRECTORY_SEPARATOR . '0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237.php',
3245
+ 'c' => '__TwigTemplate_fa8f0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237',
3246
  'i' => 'g',
 
3247
  ),
3248
+ '__TwigTemplate_fc3cb152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589' =>
3249
  array (
3250
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fc' . DIRECTORY_SEPARATOR . '3c' . DIRECTORY_SEPARATOR . 'b152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589.php',
3251
+ 'c' => '__TwigTemplate_fc3cb152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589',
3252
  'i' => 'g',
 
3253
  ),
3254
+ '__TwigTemplate_fe5fa372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181' =>
3255
  array (
3256
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fe' . DIRECTORY_SEPARATOR . '5f' . DIRECTORY_SEPARATOR . 'a372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181.php',
3257
+ 'c' => '__TwigTemplate_fe5fa372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181',
3258
  'i' => 'g',
 
3259
  ),
3260
+ 'acl.aco' =>
3261
  array (
3262
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'acl' . DIRECTORY_SEPARATOR . 'aco.php',
3263
+ 'c' => 'Ai1ec_Acl_Aco',
3264
  'i' => 'g',
3265
  ),
3266
+ 'bootstrap.abstract' =>
3267
  array (
3268
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'abstract.php',
3269
+ 'c' => 'Ai1ec_Base',
3270
  'i' => 'g',
3271
  'r' => 'y',
3272
  ),
3273
+ 'bootstrap.exception' =>
3274
  array (
3275
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'exception.php',
3276
+ 'c' => 'Ai1ec_Bootstrap_Exception',
3277
+ 'i' => 'g',
3278
  ),
3279
+ 'bootstrap.loader' =>
3280
  array (
3281
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'loader.php',
3282
+ 'c' => 'Ai1ec_Loader',
3283
  'i' => 'g',
3284
  ),
3285
+ 'bootstrap.registry.application' =>
3286
  array (
3287
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'application.php',
3288
+ 'c' => 'Ai1ec_Registry_Application',
3289
  'i' => 'g',
3290
  'r' => 'y',
3291
  ),
3292
+ 'bootstrap.registry.interface' =>
3293
  array (
3294
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'interface.php',
3295
+ 'c' => 'Ai1ec_Registry',
3296
  'i' => 'g',
3297
  ),
3298
+ 'bootstrap.registry.object' =>
 
 
 
 
 
 
 
3299
  array (
3300
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'registry' . DIRECTORY_SEPARATOR . 'object.php',
3301
+ 'c' => 'Ai1ec_Registry_Object',
3302
  'i' => 'g',
 
3303
  ),
3304
+ 'cache.exception.not-set' =>
3305
  array (
3306
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'not-set.php',
3307
+ 'c' => 'Ai1ec_Cache_Not_Set_Exception',
3308
  'i' => 'g',
 
3309
  ),
3310
+ 'cache.exception.write' =>
3311
  array (
3312
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'write.php',
3313
+ 'c' => 'Ai1ec_Cache_Write_Exception',
3314
+ 'i' => 'g',
 
3315
  ),
3316
+ 'cache.interface' =>
3317
  array (
3318
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'interface.php',
3319
+ 'c' => 'Ai1ec_Cache_Interface',
3320
  'i' => 'g',
 
3321
  ),
3322
+ 'cache.memory' =>
3323
  array (
3324
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'memory.php',
3325
+ 'c' => 'Ai1ec_Cache_Memory',
3326
  'i' => 'n',
 
3327
  ),
3328
+ 'cache.strategy.abstract' =>
3329
  array (
3330
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'abstract.php',
3331
+ 'c' => 'Ai1ec_Cache_Strategy',
3332
  'i' => 'g',
3333
  'r' => 'y',
3334
  ),
3335
+ 'cache.strategy.apc' =>
3336
  array (
3337
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'apc.php',
3338
+ 'c' => 'Ai1ec_Cache_Strategy_Apc',
3339
  'i' => 'n',
3340
  'r' => 'y',
3341
  ),
3342
+ 'cache.strategy.db' =>
3343
  array (
3344
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'db.php',
3345
+ 'c' => 'Ai1ec_Cache_Strategy_Db',
3346
  'i' => 'n',
3347
  'r' => 'y',
3348
  ),
3349
+ 'cache.strategy.file' =>
3350
  array (
3351
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'file.php',
3352
+ 'c' => 'Ai1ec_Cache_Strategy_File',
3353
  'i' => 'n',
3354
  'r' => 'y',
3355
  ),
3356
+ 'cache.strategy.persistence-context' =>
3357
  array (
3358
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'persistence-context.php',
3359
+ 'c' => 'Ai1ec_Persistence_Context',
3360
+ 'i' => 'Ai1ec_Factory_Strategy.create_persistence_context',
 
3361
  ),
3362
+ 'cache.strategy.void' =>
3363
  array (
3364
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'void.php',
3365
+ 'c' => 'Ai1ec_Cache_Strategy_Void',
3366
  'i' => 'n',
3367
  'r' => 'y',
3368
  ),
3369
+ 'calendar-feed.abstract' =>
3370
  array (
3371
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar-feed' . DIRECTORY_SEPARATOR . 'abstract.php',
3372
+ 'c' => 'Ai1ec_Connector_Plugin',
3373
  'i' => 'g',
3374
+ 'r' => 'y',
3375
  ),
3376
+ 'calendar-feed.ics' =>
3377
  array (
3378
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar-feed' . DIRECTORY_SEPARATOR . 'ics.php',
3379
+ 'c' => 'Ai1ecIcsConnectorPlugin',
3380
  'i' => 'g',
3381
+ 'r' => 'y',
3382
  ),
3383
+ 'calendar.state' =>
3384
  array (
3385
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar' . DIRECTORY_SEPARATOR . 'state.php',
3386
+ 'c' => 'Ai1ec_Calendar_State',
3387
  'i' => 'g',
3388
+ 'r' => 'y',
3389
  ),
3390
+ 'calendar.updates' =>
3391
  array (
3392
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'calendar' . DIRECTORY_SEPARATOR . 'updates.php',
3393
+ 'c' => 'Ai1ec_Calendar_Updates',
3394
  'i' => 'g',
3395
  'r' => 'y',
3396
  ),
3397
+ 'calendarComponent' =>
3398
  array (
3399
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
3400
+ 'c' => 'calendarComponent',
3401
  'i' => 'g',
 
3402
  ),
3403
+ 'captcha.provider' =>
3404
  array (
3405
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider.php',
3406
+ 'c' => 'Ai1ec_Captcha_Provider',
3407
  'i' => 'g',
3408
+ 'r' => 'y',
3409
  ),
3410
+ 'captcha.provider.nocaptcha' =>
3411
  array (
3412
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider' . DIRECTORY_SEPARATOR . 'nocaptcha.php',
3413
+ 'c' => 'Ai1ec_Captcha_Nocaptcha_Provider',
3414
+ 'i' => 'g',
3415
  'r' => 'y',
3416
  ),
3417
+ 'captcha.provider.recaptcha' =>
3418
  array (
3419
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'provider' . DIRECTORY_SEPARATOR . 'recaptcha.php',
3420
+ 'c' => 'Ai1ec_Captcha_Recaptcha_Provider',
3421
  'i' => 'g',
3422
+ 'r' => 'y',
3423
  ),
3424
+ 'captcha.providers' =>
3425
  array (
3426
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'captcha' . DIRECTORY_SEPARATOR . 'providers.php',
3427
+ 'c' => 'Ai1ec_Captcha_Providers',
3428
  'i' => 'g',
3429
+ 'r' => 'y',
3430
  ),
3431
+ 'clone.renderer-helper' =>
3432
  array (
3433
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'clone' . DIRECTORY_SEPARATOR . 'renderer-helper.php',
3434
+ 'c' => 'Ai1ec_Clone_Renderer_Helper',
3435
  'i' => 'g',
3436
  'r' => 'y',
3437
  ),
3438
+ 'command.abstract' =>
3439
  array (
3440
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'abstract.php',
3441
+ 'c' => 'Ai1ec_Command',
3442
  'i' => 'g',
3443
  'r' => 'y',
3444
  ),
3445
+ 'command.change-theme' =>
3446
  array (
3447
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'change-theme.php',
3448
+ 'c' => 'Ai1ec_Command_Change_Theme',
3449
  'i' => 'g',
3450
  'r' => 'y',
3451
  ),
3452
+ 'command.check-updates' =>
3453
  array (
3454
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'check-updates.php',
3455
+ 'c' => 'Ai1ec_Command_Check_Updates',
3456
  'i' => 'g',
3457
  'r' => 'y',
3458
  ),
3459
+ 'command.clone' =>
3460
  array (
3461
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'clone.php',
3462
+ 'c' => 'Ai1ec_Command_Clone',
3463
  'i' => 'g',
3464
  'r' => 'y',
3465
  ),
3466
+ 'command.compile-core-css' =>
3467
  array (
3468
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'compile-core-css.php',
3469
+ 'c' => 'Ai1ec_Command_Compile_Core_Css',
3470
  'i' => 'g',
3471
  'r' => 'y',
3472
  ),
3473
+ 'command.compile-themes' =>
3474
  array (
3475
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'compile-themes.php',
3476
+ 'c' => 'Ai1ec_Command_Compile_Themes',
3477
  'i' => 'g',
3478
  'r' => 'y',
3479
  ),
3480
+ 'command.disable-gzip' =>
3481
  array (
3482
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'disable-gzip.php',
3483
+ 'c' => 'Ai1ec_Command_Disable_Gzip',
3484
  'i' => 'g',
3485
  'r' => 'y',
3486
  ),
3487
+ 'command.export-events' =>
3488
  array (
3489
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'export-events.php',
3490
+ 'c' => 'Ai1ec_Command_Export_Events',
3491
  'i' => 'g',
3492
  'r' => 'y',
3493
  ),
3494
+ 'command.render-calendar' =>
3495
  array (
3496
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'render-calendar.php',
3497
+ 'c' => 'Ai1ec_Command_Render_Calendar',
3498
  'i' => 'g',
3499
+ 'r' => 'y',
3500
  ),
3501
+ 'command.render-event' =>
3502
  array (
3503
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'render-event.php',
3504
+ 'c' => 'Ai1ec_Command_Render_Event',
3505
  'i' => 'g',
3506
+ 'r' => 'y',
3507
  ),
3508
+ 'command.resolver' =>
3509
  array (
3510
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'resolver.php',
3511
+ 'c' => 'Ai1ec_Command_Resolver',
3512
  'i' => 'g',
3513
+ 'r' => 'y',
3514
  ),
3515
+ 'command.save-abstract' =>
3516
  array (
3517
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-abstract.php',
3518
+ 'c' => 'Ai1ec_Command_Save_Abstract',
3519
  'i' => 'g',
3520
+ 'r' => 'y',
3521
  ),
3522
+ 'command.save-settings' =>
3523
  array (
3524
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-settings.php',
3525
+ 'c' => 'Ai1ec_Command_Save_Settings',
3526
  'i' => 'g',
3527
+ 'r' => 'y',
3528
  ),
3529
+ 'command.save-theme-options' =>
3530
  array (
3531
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'command' . DIRECTORY_SEPARATOR . 'save-theme-options.php',
3532
+ 'c' => 'Ai1ec_Command_Save_Theme_Options',
3533
  'i' => 'g',
3534
+ 'r' => 'y',
3535
  ),
3536
+ 'compatibility.check' =>
3537
  array (
3538
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'check.php',
3539
+ 'c' => 'Ai1ec_Compatibility_Check',
3540
  'i' => 'g',
3541
+ 'r' => 'y',
3542
  ),
3543
+ 'compatibility.cli' =>
3544
  array (
3545
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'cli.php',
3546
+ 'c' => 'Ai1ec_Compatibility_Cli',
3547
  'i' => 'g',
3548
  ),
3549
+ 'compatibility.memory' =>
3550
  array (
3551
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'memory.php',
3552
+ 'c' => 'Ai1ec_Compatibility_Memory',
3553
  'i' => 'g',
3554
+ 'r' => 'y',
3555
  ),
3556
+ 'compatibility.ob' =>
3557
  array (
3558
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'ob.php',
3559
+ 'c' => 'Ai1ec_Compatibility_OutputBuffer',
3560
  'i' => 'g',
3561
+ 'r' => 'y',
3562
  ),
3563
+ 'compatibility.xguard' =>
3564
  array (
3565
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'compatibility' . DIRECTORY_SEPARATOR . 'xguard.php',
3566
+ 'c' => 'Ai1ec_Compatibility_Xguard',
3567
  'i' => 'g',
3568
+ 'r' => 'y',
3569
  ),
3570
+ 'config.exception' =>
3571
  array (
3572
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'exception.php',
3573
+ 'c' => 'Ai1ec_Constants_Not_Set_Exception',
3574
  'i' => 'g',
3575
  ),
3576
+ 'content.filter' =>
3577
  array (
3578
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'content' . DIRECTORY_SEPARATOR . 'filter.php',
3579
+ 'c' => 'Ai1ec_Content_Filters',
3580
  'i' => 'g',
3581
+ 'r' => 'y',
3582
  ),
3583
+ 'controller.calendar-feeds' =>
3584
  array (
3585
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'calendar-feeds.php',
3586
+ 'c' => 'Ai1ec_Controller_Calendar_Feeds',
3587
  'i' => 'g',
3588
+ 'r' => 'y',
3589
  ),
3590
+ 'controller.content-filter' =>
3591
  array (
3592
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'content-filter.php',
3593
+ 'c' => 'Ai1ec_Controller_Content_Filter',
3594
  'i' => 'g',
3595
+ 'r' => 'y',
3596
  ),
3597
+ 'controller.exception.engine-not-set' =>
3598
  array (
3599
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'engine-not-set.php',
3600
+ 'c' => 'Ai1ec_Engine_Not_Set_Exception',
3601
  'i' => 'g',
3602
  ),
3603
+ 'controller.exception.file-not-found' =>
3604
  array (
3605
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'file-not-found.php',
3606
+ 'c' => 'Ai1ec_File_Not_Found_Exception',
3607
  'i' => 'g',
 
3608
  ),
3609
+ 'controller.extension' =>
3610
  array (
3611
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'extension.php',
3612
+ 'c' => 'Ai1ec_Base_Extension_Controller',
3613
  'i' => 'g',
3614
  ),
3615
+ 'controller.extension-license' =>
3616
  array (
3617
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'extension-license.php',
3618
+ 'c' => 'Ai1ec_Base_License_Controller',
3619
  'i' => 'g',
3620
  ),
3621
+ 'controller.front' =>
3622
  array (
3623
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'front.php',
3624
+ 'c' => 'Ai1ec_Front_Controller',
3625
  'i' => 'g',
 
3626
  ),
3627
+ 'controller.import-export' =>
3628
  array (
3629
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'import-export.php',
3630
+ 'c' => 'Ai1ec_Import_Export_Controller',
3631
  'i' => 'g',
3632
  'r' => 'y',
3633
  ),
3634
+ 'controller.javascript' =>
3635
  array (
3636
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'javascript.php',
3637
+ 'c' => 'Ai1ec_Javascript_Controller',
3638
+ 'i' => 'g',
3639
  'r' => 'y',
3640
  ),
3641
+ 'controller.javascript-widget' =>
3642
  array (
3643
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'javascript-widget.php',
3644
+ 'c' => 'Ai1ec_Controller_Javascript_Widget',
3645
+ 'i' => 'g',
3646
  'r' => 'y',
3647
  ),
3648
+ 'controller.shutdown' =>
3649
  array (
3650
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'controller' . DIRECTORY_SEPARATOR . 'shutdown.php',
3651
+ 'c' => 'Ai1ec_Shutdown_Controller',
3652
+ 'i' => 'g',
 
3653
  ),
3654
+ 'cookie.dto' =>
3655
  array (
3656
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cookie' . DIRECTORY_SEPARATOR . 'dto.php',
3657
+ 'c' => 'Ai1ec_Cookie_Present_Dto',
3658
  'i' => 'g',
3659
  ),
3660
+ 'cookie.utility' =>
3661
  array (
3662
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'cookie' . DIRECTORY_SEPARATOR . 'utility.php',
3663
+ 'c' => 'Ai1ec_Cookie_Utility',
3664
  'i' => 'g',
3665
+ 'r' => 'y',
3666
  ),
3667
+ 'css.admin' =>
3668
  array (
3669
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . 'admin.php',
3670
+ 'c' => 'Ai1ec_Css_Admin',
3671
  'i' => 'g',
3672
+ 'r' => 'y',
3673
  ),
3674
+ 'css.frontend' =>
3675
  array (
3676
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'css' . DIRECTORY_SEPARATOR . 'frontend.php',
3677
+ 'c' => 'Ai1ec_Css_Frontend',
3678
  'i' => 'g',
3679
+ 'r' => 'y',
3680
  ),
3681
+ 'database.applicator' =>
3682
  array (
3683
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'applicator.php',
3684
+ 'c' => 'Ai1ec_Database_Applicator',
3685
  'i' => 'g',
3686
+ 'r' => 'y',
3687
  ),
3688
+ 'database.datetime-migration' =>
3689
  array (
3690
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'datetime-migration.php',
3691
+ 'c' => 'Ai1ecdm_Datetime_Migration',
3692
  'i' => 'g',
3693
+ 'r' => 'y',
3694
  ),
3695
+ 'database.exception.database' =>
3696
  array (
3697
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'database.php',
3698
+ 'c' => 'Ai1ec_Database_Error',
3699
  'i' => 'g',
3700
  ),
3701
+ 'database.exception.schema' =>
3702
  array (
3703
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'schema.php',
3704
+ 'c' => 'Ai1ec_Database_Schema_Exception',
3705
  'i' => 'g',
3706
  ),
3707
+ 'database.exception.update' =>
3708
  array (
3709
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'update.php',
3710
+ 'c' => 'Ai1ec_Database_Update_Exception',
3711
  'i' => 'g',
 
3712
  ),
3713
+ 'database.helper' =>
3714
  array (
3715
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'database' . DIRECTORY_SEPARATOR . 'helper.php',
3716
+ 'c' => 'Ai1ec_Database_Helper',
3717
+ 'i' => 'g',
3718
  'r' => 'y',
3719
  ),
3720
+ 'date.converter' =>
3721
  array (
3722
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'converter.php',
3723
+ 'c' => 'Ai1ec_Date_Converter',
3724
+ 'i' => 'g',
3725
  'r' => 'y',
3726
  ),
3727
+ 'date.date-time-zone' =>
3728
  array (
3729
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'date-time-zone.php',
3730
+ 'c' => 'Ai1ec_Date_Date_Time_Zone',
3731
  'i' => 'g',
 
3732
  ),
3733
+ 'date.exception.date' =>
3734
  array (
3735
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'date.php',
3736
+ 'c' => 'Ai1ec_Date_Exception',
3737
+ 'i' => 'g',
 
3738
  ),
3739
+ 'date.exception.timezone' =>
3740
  array (
3741
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'timezone.php',
3742
+ 'c' => 'Ai1ec_Date_Timezone_Exception',
3743
  'i' => 'g',
3744
  ),
3745
+ 'date.legacy' =>
3746
  array (
3747
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'legacy.php',
3748
+ 'c' => 'Ai1ec_Time_Utility',
3749
  'i' => 'g',
 
3750
  ),
3751
+ 'date.system' =>
3752
  array (
3753
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'system.php',
3754
+ 'c' => 'Ai1ec_Date_System',
3755
  'i' => 'g',
3756
+ 'r' => 'y',
3757
  ),
3758
+ 'date.time' =>
3759
  array (
3760
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'time.php',
3761
+ 'c' => 'Ai1ec_Date_Time',
3762
  'i' => 'n',
3763
  'r' => 'y',
3764
  ),
3765
+ 'date.time-i18n' =>
3766
  array (
3767
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'time-i18n.php',
3768
+ 'c' => 'Ai1ec_Time_I18n_Utility',
3769
  'i' => 'g',
3770
+ 'r' => 'y',
3771
  ),
3772
+ 'date.timezone' =>
3773
  array (
3774
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'timezone.php',
3775
+ 'c' => 'Ai1ec_Date_Timezone',
3776
  'i' => 'g',
3777
  'r' => 'y',
3778
  ),
3779
+ 'date.validator' =>
3780
  array (
3781
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'date' . DIRECTORY_SEPARATOR . 'validator.php',
3782
+ 'c' => 'Ai1ec_Validation_Utility',
3783
+ 'i' => 'g',
 
3784
  ),
3785
+ 'dbi.dbi' =>
3786
  array (
3787
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'dbi' . DIRECTORY_SEPARATOR . 'dbi.php',
3788
+ 'c' => 'Ai1ec_Dbi',
3789
  'i' => 'g',
3790
  'r' => 'y',
3791
  ),
3792
+ 'dbi.dbi-utils' =>
3793
  array (
3794
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'dbi' . DIRECTORY_SEPARATOR . 'dbi-utils.php',
3795
+ 'c' => 'Ai1ec_Dbi_Utils',
3796
+ 'i' => 'g',
3797
  'r' => 'y',
3798
  ),
3799
+ 'environment.check' =>
3800
  array (
3801
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'environment' . DIRECTORY_SEPARATOR . 'check.php',
3802
+ 'c' => 'Ai1ec_Environment_Checks',
3803
+ 'i' => 'g',
3804
  'r' => 'y',
3805
  ),
3806
+ 'environment.exception.addon' =>
3807
  array (
3808
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'environment' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'addon.php',
3809
+ 'c' => 'Ai1ec_Outdated_Addon_Exception',
3810
+ 'i' => 'g',
 
3811
  ),
3812
+ 'event.callback.abstract' =>
3813
  array (
3814
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'abstract.php',
3815
+ 'c' => 'Ai1ec_Event_Callback_Abstract',
3816
  'i' => 'g',
3817
  'r' => 'y',
3818
  ),
3819
+ 'event.callback.action' =>
3820
  array (
3821
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'action.php',
3822
+ 'c' => 'Ai1ec_Event_Callback_Action',
3823
+ 'i' => 'n',
3824
+ 'r' => 'y',
3825
  ),
3826
+ 'event.callback.filter' =>
3827
  array (
3828
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'filter.php',
3829
+ 'c' => 'Ai1ec_Event_Callback_Filter',
3830
  'i' => 'n',
3831
  'r' => 'y',
3832
  ),
3833
+ 'event.callback.shortcode' =>
3834
  array (
3835
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'callback' . DIRECTORY_SEPARATOR . 'shortcode.php',
3836
+ 'c' => 'Ai1ec_Event_Callback_Shortcode',
3837
  'i' => 'n',
3838
  'r' => 'y',
3839
  ),
3840
+ 'event.dispatcher' =>
3841
  array (
3842
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'dispatcher.php',
3843
+ 'c' => 'Ai1ec_Event_Dispatcher',
3844
  'i' => 'g',
3845
  'r' => 'y',
3846
  ),
3847
+ 'exception.ai1ec' =>
3848
  array (
3849
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'ai1ec.php',
3850
+ 'c' => 'Ai1ec_Exception',
3851
  'i' => 'g',
 
3852
  ),
3853
+ 'exception.error' =>
3854
  array (
3855
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'error.php',
3856
+ 'c' => 'Ai1ec_Error_Exception',
3857
  'i' => 'g',
 
3858
  ),
3859
+ 'exception.handler' =>
3860
  array (
3861
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'exception' . DIRECTORY_SEPARATOR . 'handler.php',
3862
+ 'c' => 'Ai1ec_Exception_Handler',
3863
  'i' => 'g',
 
3864
  ),
3865
+ 'factory.event' =>
3866
  array (
3867
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'event.php',
3868
+ 'c' => 'Ai1ec_Factory_Event',
3869
  'i' => 'g',
3870
  'r' => 'y',
3871
  ),
3872
+ 'factory.html' =>
3873
  array (
3874
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'html.php',
3875
+ 'c' => 'Ai1ec_Factory_Html',
3876
  'i' => 'g',
3877
  'r' => 'y',
3878
  ),
3879
+ 'factory.strategy' =>
3880
  array (
3881
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'factory' . DIRECTORY_SEPARATOR . 'strategy.php',
3882
+ 'c' => 'Ai1ec_Factory_Strategy',
3883
+ 'i' => 'g',
3884
+ 'r' => 'y',
3885
+ ),
3886
+ 'filesystem.checker' =>
3887
+ array (
3888
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'filesystem' . DIRECTORY_SEPARATOR . 'checker.php',
3889
+ 'c' => 'Ai1ec_Filesystem_Checker',
3890
+ 'i' => 'g',
3891
+ ),
3892
+ 'filesystem.misc' =>
3893
+ array (
3894
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'filesystem' . DIRECTORY_SEPARATOR . 'misc.php',
3895
+ 'c' => 'Ai1ec_Filesystem_Misc',
3896
+ 'i' => 'g',
3897
+ 'r' => 'y',
3898
+ ),
3899
+ 'html.element.href' =>
3900
+ array (
3901
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'href.php',
3902
+ 'c' => 'Ai1ec_Html_Element_Href',
3903
+ 'i' => 'Ai1ec_Factory_Html.create_href_helper_instance',
3904
+ ),
3905
+ 'html.element.interface' =>
3906
+ array (
3907
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'interface.php',
3908
+ 'c' => 'Ai1ec_Html_Element_Interface',
3909
+ 'i' => 'g',
3910
+ ),
3911
+ 'html.element.legacy.abstract.html-element' =>
3912
+ array (
3913
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'abstract' . DIRECTORY_SEPARATOR . 'html-element.php',
3914
+ 'c' => 'Ai1ec_Html_Element',
3915
+ 'i' => 'g',
3916
+ 'r' => 'y',
3917
+ ),
3918
+ 'html.element.legacy.abstract.interface' =>
3919
+ array (
3920
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'abstract' . DIRECTORY_SEPARATOR . 'interface.php',
3921
+ 'c' => 'Ai1ec_Renderable',
3922
+ 'i' => 'g',
3923
+ ),
3924
+ 'html.element.legacy.bootstrap.modal' =>
3925
+ array (
3926
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'legacy' . DIRECTORY_SEPARATOR . 'bootstrap' . DIRECTORY_SEPARATOR . 'modal.php',
3927
+ 'c' => 'Ai1ec_Bootstrap_Modal',
3928
+ 'i' => 'n',
3929
+ 'r' => 'y',
3930
+ ),
3931
+ 'html.element.setting-renderer' =>
3932
+ array (
3933
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting-renderer.php',
3934
+ 'c' => 'Ai1ec_Html_Setting_Renderer',
3935
+ 'i' => 'g',
3936
+ 'r' => 'y',
3937
+ ),
3938
+ 'html.element.setting.abstract' =>
3939
+ array (
3940
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'abstract.php',
3941
+ 'c' => 'Ai1ec_Html_Element_Settings',
3942
+ 'i' => 'g',
3943
+ 'r' => 'y',
3944
+ ),
3945
+ 'html.element.setting.cache' =>
3946
+ array (
3947
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'cache.php',
3948
+ 'c' => 'Ai1ec_Html_Setting_Cache',
3949
+ 'i' => 'n',
3950
+ 'r' => 'y',
3951
+ ),
3952
+ 'html.element.setting.calendar-page-selector' =>
3953
+ array (
3954
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'calendar-page-selector.php',
3955
+ 'c' => 'Ai1ec_Html_Element_Calendar_Page_Selector',
3956
+ 'i' => 'g',
3957
+ 'r' => 'y',
3958
+ ),
3959
+ 'html.element.setting.checkbox' =>
3960
+ array (
3961
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'checkbox.php',
3962
+ 'c' => 'Ai1ec_Html_Settings_Checkbox',
3963
+ 'i' => 'n',
3964
+ 'r' => 'y',
3965
+ ),
3966
+ 'html.element.setting.enabled-views' =>
3967
+ array (
3968
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'enabled-views.php',
3969
+ 'c' => 'Ai1ec_Html_Element_Enabled_Views',
3970
+ 'i' => 'g',
3971
+ 'r' => 'y',
3972
+ ),
3973
+ 'html.element.setting.html' =>
3974
+ array (
3975
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'html.php',
3976
+ 'c' => 'Ai1ec_Html_Setting_Html',
3977
+ 'i' => 'n',
3978
+ 'r' => 'y',
3979
+ ),
3980
+ 'html.element.setting.input' =>
3981
+ array (
3982
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'input.php',
3983
+ 'c' => 'Ai1ec_Html_Setting_Input',
3984
+ 'i' => 'n',
3985
+ 'r' => 'y',
3986
+ ),
3987
+ 'html.element.setting.select' =>
3988
+ array (
3989
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'select.php',
3990
+ 'c' => 'Ai1ec_Html_Setting_Select',
3991
+ 'i' => 'n',
3992
+ 'r' => 'y',
3993
+ ),
3994
+ 'html.element.setting.tags-categories' =>
3995
+ array (
3996
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'tags-categories.php',
3997
+ 'c' => 'Ai1ec_Html_Setting_Tags_Categories',
3998
+ 'i' => 'n',
3999
+ 'r' => 'y',
4000
+ ),
4001
+ 'html.element.setting.textarea' =>
4002
+ array (
4003
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'element' . DIRECTORY_SEPARATOR . 'setting' . DIRECTORY_SEPARATOR . 'textarea.php',
4004
+ 'c' => 'Ai1ec_Html_Setting_Textarea',
4005
+ 'i' => 'n',
4006
+ 'r' => 'y',
4007
+ ),
4008
+ 'html.exception' =>
4009
+ array (
4010
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'exception.php',
4011
+ 'c' => 'Ai1ec_Html_Exception',
4012
+ 'i' => 'g',
4013
+ ),
4014
+ 'html.helper' =>
4015
+ array (
4016
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'html' . DIRECTORY_SEPARATOR . 'helper.php',
4017
+ 'c' => 'Ai1ec_Html_Helper',
4018
+ 'i' => 'g',
4019
+ ),
4020
+ 'http.encoder' =>
4021
+ array (
4022
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'encoder.php',
4023
+ 'c' => 'Ai1ec_HTTP_Encoder',
4024
+ 'i' => 'g',
4025
+ ),
4026
+ 'http.request' =>
4027
+ array (
4028
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request.php',
4029
+ 'c' => 'Ai1ec_Http_Request',
4030
+ 'i' => 'g',
4031
+ 'r' => 'y',
4032
+ ),
4033
+ 'http.request.abstract' =>
4034
+ array (
4035
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'abstract.php',
4036
+ 'c' => 'Ai1ec_Abstract_Query',
4037
+ 'i' => 'g',
4038
+ 'r' => 'y',
4039
+ ),
4040
+ 'http.request.interface' =>
4041
+ array (
4042
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'interface.php',
4043
+ 'c' => 'Ai1ec_Adapter_Query_Interface',
4044
+ 'i' => 'g',
4045
+ ),
4046
+ 'http.request.parser' =>
4047
+ array (
4048
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'parser.php',
4049
+ 'c' => 'Ai1ec_Request_Parser',
4050
+ 'i' => 'n',
4051
+ 'r' => 'y',
4052
+ ),
4053
+ 'http.request.wordpress-adapter' =>
4054
+ array (
4055
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'wordpress-adapter.php',
4056
+ 'c' => 'Ai1ec_Adapter_Query_Wordpress',
4057
+ 'i' => 'g',
4058
+ ),
4059
+ 'http.response.helper' =>
4060
+ array (
4061
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'helper.php',
4062
+ 'c' => 'Ai1ec_Http_Response_Helper',
4063
+ 'i' => 'g',
4064
+ ),
4065
+ 'http.response.render.abstract' =>
4066
+ array (
4067
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'abstract.php',
4068
+ 'c' => 'Ai1ec_Http_Response_Render_Strategy',
4069
+ 'i' => 'g',
4070
+ 'r' => 'y',
4071
+ ),
4072
+ 'http.response.render.strategy.csv' =>
4073
+ array (
4074
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'csv.php',
4075
+ 'c' => 'Ai1ec_Render_Strategy_Csv',
4076
+ 'i' => 'g',
4077
+ 'r' => 'y',
4078
+ ),
4079
+ 'http.response.render.strategy.html' =>
4080
+ array (
4081
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'html.php',
4082
+ 'c' => 'Ai1ec_Render_Strategy_Html',
4083
+ 'i' => 'g',
4084
+ 'r' => 'y',
4085
+ ),
4086
+ 'http.response.render.strategy.ical' =>
4087
+ array (
4088
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'ical.php',
4089
+ 'c' => 'Ai1ec_Render_Strategy_Ical',
4090
+ 'i' => 'g',
4091
+ 'r' => 'y',
4092
+ ),
4093
+ 'http.response.render.strategy.json' =>
4094
+ array (
4095
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'json.php',
4096
+ 'c' => 'Ai1ec_Render_Strategy_Json',
4097
+ 'i' => 'g',
4098
+ 'r' => 'y',
4099
+ ),
4100
+ 'http.response.render.strategy.jsonp' =>
4101
+ array (
4102
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'jsonp.php',
4103
+ 'c' => 'Ai1ec_Render_Strategy_Jsonp',
4104
+ 'i' => 'g',
4105
+ 'r' => 'y',
4106
+ ),
4107
+ 'http.response.render.strategy.redirect' =>
4108
+ array (
4109
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'redirect.php',
4110
+ 'c' => 'Ai1ec_Render_Strategy_Redirect',
4111
+ 'i' => 'g',
4112
+ 'r' => 'y',
4113
+ ),
4114
+ 'http.response.render.strategy.void' =>
4115
+ array (
4116
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'void.php',
4117
+ 'c' => 'Ai1ec_Render_Strategy_Void',
4118
+ 'i' => 'g',
4119
+ 'r' => 'y',
4120
+ ),
4121
+ 'http.response.render.strategy.xml' =>
4122
+ array (
4123
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'http' . DIRECTORY_SEPARATOR . 'response' . DIRECTORY_SEPARATOR . 'render' . DIRECTORY_SEPARATOR . 'strategy' . DIRECTORY_SEPARATOR . 'xml.php',
4124
+ 'c' => 'Ai1ec_Render_Strategy_Xml',
4125
+ 'i' => 'g',
4126
+ 'r' => 'y',
4127
+ ),
4128
+ 'iCal.SG_iCal' =>
4129
+ array (
4130
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'SG_iCal.php',
4131
+ 'c' => 'SG_iCalReader',
4132
+ 'i' => 'g',
4133
+ ),
4134
+ 'iCal.block.SG_iCal_VCalendar' =>
4135
+ array (
4136
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VCalendar.php',
4137
+ 'c' => 'SG_iCal_VCalendar',
4138
+ 'i' => 'g',
4139
+ ),
4140
+ 'iCal.block.SG_iCal_VEvent' =>
4141
+ array (
4142
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VEvent.php',
4143
+ 'c' => 'SG_iCal_VEvent',
4144
+ 'i' => 'g',
4145
+ ),
4146
+ 'iCal.block.SG_iCal_VTimeZone' =>
4147
+ array (
4148
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'block' . DIRECTORY_SEPARATOR . 'SG_iCal_VTimeZone.php',
4149
+ 'c' => 'SG_iCal_VTimeZone',
4150
+ 'i' => 'g',
4151
+ ),
4152
+ 'iCal.helper.SG_iCal_Duration' =>
4153
+ array (
4154
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Duration.php',
4155
+ 'c' => 'SG_iCal_Duration',
4156
+ 'i' => 'g',
4157
+ ),
4158
+ 'iCal.helper.SG_iCal_Factory' =>
4159
+ array (
4160
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Factory.php',
4161
+ 'c' => 'SG_iCal_Factory',
4162
+ 'i' => 'g',
4163
+ ),
4164
+ 'iCal.helper.SG_iCal_Freq' =>
4165
+ array (
4166
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Freq.php',
4167
+ 'c' => 'SG_iCal_Freq',
4168
+ 'i' => 'g',
4169
+ ),
4170
+ 'iCal.helper.SG_iCal_Line' =>
4171
+ array (
4172
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Line.php',
4173
+ 'c' => 'SG_iCal_Line',
4174
+ 'i' => 'g',
4175
+ ),
4176
+ 'iCal.helper.SG_iCal_Parser' =>
4177
+ array (
4178
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Parser.php',
4179
+ 'c' => 'SG_iCal_Parser',
4180
+ 'i' => 'g',
4181
+ ),
4182
+ 'iCal.helper.SG_iCal_Query' =>
4183
+ array (
4184
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Query.php',
4185
+ 'c' => 'SG_iCal_Query',
4186
+ 'i' => 'g',
4187
+ ),
4188
+ 'iCal.helper.SG_iCal_Recurrence' =>
4189
+ array (
4190
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'helper' . DIRECTORY_SEPARATOR . 'SG_iCal_Recurrence.php',
4191
+ 'c' => 'SG_iCal_Recurrence',
4192
+ 'i' => 'g',
4193
+ ),
4194
+ 'iCal.iCalcnv-3.0.iCalcnv.class' =>
4195
+ array (
4196
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcnv-3.0' . DIRECTORY_SEPARATOR . 'iCalcnv.class.php',
4197
+ 'c' => 'iCalcnv',
4198
+ 'i' => 'g',
4199
+ ),
4200
+ 'iCal.iCalcreator-2.20.iCalcreator.class' =>
4201
+ array (
4202
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
4203
+ 'c' => 'iCalUtilityFunctions',
4204
+ 'i' => 'g',
4205
+ ),
4206
+ 'iCalUtilityFunctions' =>
4207
+ array (
4208
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
4209
+ 'c' => 'iCalUtilityFunctions',
4210
+ 'i' => 'g',
4211
+ ),
4212
+ 'iCalcnv' =>
4213
+ array (
4214
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcnv-3.0' . DIRECTORY_SEPARATOR . 'iCalcnv.class.php',
4215
+ 'c' => 'iCalcnv',
4216
+ 'i' => 'g',
4217
+ ),
4218
+ 'import-export.exception' =>
4219
+ array (
4220
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'exception.php',
4221
+ 'c' => 'Ai1ec_Parse_Exception',
4222
+ 'i' => 'g',
4223
+ ),
4224
+ 'import-export.ics' =>
4225
+ array (
4226
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'ics.php',
4227
+ 'c' => 'Ai1ec_Ics_Import_Export_Engine',
4228
+ 'i' => 'g',
4229
+ 'r' => 'y',
4230
+ ),
4231
+ 'import-export.interface.import-export-engine' =>
4232
+ array (
4233
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'interface' . DIRECTORY_SEPARATOR . 'import-export-engine.php',
4234
+ 'c' => 'Ai1ec_Import_Export_Engine',
4235
+ 'i' => 'g',
4236
+ ),
4237
+ 'import-export.interface.import-export-service-engine' =>
4238
+ array (
4239
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'import-export' . DIRECTORY_SEPARATOR . 'interface' . DIRECTORY_SEPARATOR . 'import-export-service-engine.php',
4240
+ 'c' => 'Ai1ec_Import_Export_Service_Engine',
4241
+ 'i' => 'g',
4242
+ ),
4243
+ 'less.lessphp' =>
4244
+ array (
4245
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'lessphp.php',
4246
+ 'c' => 'Ai1ec_Less_Lessphp',
4247
+ 'i' => 'g',
4248
+ 'r' => 'y',
4249
+ ),
4250
+ 'less.variable.abstract' =>
4251
+ array (
4252
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'abstract.php',
4253
+ 'c' => 'Ai1ec_Less_Variable',
4254
+ 'i' => 'g',
4255
+ 'r' => 'y',
4256
+ ),
4257
+ 'less.variable.color' =>
4258
+ array (
4259
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'color.php',
4260
+ 'c' => 'Ai1ec_Less_Variable_Color',
4261
+ 'i' => 'n',
4262
+ 'r' => 'y',
4263
+ ),
4264
+ 'less.variable.font' =>
4265
+ array (
4266
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'font.php',
4267
+ 'c' => 'Ai1ec_Less_Variable_Font',
4268
+ 'i' => 'n',
4269
+ 'r' => 'y',
4270
+ ),
4271
+ 'less.variable.size' =>
4272
+ array (
4273
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'less' . DIRECTORY_SEPARATOR . 'variable' . DIRECTORY_SEPARATOR . 'size.php',
4274
+ 'c' => 'Ai1ec_Less_Variable_Size',
4275
+ 'i' => 'n',
4276
+ 'r' => 'y',
4277
+ ),
4278
+ 'lessc' =>
4279
+ array (
4280
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4281
+ 'c' => 'lessc',
4282
+ 'i' => 'g',
4283
+ ),
4284
+ 'lessc_formatter_classic' =>
4285
+ array (
4286
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4287
+ 'c' => 'lessc_formatter_classic',
4288
+ 'i' => 'g',
4289
+ ),
4290
+ 'lessc_formatter_compressed' =>
4291
+ array (
4292
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4293
+ 'c' => 'lessc_formatter_compressed',
4294
+ 'i' => 'g',
4295
+ ),
4296
+ 'lessc_formatter_lessjs' =>
4297
+ array (
4298
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4299
+ 'c' => 'lessc_formatter_lessjs',
4300
+ 'i' => 'g',
4301
+ ),
4302
+ 'lessc_parser' =>
4303
+ array (
4304
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4305
+ 'c' => 'lessc_parser',
4306
+ 'i' => 'g',
4307
+ ),
4308
+ 'lessphp.lessc.inc' =>
4309
+ array (
4310
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'lessphp' . DIRECTORY_SEPARATOR . 'lessc.inc.php',
4311
+ 'c' => 'lessc_formatter_lessjs',
4312
+ 'i' => 'g',
4313
+ ),
4314
+ 'minify.ConditionalGet' =>
4315
+ array (
4316
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'minify' . DIRECTORY_SEPARATOR . 'ConditionalGet.php',
4317
+ 'c' => 'HTTP_ConditionalGet',
4318
+ 'i' => 'g',
4319
+ ),
4320
+ 'minify.Encoder' =>
4321
+ array (
4322
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'minify' . DIRECTORY_SEPARATOR . 'Encoder.php',
4323
+ 'c' => 'HTTP_Encoder',
4324
+ 'i' => 'g',
4325
+ ),
4326
+ 'model.app' =>
4327
+ array (
4328
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'app.php',
4329
+ 'c' => 'Ai1ec_App',
4330
+ 'i' => 'g',
4331
+ 'r' => 'y',
4332
+ ),
4333
+ 'model.event' =>
4334
+ array (
4335
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event.php',
4336
+ 'c' => 'Ai1ec_Event',
4337
+ 'i' => 'Ai1ec_Factory_Event.create_event_instance',
4338
+ 'r' => 'y',
4339
+ ),
4340
+ 'model.event-compatibility' =>
4341
+ array (
4342
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event-compatibility.php',
4343
+ 'c' => 'Ai1ec_Event_Compatibility',
4344
+ 'i' => 'Ai1ec_Factory_Event.create_event_instance',
4345
+ 'r' => 'y',
4346
+ ),
4347
+ 'model.event.creating' =>
4348
+ array (
4349
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'creating.php',
4350
+ 'c' => 'Ai1ec_Event_Creating',
4351
+ 'i' => 'g',
4352
+ 'r' => 'y',
4353
+ ),
4354
+ 'model.event.entity' =>
4355
+ array (
4356
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'entity.php',
4357
+ 'c' => 'Ai1ec_Event_Entity',
4358
+ 'i' => 'n',
4359
+ 'r' => 'y',
4360
+ ),
4361
+ 'model.event.event-create-exception' =>
4362
+ array (
4363
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'event-create-exception.php',
4364
+ 'c' => 'Ai1ec_Event_Create_Exception',
4365
+ 'i' => 'g',
4366
+ ),
4367
+ 'model.event.instance' =>
4368
+ array (
4369
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'instance.php',
4370
+ 'c' => 'Ai1ec_Event_Instance',
4371
+ 'i' => 'g',
4372
+ 'r' => 'y',
4373
+ ),
4374
+ 'model.event.invalid-argument-exception' =>
4375
+ array (
4376
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'invalid-argument-exception.php',
4377
+ 'c' => 'Ai1ec_Invalid_Argument_Exception',
4378
+ 'i' => 'g',
4379
+ ),
4380
+ 'model.event.legacy' =>
4381
+ array (
4382
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'legacy.php',
4383
+ 'c' => 'Ai1ec_Event_Legacy',
4384
+ 'i' => 'n',
4385
+ 'r' => 'y',
4386
+ ),
4387
+ 'model.event.not-found-exception' =>
4388
+ array (
4389
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'not-found-exception.php',
4390
+ 'c' => 'Ai1ec_Event_Not_Found_Exception',
4391
+ 'i' => 'g',
4392
+ ),
4393
+ 'model.event.parent' =>
4394
+ array (
4395
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'parent.php',
4396
+ 'c' => 'Ai1ec_Event_Parent',
4397
+ 'i' => 'g',
4398
+ 'r' => 'y',
4399
+ ),
4400
+ 'model.event.taxonomy' =>
4401
+ array (
4402
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'taxonomy.php',
4403
+ 'c' => 'Ai1ec_Event_Taxonomy',
4404
+ 'i' => 'n',
4405
+ 'r' => 'y',
4406
+ ),
4407
+ 'model.event.trashing' =>
4408
+ array (
4409
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'event' . DIRECTORY_SEPARATOR . 'trashing.php',
4410
+ 'c' => 'Ai1ec_Event_Trashing',
4411
+ 'i' => 'g',
4412
+ 'r' => 'y',
4413
+ ),
4414
+ 'model.filter.auth_ids' =>
4415
+ array (
4416
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'auth_ids.php',
4417
+ 'c' => 'Ai1ec_Filter_Authors',
4418
+ 'i' => 'n',
4419
+ 'r' => 'y',
4420
+ ),
4421
+ 'model.filter.cat_ids' =>
4422
+ array (
4423
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'cat_ids.php',
4424
+ 'c' => 'Ai1ec_Filter_Categories',
4425
+ 'i' => 'n',
4426
+ 'r' => 'y',
4427
+ ),
4428
+ 'model.filter.instance_ids' =>
4429
+ array (
4430
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'instance_ids.php',
4431
+ 'c' => 'Ai1ec_Filter_Posts_By_Instance',
4432
+ 'i' => 'n',
4433
+ 'r' => 'y',
4434
+ ),
4435
+ 'model.filter.int' =>
4436
+ array (
4437
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'int.php',
4438
+ 'c' => 'Ai1ec_Filter_Int',
4439
+ 'i' => 'g',
4440
+ 'r' => 'y',
4441
+ ),
4442
+ 'model.filter.interface' =>
4443
+ array (
4444
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'interface.php',
4445
+ 'c' => 'Ai1ec_Filter_Interface',
4446
+ 'i' => 'g',
4447
+ ),
4448
+ 'model.filter.post_ids' =>
4449
+ array (
4450
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'post_ids.php',
4451
+ 'c' => 'Ai1ec_Filter_Posts',
4452
+ 'i' => 'n',
4453
+ 'r' => 'y',
4454
+ ),
4455
+ 'model.filter.tag_ids' =>
4456
+ array (
4457
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'tag_ids.php',
4458
+ 'c' => 'Ai1ec_Filter_Tags',
4459
+ 'i' => 'n',
4460
+ 'r' => 'y',
4461
+ ),
4462
+ 'model.filter.taxonomy' =>
4463
+ array (
4464
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'filter' . DIRECTORY_SEPARATOR . 'taxonomy.php',
4465
+ 'c' => 'Ai1ec_Filter_Taxonomy',
4466
+ 'i' => 'g',
4467
+ 'r' => 'y',
4468
+ ),
4469
+ 'model.meta' =>
4470
+ array (
4471
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta.php',
4472
+ 'c' => 'Ai1ec_Meta',
4473
+ 'i' => 'g',
4474
+ 'r' => 'y',
4475
+ ),
4476
+ 'model.meta-post' =>
4477
+ array (
4478
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta-post.php',
4479
+ 'c' => 'Ai1ec_Meta_Post',
4480
+ 'i' => 'g',
4481
+ 'r' => 'y',
4482
+ ),
4483
+ 'model.meta-user' =>
4484
+ array (
4485
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'meta-user.php',
4486
+ 'c' => 'Ai1ec_Meta_User',
4487
+ 'i' => 'g',
4488
+ 'r' => 'y',
4489
+ ),
4490
+ 'model.option' =>
4491
+ array (
4492
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'option.php',
4493
+ 'c' => 'Ai1ec_Option',
4494
+ 'i' => 'g',
4495
+ 'r' => 'y',
4496
+ ),
4497
+ 'model.search' =>
4498
+ array (
4499
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'search.php',
4500
+ 'c' => 'Ai1ec_Event_Search',
4501
+ 'i' => 'g',
4502
+ 'r' => 'y',
4503
+ ),
4504
+ 'model.settings' =>
4505
+ array (
4506
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings.php',
4507
  'c' => 'Ai1ec_Settings',
4508
  'i' => 'g',
4509
  'r' => 'y',
4510
  ),
4511
+ 'model.settings-view' =>
4512
+ array (
4513
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings-view.php',
4514
+ 'c' => 'Ai1ec_Settings_View',
4515
+ 'i' => 'g',
4516
+ 'r' => 'y',
4517
+ ),
4518
+ 'model.settings.exception' =>
4519
+ array (
4520
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'settings' . DIRECTORY_SEPARATOR . 'exception.php',
4521
+ 'c' => 'Ai1ec_Settings_Exception',
4522
+ 'i' => 'g',
4523
+ ),
4524
+ 'model.taxonomy' =>
4525
+ array (
4526
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'app' . DIRECTORY_SEPARATOR . 'model' . DIRECTORY_SEPARATOR . 'taxonomy.php',
4527
+ 'c' => 'Ai1ec_Taxonomy',
4528
+ 'i' => 'g',
4529
+ 'r' => 'y',
4530
+ ),
4531
+ 'news.feed' =>
4532
+ array (
4533
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'news' . DIRECTORY_SEPARATOR . 'feed.php',
4534
+ 'c' => 'Ai1ec_News_Feed',
4535
+ 'i' => 'g',
4536
+ ),
4537
+ 'notification.abstract' =>
4538
+ array (
4539
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'abstract.php',
4540
+ 'c' => 'Ai1ec_Notification',
4541
+ 'i' => 'g',
4542
+ 'r' => 'y',
4543
+ ),
4544
+ 'notification.admin' =>
4545
+ array (
4546
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'admin.php',
4547
+ 'c' => 'Ai1ec_Notification_Admin',
4548
+ 'i' => 'g',
4549
+ 'r' => 'y',
4550
+ ),
4551
+ 'notification.email' =>
4552
+ array (
4553
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'notification' . DIRECTORY_SEPARATOR . 'email.php',
4554
+ 'c' => 'Ai1ec_Email_Notification',
4555
+ 'i' => 'n',
4556
+ 'r' => 'y',
4557
+ ),
4558
+ 'p28n.i18n' =>
4559
+ array (
4560
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'p28n' . DIRECTORY_SEPARATOR . 'i18n.php',
4561
+ 'c' => 'Ai1ec_I18n',
4562
+ 'i' => 'g',
4563
+ ),
4564
+ 'p28n.wpml' =>
4565
+ array (
4566
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'p28n' . DIRECTORY_SEPARATOR . 'wpml.php',
4567
+ 'c' => 'Ai1ec_Localization_Helper',
4568
+ 'i' => 'g',
4569
+ ),
4570
+ 'parser.date' =>
4571
+ array (
4572
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'parser' . DIRECTORY_SEPARATOR . 'date.php',
4573
+ 'c' => 'Ai1ec_Parser_Date',
4574
+ 'i' => 'g',
4575
+ ),
4576
+ 'parser.frequency' =>
4577
+ array (
4578
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'parser' . DIRECTORY_SEPARATOR . 'frequency.php',
4579
+ 'c' => 'Ai1ec_Frequency_Utility',
4580
+ 'i' => 'n',
4581
+ ),
4582
+ 'post.content' =>
4583
+ array (
4584
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'post' . DIRECTORY_SEPARATOR . 'content.php',
4585
+ 'c' => 'Ai1ec_Post_Content_Check',
4586
+ 'i' => 'g',
4587
+ 'r' => 'y',
4588
+ ),
4589
+ 'post.custom-type' =>
4590
+ array (
4591
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'post' . DIRECTORY_SEPARATOR . 'custom-type.php',
4592
+ 'c' => 'Ai1ec_Post_Custom_Type',
4593
+ 'i' => 'g',
4594
+ 'r' => 'y',
4595
+ ),
4596
+ 'primitive.array' =>
4597
+ array (
4598
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'primitive' . DIRECTORY_SEPARATOR . 'array.php',
4599
+ 'c' => 'Ai1ec_Primitive_Array',
4600
+ 'i' => 'g',
4601
+ ),
4602
+ 'primitive.int' =>
4603
+ array (
4604
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'primitive' . DIRECTORY_SEPARATOR . 'int.php',
4605
+ 'c' => 'Ai1ec_Primitive_Int',
4606
+ 'i' => 'g',
4607
+ ),
4608
+ 'query.helper' =>
4609
+ array (
4610
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'query' . DIRECTORY_SEPARATOR . 'helper.php',
4611
+ 'c' => 'Ai1ec_Query_Helper',
4612
+ 'i' => 'g',
4613
+ ),
4614
+ 'recaptcha.recaptchalib' =>
4615
+ array (
4616
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'recaptcha' . DIRECTORY_SEPARATOR . 'recaptchalib.php',
4617
+ 'c' => 'ReCaptchaResponse',
4618
+ 'i' => 'g',
4619
+ ),
4620
+ 'recurrence.rule' =>
4621
+ array (
4622
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'recurrence' . DIRECTORY_SEPARATOR . 'rule.php',
4623
+ 'c' => 'Ai1ec_Recurrence_Rule',
4624
+ 'i' => 'g',
4625
+ 'r' => 'y',
4626
+ ),
4627
+ 'request.redirect' =>
4628
+ array (
4629
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'request' . DIRECTORY_SEPARATOR . 'redirect.php',
4630
+ 'c' => 'Ai1ec_Request_Redirect',
4631
+ 'i' => 'g',
4632
+ 'r' => 'y',
4633
+ ),
4634
+ 'rewrite.helper' =>
4635
+ array (
4636
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'rewrite' . DIRECTORY_SEPARATOR . 'helper.php',
4637
+ 'c' => 'Ai1ec_Rewrite_Helper',
4638
+ 'i' => 'g',
4639
+ ),
4640
+ 'robots.helper' =>
4641
+ array (
4642
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'robots' . DIRECTORY_SEPARATOR . 'helper.php',
4643
+ 'c' => 'Ai1ec_Robots_Helper',
4644
+ 'i' => 'g',
4645
+ 'r' => 'y',
4646
+ ),
4647
+ 'routing.router' =>
4648
+ array (
4649
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'router.php',
4650
+ 'c' => 'Ai1ec_Router',
4651
+ 'i' => 'g',
4652
+ 'r' => 'y',
4653
+ ),
4654
+ 'routing.uri' =>
4655
+ array (
4656
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri.php',
4657
+ 'c' => 'Ai1ec_Uri',
4658
+ 'i' => 'g',
4659
+ ),
4660
+ 'routing.uri-helper' =>
4661
+ array (
4662
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'routing' . DIRECTORY_SEPARATOR . 'uri-helper.php',
4663
+ 'c' => 'Ai1ec_Wp_Uri_Helper',
4664
+ 'i' => 'g',
4665
+ ),
4666
+ 'scheduling.exception' =>
4667
+ array (
4668
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'scheduling' . DIRECTORY_SEPARATOR . 'exception.php',
4669
+ 'c' => 'Ai1ec_Scheduling_Exception',
4670
+ 'i' => 'g',
4671
+ ),
4672
+ 'scheduling.utility' =>
4673
+ array (
4674
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'scheduling' . DIRECTORY_SEPARATOR . 'utility.php',
4675
+ 'c' => 'Ai1ec_Scheduling_Utility',
4676
+ 'i' => 'g',
4677
+ 'r' => 'y',
4678
+ ),
4679
+ 'script.helper' =>
4680
+ array (
4681
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'script' . DIRECTORY_SEPARATOR . 'helper.php',
4682
+ 'c' => 'Ai1ec_Script_Helper',
4683
+ 'i' => 'g',
4684
+ ),
4685
+ 'size.converter' =>
4686
+ array (
4687
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'size' . DIRECTORY_SEPARATOR . 'converter.php',
4688
+ 'c' => 'Ai1ec_Size_Converter_Utility',
4689
+ 'i' => 'g',
4690
+ 'r' => 'y',
4691
+ ),
4692
+ 'template.link.helper' =>
4693
+ array (
4694
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'template' . DIRECTORY_SEPARATOR . 'link' . DIRECTORY_SEPARATOR . 'helper.php',
4695
+ 'c' => 'Ai1ec_Template_Link_Helper',
4696
+ 'i' => 'g',
4697
+ ),
4698
+ 'theme.compiler' =>
4699
+ array (
4700
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'compiler.php',
4701
+ 'c' => 'Ai1ec_Theme_Compiler',
4702
+ 'i' => 'g',
4703
+ 'r' => 'y',
4704
+ ),
4705
+ 'theme.file.abstract' =>
4706
+ array (
4707
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'abstract.php',
4708
+ 'c' => 'Ai1ec_File_Abstract',
4709
+ 'i' => 'g',
4710
+ 'r' => 'y',
4711
+ ),
4712
+ 'theme.file.exception' =>
4713
+ array (
4714
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'exception.php',
4715
+ 'c' => 'Ai1ec_File_Exception',
4716
+ 'i' => 'g',
4717
+ ),
4718
+ 'theme.file.image' =>
4719
+ array (
4720
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'image.php',
4721
+ 'c' => 'Ai1ec_File_Image',
4722
+ 'i' => 'n',
4723
+ 'r' => 'y',
4724
+ ),
4725
+ 'theme.file.less' =>
4726
+ array (
4727
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'less.php',
4728
+ 'c' => 'Ai1ec_File_Less',
4729
+ 'i' => 'n',
4730
+ 'r' => 'y',
4731
+ ),
4732
+ 'theme.file.php' =>
4733
+ array (
4734
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'php.php',
4735
+ 'c' => 'Ai1ec_File_Php',
4736
+ 'i' => 'n',
4737
+ 'r' => 'y',
4738
+ ),
4739
+ 'theme.file.twig' =>
4740
+ array (
4741
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'file' . DIRECTORY_SEPARATOR . 'twig.php',
4742
+ 'c' => 'Ai1ec_File_Twig',
4743
+ 'i' => 'n',
4744
+ ),
4745
+ 'theme.list' =>
4746
+ array (
4747
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'list.php',
4748
+ 'c' => 'Ai1ec_Theme_List',
4749
+ 'i' => 'g',
4750
+ 'r' => 'y',
4751
+ ),
4752
+ 'theme.loader' =>
4753
+ array (
4754
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'loader.php',
4755
+ 'c' => 'Ai1ec_Theme_Loader',
4756
+ 'i' => 'g',
4757
+ 'r' => 'y',
4758
+ ),
4759
+ 'theme.search' =>
4760
+ array (
4761
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'theme' . DIRECTORY_SEPARATOR . 'search.php',
4762
+ 'c' => 'Ai1ec_Theme_Search',
4763
+ 'i' => 'g',
4764
+ 'r' => 'y',
4765
+ ),
4766
+ 'twig.03.72.ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8' =>
4767
+ array (
4768
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '03' . DIRECTORY_SEPARATOR . '72' . DIRECTORY_SEPARATOR . 'ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8.php',
4769
+ 'c' => '__TwigTemplate_0372ee750b2e7ec3915d0d5d9b00b5071cb4cfd05a03890394c0fcc127e20ac8',
4770
+ 'i' => 'g',
4771
+ ),
4772
+ 'twig.08.d2.60d90987101ec432b0392e970794b475660dc3505582327e77eef0670735' =>
4773
+ array (
4774
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'd2' . DIRECTORY_SEPARATOR . '60d90987101ec432b0392e970794b475660dc3505582327e77eef0670735.php',
4775
+ 'c' => '__TwigTemplate_08d260d90987101ec432b0392e970794b475660dc3505582327e77eef0670735',
4776
+ 'i' => 'g',
4777
+ ),
4778
+ 'twig.08.e4.4d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00' =>
4779
+ array (
4780
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'e4' . DIRECTORY_SEPARATOR . '4d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00.php',
4781
+ 'c' => '__TwigTemplate_08e44d5fc50332367b2d7e81902230ac0e7ea950ee003ec7a490752fc6534c00',
4782
+ 'i' => 'g',
4783
+ ),
4784
+ 'twig.08.e7.a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc' =>
4785
+ array (
4786
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '08' . DIRECTORY_SEPARATOR . 'e7' . DIRECTORY_SEPARATOR . 'a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc.php',
4787
+ 'c' => '__TwigTemplate_08e7a5bd54ab9b43437fff4031a8e8c3224eb244e422102529eb80b45d19a1dc',
4788
+ 'i' => 'g',
4789
+ ),
4790
+ 'twig.0a.aa.4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46' =>
4791
+ array (
4792
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46.php',
4793
+ 'c' => '__TwigTemplate_0aaa4ba5781b15aad143ead2d0ddb31cf05f6ab74784b9253fe937041083cb46',
4794
+ 'i' => 'g',
4795
+ ),
4796
+ 'twig.0b.e5.dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9' =>
4797
+ array (
4798
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0b' . DIRECTORY_SEPARATOR . 'e5' . DIRECTORY_SEPARATOR . 'dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9.php',
4799
+ 'c' => '__TwigTemplate_0be5dd3d04f56f7826bbe4eb9b151f91f5dc98d087f14ab85d6b207077a6efc9',
4800
+ 'i' => 'g',
4801
+ ),
4802
+ 'twig.0b.f1.3e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd' =>
4803
+ array (
4804
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0b' . DIRECTORY_SEPARATOR . 'f1' . DIRECTORY_SEPARATOR . '3e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd.php',
4805
+ 'c' => '__TwigTemplate_0bf13e890a0fe439f45409fd758ea4f0d555d2c8dfad2947a8daf7d55b2d5dbd',
4806
+ 'i' => 'g',
4807
+ ),
4808
+ 'twig.0e.d0.77483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20' =>
4809
+ array (
4810
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '0e' . DIRECTORY_SEPARATOR . 'd0' . DIRECTORY_SEPARATOR . '77483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20.php',
4811
+ 'c' => '__TwigTemplate_0ed077483ed30dca5ffc5e81aedb28bb2ddbf50fa026ef3eb335d57b963e7b20',
4812
+ 'i' => 'g',
4813
+ ),
4814
+ 'twig.1c.59.d9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd' =>
4815
+ array (
4816
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1c' . DIRECTORY_SEPARATOR . '59' . DIRECTORY_SEPARATOR . 'd9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd.php',
4817
+ 'c' => '__TwigTemplate_1c59d9181aac776a47dbf4cc8217a381c5456b347a3286a9950d0c38e6ef94dd',
4818
+ 'i' => 'g',
4819
+ ),
4820
+ 'twig.1d.b4.41d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550' =>
4821
+ array (
4822
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1d' . DIRECTORY_SEPARATOR . 'b4' . DIRECTORY_SEPARATOR . '41d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550.php',
4823
+ 'c' => '__TwigTemplate_1db441d4c46644d462caf5fabce3486fec28bb3dee4455a13411a01b9c384550',
4824
+ 'i' => 'g',
4825
+ ),
4826
+ 'twig.1f.25.bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d' =>
4827
+ array (
4828
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . 'bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d.php',
4829
+ 'c' => '__TwigTemplate_1f25bacc16e82305cef35f2d4954e3a58cf88f86b74ba3bdfdb3edd107c03a6d',
4830
+ 'i' => 'g',
4831
+ ),
4832
+ 'twig.1f.30.d67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff' =>
4833
+ array (
4834
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '30' . DIRECTORY_SEPARATOR . 'd67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff.php',
4835
+ 'c' => '__TwigTemplate_1f30d67153b080a4e63b2f128884622fb7e74c4c2b739f15b0d517743a2f3aff',
4836
+ 'i' => 'g',
4837
+ ),
4838
+ 'twig.1f.53.01836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a' =>
4839
+ array (
4840
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . '53' . DIRECTORY_SEPARATOR . '01836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a.php',
4841
+ 'c' => '__TwigTemplate_1f5301836308ef8274b8f40f576da14b95efa5b66d8e5c3bbcd40df782e6fe3a',
4842
+ 'i' => 'g',
4843
+ ),
4844
+ 'twig.1f.c7.b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5' =>
4845
+ array (
4846
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '1f' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . 'b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5.php',
4847
+ 'c' => '__TwigTemplate_1fc7b71ee92dc515fa667ee7831c98ab6c28baf9d40bd7616eb6cebd71888ce5',
4848
+ 'i' => 'g',
4849
+ ),
4850
+ 'twig.21.cf.b7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099' =>
4851
+ array (
4852
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '21' . DIRECTORY_SEPARATOR . 'cf' . DIRECTORY_SEPARATOR . 'b7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099.php',
4853
+ 'c' => '__TwigTemplate_21cfb7e0c7543e64053052e7d3df401f7fdde0a3873bf1f837c0be10edd95099',
4854
+ 'i' => 'g',
4855
+ ),
4856
+ 'twig.25.cf.38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd' =>
4857
+ array (
4858
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . 'cf' . DIRECTORY_SEPARATOR . '38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd.php',
4859
+ 'c' => '__TwigTemplate_25cf38a130b14648c0aca4ff6f257001cca5d546a903039bd078463facea12bd',
4860
+ 'i' => 'g',
4861
+ ),
4862
+ 'twig.26.0a.ae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea' =>
4863
+ array (
4864
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '26' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'ae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea.php',
4865
+ 'c' => '__TwigTemplate_260aae99e9368e0c7a641812606fdf77dd0989798b89e95944eede8ae41eacea',
4866
+ 'i' => 'g',
4867
+ ),
4868
+ 'twig.26.62.4a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e' =>
4869
+ array (
4870
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '26' . DIRECTORY_SEPARATOR . '62' . DIRECTORY_SEPARATOR . '4a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e.php',
4871
+ 'c' => '__TwigTemplate_26624a4f92c0d3894cd5eb735508b4c009471e957872345c3b56f7b41ef3ea7e',
4872
+ 'i' => 'g',
4873
+ ),
4874
+ 'twig.27.15.acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45' =>
4875
+ array (
4876
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . 'acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45.php',
4877
+ 'c' => '__TwigTemplate_2715acf678c380d630c83d3a7e40c2555c0b4cb21a16d95a1cc06a601f043e45',
4878
+ 'i' => 'g',
4879
+ ),
4880
+ 'twig.28.27.45a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee' =>
4881
+ array (
4882
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '28' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . '45a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee.php',
4883
+ 'c' => '__TwigTemplate_282745a08a32adc67392b55ee4ca55b6d618501e2c61c94eaf0b8b2925984cee',
4884
+ 'i' => 'g',
4885
+ ),
4886
+ 'twig.29.7c.22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73' =>
4887
+ array (
4888
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '29' . DIRECTORY_SEPARATOR . '7c' . DIRECTORY_SEPARATOR . '22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73.php',
4889
+ 'c' => '__TwigTemplate_297c22cf4b28b843eda5f8c8ca70af2a80893c025887b7d169135a123b9d4c73',
4890
+ 'i' => 'g',
4891
+ ),
4892
+ 'twig.2c.db.363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43' =>
4893
+ array (
4894
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '2c' . DIRECTORY_SEPARATOR . 'db' . DIRECTORY_SEPARATOR . '363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43.php',
4895
+ 'c' => '__TwigTemplate_2cdb363f4e60054c695756ee213625301fda959841dc5aca736b041e0954bc43',
4896
+ 'i' => 'g',
4897
+ ),
4898
+ 'twig.2e.41.33d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b' =>
4899
+ array (
4900
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '2e' . DIRECTORY_SEPARATOR . '41' . DIRECTORY_SEPARATOR . '33d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b.php',
4901
+ 'c' => '__TwigTemplate_2e4133d05bb6c6796937bc9a3340d448d39d5e6c81ad15c2e3e8d9fa2be2d09b',
4902
+ 'i' => 'g',
4903
+ ),
4904
+ 'twig.31.15.6fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde' =>
4905
  array (
4906
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '31' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . '6fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde.php',
4907
+ 'c' => '__TwigTemplate_31156fa705707c85002c9a3e84ac9bb505d8ac4e69c83de90fbdf1df913bddde',
4908
  'i' => 'g',
 
4909
  ),
4910
+ 'twig.33.e1.6cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc' =>
4911
  array (
4912
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '33' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . '6cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc.php',
4913
+ 'c' => '__TwigTemplate_33e16cf8aa9822e97c186ffb4cb4ca897e21f410bfd489328566d22b282224cc',
4914
  'i' => 'g',
4915
  ),
4916
+ 'twig.41.ed.2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5' =>
4917
  array (
4918
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '41' . DIRECTORY_SEPARATOR . 'ed' . DIRECTORY_SEPARATOR . '2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5.php',
4919
+ 'c' => '__TwigTemplate_41ed2c6b2843f5e0533ec202bcf7530ddae5708c287d184cfc0dd95b561cc7c5',
4920
  'i' => 'g',
 
4921
  ),
4922
+ 'twig.43.d9.a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c' =>
4923
  array (
4924
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '43' . DIRECTORY_SEPARATOR . 'd9' . DIRECTORY_SEPARATOR . 'a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c.php',
4925
+ 'c' => '__TwigTemplate_43d9a3164d7fa60d25b4a46b810ae815835482309c33dfad5604c4ba6055e99c',
4926
  'i' => 'g',
4927
  ),
4928
+ 'twig.44.e7.80d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c' =>
4929
  array (
4930
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '44' . DIRECTORY_SEPARATOR . 'e7' . DIRECTORY_SEPARATOR . '80d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c.php',
4931
+ 'c' => '__TwigTemplate_44e780d28fcb39e51f58b8da586efcf36a11fa245f32a8e34b91a5cf80c9f32c',
4932
  'i' => 'g',
 
4933
  ),
4934
+ 'twig.49.32.ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a' =>
4935
  array (
4936
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '49' . DIRECTORY_SEPARATOR . '32' . DIRECTORY_SEPARATOR . 'ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a.php',
4937
+ 'c' => '__TwigTemplate_4932ea4178e92f66ddbdb1feb9ec1496773dcb031265fc870a3e981abc68ca2a',
4938
  'i' => 'g',
 
4939
  ),
4940
+ 'twig.4a.17.9da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0' =>
4941
  array (
4942
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4a' . DIRECTORY_SEPARATOR . '17' . DIRECTORY_SEPARATOR . '9da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0.php',
4943
+ 'c' => '__TwigTemplate_4a179da0a62e366a79943b5cbf7701e1a0bc27d1b53b60fb0aef3ca22451c5c0',
4944
+ 'i' => 'g',
 
4945
  ),
4946
+ 'twig.4b.54.8023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34' =>
4947
  array (
4948
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4b' . DIRECTORY_SEPARATOR . '54' . DIRECTORY_SEPARATOR . '8023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34.php',
4949
+ 'c' => '__TwigTemplate_4b548023eee8659ad1836d2185aae4bf5e8f0ebe217bd262863e58fa4cf1da34',
4950
  'i' => 'g',
4951
  ),
4952
+ 'twig.4b.73.ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0' =>
4953
  array (
4954
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '4b' . DIRECTORY_SEPARATOR . '73' . DIRECTORY_SEPARATOR . 'ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0.php',
4955
+ 'c' => '__TwigTemplate_4b73ad41c82ac11e1da2a2b82814007e2577ceed36443b62877d9d35f45941e0',
4956
  'i' => 'g',
4957
  ),
4958
+ 'twig.50.bc.df7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544' =>
4959
  array (
4960
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '50' . DIRECTORY_SEPARATOR . 'bc' . DIRECTORY_SEPARATOR . 'df7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544.php',
4961
+ 'c' => '__TwigTemplate_50bcdf7b18688d7f03363125d554e239be2b183cca7633783e647ca16d98c544',
4962
  'i' => 'g',
4963
  ),
4964
+ 'twig.54.38.397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543' =>
4965
  array (
4966
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '54' . DIRECTORY_SEPARATOR . '38' . DIRECTORY_SEPARATOR . '397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543.php',
4967
+ 'c' => '__TwigTemplate_5438397cd9464722671fd647af1253048c35b31f97a6d5372f3c78b5bc143543',
4968
+ 'i' => 'g',
4969
  ),
4970
+ 'twig.5c.a1.499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4' =>
4971
  array (
4972
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '5c' . DIRECTORY_SEPARATOR . 'a1' . DIRECTORY_SEPARATOR . '499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4.php',
4973
+ 'c' => '__TwigTemplate_5ca1499a9c32090a9a368a28b4c13261022bf5d11f22b5211fb873b104fc70e4',
4974
  'i' => 'g',
 
4975
  ),
4976
+ 'twig.5d.d7.73750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3' =>
4977
  array (
4978
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '5d' . DIRECTORY_SEPARATOR . 'd7' . DIRECTORY_SEPARATOR . '73750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3.php',
4979
+ 'c' => '__TwigTemplate_5dd773750481354d81ed8097491f321553b77d6cdc59276d9122a7dde91c0eb3',
4980
  'i' => 'g',
 
4981
  ),
4982
+ 'twig.64.6d.6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c' =>
4983
  array (
4984
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '64' . DIRECTORY_SEPARATOR . '6d' . DIRECTORY_SEPARATOR . '6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c.php',
4985
+ 'c' => '__TwigTemplate_646d6348de0c3ef39b5536ab38eae718b16c67b3cdfe8a998663cdb1ea4c2d6c',
4986
  'i' => 'g',
4987
  ),
4988
+ 'twig.65.b5.a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9' =>
4989
  array (
4990
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '65' . DIRECTORY_SEPARATOR . 'b5' . DIRECTORY_SEPARATOR . 'a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9.php',
4991
+ 'c' => '__TwigTemplate_65b5a575e6bf538d410a2e2197c73140d993d521b56e32435cddb3734e0f2db9',
4992
  'i' => 'g',
4993
  ),
4994
+ 'twig.6b.2c.061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3' =>
4995
  array (
4996
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6b' . DIRECTORY_SEPARATOR . '2c' . DIRECTORY_SEPARATOR . '061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3.php',
4997
+ 'c' => '__TwigTemplate_6b2c061bbbe82525690ae9ecc2cbcf8ff4e2ebe0056efad05bd2a94fbbd63fc3',
4998
  'i' => 'g',
4999
  ),
5000
+ 'twig.6b.a7.e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65' =>
5001
  array (
5002
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6b' . DIRECTORY_SEPARATOR . 'a7' . DIRECTORY_SEPARATOR . 'e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65.php',
5003
+ 'c' => '__TwigTemplate_6ba7e4e0127d71c495538e6589eb4449b221341af0d97c3095751a16d5f18d65',
5004
  'i' => 'g',
5005
  ),
5006
+ 'twig.6c.72.8cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353' =>
5007
  array (
5008
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6c' . DIRECTORY_SEPARATOR . '72' . DIRECTORY_SEPARATOR . '8cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353.php',
5009
+ 'c' => '__TwigTemplate_6c728cc5d79dcaea124ca9a9c31902afd3f3f925bfdb4245de7b1d187c686353',
5010
  'i' => 'g',
 
5011
  ),
5012
+ 'twig.6e.01.f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1' =>
5013
  array (
5014
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '6e' . DIRECTORY_SEPARATOR . '01' . DIRECTORY_SEPARATOR . 'f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1.php',
5015
+ 'c' => '__TwigTemplate_6e01f7b633075695c9bd632326ff59da1a8f98dcfec6a6bbfbc28b12c0bc45d1',
5016
  'i' => 'g',
 
5017
  ),
5018
+ 'twig.70.fd.f46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854' =>
5019
  array (
5020
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '70' . DIRECTORY_SEPARATOR . 'fd' . DIRECTORY_SEPARATOR . 'f46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854.php',
5021
+ 'c' => '__TwigTemplate_70fdf46b19d586d910f695b6a0bf8fb906984e357f35d882adecd3846d6d2854',
5022
  'i' => 'g',
5023
  ),
5024
+ 'twig.73.ce.4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346' =>
5025
  array (
5026
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '73' . DIRECTORY_SEPARATOR . 'ce' . DIRECTORY_SEPARATOR . '4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346.php',
5027
+ 'c' => '__TwigTemplate_73ce4d3a32e12813acdcf179c66ec21afa4acfb1cc40850c23722a5f0419b346',
5028
  'i' => 'g',
 
5029
  ),
5030
+ 'twig.74.8f.9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092' =>
5031
  array (
5032
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '74' . DIRECTORY_SEPARATOR . '8f' . DIRECTORY_SEPARATOR . '9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092.php',
5033
+ 'c' => '__TwigTemplate_748f9fcd9eaa89a1116c6d9eea0983a4cc663ce75faa449b2f4ab2f7d1e54092',
5034
  'i' => 'g',
 
5035
  ),
5036
+ 'twig.77.55.1fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6' =>
5037
  array (
5038
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '77' . DIRECTORY_SEPARATOR . '55' . DIRECTORY_SEPARATOR . '1fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6.php',
5039
+ 'c' => '__TwigTemplate_77551fb1fe7acd7bfd2d35d0e90997f199a0278f4ba2da2aad6046977aade5a6',
5040
  'i' => 'g',
5041
  ),
5042
+ 'twig.78.8a.05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f' =>
5043
  array (
5044
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '78' . DIRECTORY_SEPARATOR . '8a' . DIRECTORY_SEPARATOR . '05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f.php',
5045
+ 'c' => '__TwigTemplate_788a05e53df23570bd080700c3d94ab1071e6da70305581541040dbcedef230f',
5046
  'i' => 'g',
5047
  ),
5048
+ 'twig.80.30.7ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38' =>
5049
  array (
5050
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '80' . DIRECTORY_SEPARATOR . '30' . DIRECTORY_SEPARATOR . '7ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38.php',
5051
+ 'c' => '__TwigTemplate_80307ebdecc1723b7781bd3968804e6f32cf0e19d2a59539e33879a4e5810c38',
5052
  'i' => 'g',
5053
  ),
5054
+ 'twig.84.a6.c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740' =>
5055
  array (
5056
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '84' . DIRECTORY_SEPARATOR . 'a6' . DIRECTORY_SEPARATOR . 'c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740.php',
5057
+ 'c' => '__TwigTemplate_84a6c5284ab521b3c47b938e332f63481454c6f1376259daf34884343b8b6740',
5058
  'i' => 'g',
 
5059
  ),
5060
+ 'twig.87.38.aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4' =>
5061
  array (
5062
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '87' . DIRECTORY_SEPARATOR . '38' . DIRECTORY_SEPARATOR . 'aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4.php',
5063
+ 'c' => '__TwigTemplate_8738aa294570b2a85a442a17cdfa79373b77254570956b003b0309707c0a3aa4',
5064
  'i' => 'g',
5065
  ),
5066
+ 'twig.89.d9.06e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2' =>
5067
  array (
5068
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '89' . DIRECTORY_SEPARATOR . 'd9' . DIRECTORY_SEPARATOR . '06e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2.php',
5069
+ 'c' => '__TwigTemplate_89d906e4eee3169b93edc33ec32aac5ff78e197d36969e2b8d0437bf2f0283a2',
5070
  'i' => 'g',
5071
  ),
5072
+ 'twig.8c.5c.438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f' =>
5073
  array (
5074
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8c' . DIRECTORY_SEPARATOR . '5c' . DIRECTORY_SEPARATOR . '438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f.php',
5075
+ 'c' => '__TwigTemplate_8c5c438803e41f884dbf4e4b50d7b9a7360a971a329595c86d2bbcb90a37629f',
5076
  'i' => 'g',
 
5077
  ),
5078
+ 'twig.8d.58.26547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b' =>
5079
  array (
5080
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8d' . DIRECTORY_SEPARATOR . '58' . DIRECTORY_SEPARATOR . '26547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b.php',
5081
+ 'c' => '__TwigTemplate_8d5826547f16d8819ef868d953fcef94bf7b88fa47019b46f37bc39478f7513b',
5082
  'i' => 'g',
 
5083
  ),
5084
+ 'twig.8d.6c.db965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d' =>
5085
  array (
5086
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '8d' . DIRECTORY_SEPARATOR . '6c' . DIRECTORY_SEPARATOR . 'db965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d.php',
5087
+ 'c' => '__TwigTemplate_8d6cdb965a32c1472dc4617fd7dab43db4fb756a26a265fde195f98b1e71b51d',
5088
  'i' => 'g',
5089
  ),
5090
+ 'twig.93.25.8ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9' =>
5091
  array (
5092
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '93' . DIRECTORY_SEPARATOR . '25' . DIRECTORY_SEPARATOR . '8ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9.php',
5093
+ 'c' => '__TwigTemplate_93258ffeefdb7cc88b2ceebeb99c01d6127558f2032d79cdd2c8f438717cc6a9',
5094
+ 'i' => 'g',
 
5095
  ),
5096
+ 'twig.94.3e.432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71' =>
5097
  array (
5098
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '94' . DIRECTORY_SEPARATOR . '3e' . DIRECTORY_SEPARATOR . '432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71.php',
5099
+ 'c' => '__TwigTemplate_943e432a0dcbd7fe60a569412aaad985e131799f5363073300d0a6cd788b4d71',
5100
+ 'i' => 'g',
 
5101
  ),
5102
+ 'twig.94.e3.38b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f' =>
5103
  array (
5104
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '94' . DIRECTORY_SEPARATOR . 'e3' . DIRECTORY_SEPARATOR . '38b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f.php',
5105
+ 'c' => '__TwigTemplate_94e338b1a3d5ab95d107882593741558f9a845846750edd3d58a9fc2a65b4c5f',
5106
+ 'i' => 'g',
 
5107
  ),
5108
+ 'twig.95.b0.bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca' =>
5109
  array (
5110
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '95' . DIRECTORY_SEPARATOR . 'b0' . DIRECTORY_SEPARATOR . 'bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca.php',
5111
+ 'c' => '__TwigTemplate_95b0bc90e12b886869857ead6c28360f596d7226395498afb6afc90ae60143ca',
5112
+ 'i' => 'g',
5113
  ),
5114
+ 'twig.98.7d.741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8' =>
5115
  array (
5116
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '98' . DIRECTORY_SEPARATOR . '7d' . DIRECTORY_SEPARATOR . '741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8.php',
5117
+ 'c' => '__TwigTemplate_987d741a43429adb59c06db9f8571972646cd1856c23b384722e76d2f34bddf8',
5118
  'i' => 'g',
 
5119
  ),
5120
+ 'twig.99.1a.7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064' =>
5121
  array (
5122
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '99' . DIRECTORY_SEPARATOR . '1a' . DIRECTORY_SEPARATOR . '7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064.php',
5123
+ 'c' => '__TwigTemplate_991a7bf2f329a80188102ee7b4c92879544edbae2b2374e35e257a44c1a6b064',
5124
  'i' => 'g',
 
5125
  ),
5126
+ 'twig.9c.3c.1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3' =>
5127
  array (
5128
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . '9c' . DIRECTORY_SEPARATOR . '3c' . DIRECTORY_SEPARATOR . '1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3.php',
5129
+ 'c' => '__TwigTemplate_9c3c1820db174d7efba416743bbb9bf744e8454155f8129f69296092b49c45d3',
5130
  'i' => 'g',
 
5131
  ),
5132
  'twig.Compiler' =>
5133
  array (
6065
  'c' => 'Twig_TokenStream',
6066
  'i' => 'g',
6067
  ),
6068
+ 'twig.a2.d6.3fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd' =>
6069
+ array (
6070
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a2' . DIRECTORY_SEPARATOR . 'd6' . DIRECTORY_SEPARATOR . '3fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd.php',
6071
+ 'c' => '__TwigTemplate_a2d63fbda218850f7e089e33254a2a7e597c13d99697a035b078e57b486b58fd',
6072
+ 'i' => 'g',
6073
+ ),
6074
+ 'twig.a5.4f.aca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a' =>
6075
+ array (
6076
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a5' . DIRECTORY_SEPARATOR . '4f' . DIRECTORY_SEPARATOR . 'aca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a.php',
6077
+ 'c' => '__TwigTemplate_a54faca929c567a44d5e4e2e7cf06d45c14508bd3d07f5bdfb60a7ddce3ec07a',
6078
+ 'i' => 'g',
6079
+ ),
6080
+ 'twig.a6.58.c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13' =>
6081
+ array (
6082
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a6' . DIRECTORY_SEPARATOR . '58' . DIRECTORY_SEPARATOR . 'c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13.php',
6083
+ 'c' => '__TwigTemplate_a658c7d34171e31a10ac616152e5338e6e2de16f66f26823313e5359646abb13',
6084
+ 'i' => 'g',
6085
+ ),
6086
+ 'twig.a8.45.b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629' =>
6087
+ array (
6088
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a8' . DIRECTORY_SEPARATOR . '45' . DIRECTORY_SEPARATOR . 'b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629.php',
6089
+ 'c' => '__TwigTemplate_a845b81d2c33eedd005263926a03c59262ab19f88a1b32214b021315fba4a629',
6090
+ 'i' => 'g',
6091
+ ),
6092
+ 'twig.a9.13.19c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131' =>
6093
+ array (
6094
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'a9' . DIRECTORY_SEPARATOR . '13' . DIRECTORY_SEPARATOR . '19c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131.php',
6095
+ 'c' => '__TwigTemplate_a91319c0dfb246b83d124903c9581b3f14a0318358047403bfc7cad6e9700131',
6096
+ 'i' => 'g',
6097
+ ),
6098
+ 'twig.aa.1c.d52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780' =>
6099
+ array (
6100
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '1c' . DIRECTORY_SEPARATOR . 'd52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780.php',
6101
+ 'c' => '__TwigTemplate_aa1cd52527f5822b359026f77aafce7c8a8e1fe79ee0019ca41ace2363608780',
6102
+ 'i' => 'g',
6103
+ ),
6104
+ 'twig.aa.61.6d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528' =>
6105
+ array (
6106
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . '61' . DIRECTORY_SEPARATOR . '6d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528.php',
6107
+ 'c' => '__TwigTemplate_aa616d3f918f480e4f6f0dabdeee1324d87d759ec18352a21a1cfcee8802f528',
6108
+ 'i' => 'g',
6109
+ ),
6110
+ 'twig.aa.f1.60acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446' =>
6111
+ array (
6112
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'aa' . DIRECTORY_SEPARATOR . 'f1' . DIRECTORY_SEPARATOR . '60acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446.php',
6113
+ 'c' => '__TwigTemplate_aaf160acb65256cd5e7a75c653378172251a21509b15232d1e2afc9c3dc3e446',
6114
+ 'i' => 'g',
6115
+ ),
6116
  'twig.ai1ec-extension' =>
6117
  array (
6118
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'ai1ec-extension.php',
6119
  'c' => 'Ai1ec_Twig_Ai1ec_Extension',
6120
  'i' => 'g',
6121
  ),
6122
+ 'twig.b1.af.5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4' =>
6123
+ array (
6124
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b1' . DIRECTORY_SEPARATOR . 'af' . DIRECTORY_SEPARATOR . '5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4.php',
6125
+ 'c' => '__TwigTemplate_b1af5b1cfc01f62c430dd9a064f9459384693440bf30e05d6a34dcdfa47540e4',
6126
+ 'i' => 'g',
6127
+ ),
6128
+ 'twig.b3.0a.e319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb' =>
6129
+ array (
6130
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b3' . DIRECTORY_SEPARATOR . '0a' . DIRECTORY_SEPARATOR . 'e319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb.php',
6131
+ 'c' => '__TwigTemplate_b30ae319e2ce750963c898fc4148616779dcd95284c94602aec7a63a2a9aedfb',
6132
+ 'i' => 'g',
6133
+ ),
6134
+ 'twig.b5.63.3d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f' =>
6135
+ array (
6136
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b5' . DIRECTORY_SEPARATOR . '63' . DIRECTORY_SEPARATOR . '3d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f.php',
6137
+ 'c' => '__TwigTemplate_b5633d95de14839f5641ad75e89a427aa6fdfc24b529c6a3f1d8e24779f6f79f',
6138
+ 'i' => 'g',
6139
+ ),
6140
+ 'twig.b6.9b.c1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb' =>
6141
+ array (
6142
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'b6' . DIRECTORY_SEPARATOR . '9b' . DIRECTORY_SEPARATOR . 'c1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb.php',
6143
+ 'c' => '__TwigTemplate_b69bc1a2e974a2cc888cbb54b361d86981c0c2cc33fd8a93ba2368fb485deacb',
6144
+ 'i' => 'g',
6145
+ ),
6146
+ 'twig.c1.80.4f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c' =>
6147
+ array (
6148
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c1' . DIRECTORY_SEPARATOR . '80' . DIRECTORY_SEPARATOR . '4f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c.php',
6149
+ 'c' => '__TwigTemplate_c1804f545c5b33b8114cc21fe6cb5c59952fa8c7d680d237c3ca4d3f63b96c1c',
6150
+ 'i' => 'g',
6151
+ ),
6152
+ 'twig.c1.e1.6bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919' =>
6153
+ array (
6154
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c1' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . '6bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919.php',
6155
+ 'c' => '__TwigTemplate_c1e16bc24e2f68c4307987fce27d449281baffe9aa54ecf426c78343891f6919',
6156
+ 'i' => 'g',
6157
+ ),
6158
+ 'twig.c7.15.262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580' =>
6159
+ array (
6160
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . '15' . DIRECTORY_SEPARATOR . '262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580.php',
6161
+ 'c' => '__TwigTemplate_c715262eb599a758658b3a1bfc9a52eedb36e0b88f0482d624ca57dca9295580',
6162
+ 'i' => 'g',
6163
+ ),
6164
+ 'twig.c7.b4.ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949' =>
6165
+ array (
6166
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'c7' . DIRECTORY_SEPARATOR . 'b4' . DIRECTORY_SEPARATOR . 'ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949.php',
6167
+ 'c' => '__TwigTemplate_c7b4ce46e9ae5c124b3dbcfdc4840954da6e06763de6bef42553c2fec4a6f949',
6168
+ 'i' => 'g',
6169
+ ),
6170
  'twig.cache' =>
6171
  array (
6172
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'cache.php',
6174
  'i' => 'g',
6175
  'r' => 'y',
6176
  ),
6177
+ 'twig.d0.fd.53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed' =>
6178
+ array (
6179
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd0' . DIRECTORY_SEPARATOR . 'fd' . DIRECTORY_SEPARATOR . '53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed.php',
6180
+ 'c' => '__TwigTemplate_d0fd53d3e74d5ca87482d078ffb8d74c0fecfd7106a9092d9a28cce902c86fed',
6181
+ 'i' => 'g',
6182
+ ),
6183
+ 'twig.d5.48.0ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3' =>
6184
+ array (
6185
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd5' . DIRECTORY_SEPARATOR . '48' . DIRECTORY_SEPARATOR . '0ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3.php',
6186
+ 'c' => '__TwigTemplate_d5480ac48b71e5e426ccbc9f98aa1621a2bcee6d474c82231fd592e4b9b4c1d3',
6187
+ 'i' => 'g',
6188
+ ),
6189
+ 'twig.d8.cc.dd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a' =>
6190
+ array (
6191
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'd8' . DIRECTORY_SEPARATOR . 'cc' . DIRECTORY_SEPARATOR . 'dd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a.php',
6192
+ 'c' => '__TwigTemplate_d8ccdd79a00a5b643af1fe149a178699d82fc39606a0cf75a7380eb442c52a6a',
6193
+ 'i' => 'g',
6194
+ ),
6195
+ 'twig.dc.78.b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545' =>
6196
+ array (
6197
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'dc' . DIRECTORY_SEPARATOR . '78' . DIRECTORY_SEPARATOR . 'b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545.php',
6198
+ 'c' => '__TwigTemplate_dc78b950182efb8f436b144938fb0dc48cf395d7daabe20293234dbcf2b26545',
6199
+ 'i' => 'g',
6200
+ ),
6201
+ 'twig.e0.be.9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec' =>
6202
+ array (
6203
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e0' . DIRECTORY_SEPARATOR . 'be' . DIRECTORY_SEPARATOR . '9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec.php',
6204
+ 'c' => '__TwigTemplate_e0be9029cc923fc647cc9fe9735ba608a9ba80e9e5a13e2eeaf05ccd663cb0ec',
6205
+ 'i' => 'g',
6206
+ ),
6207
+ 'twig.e1.a3.21e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6' =>
6208
+ array (
6209
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e1' . DIRECTORY_SEPARATOR . 'a3' . DIRECTORY_SEPARATOR . '21e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6.php',
6210
+ 'c' => '__TwigTemplate_e1a321e42cb2b295937b24e4e6307956f7926062066cbd0dafca7a95529a03e6',
6211
+ 'i' => 'g',
6212
+ ),
6213
+ 'twig.e2.c5.4407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014' =>
6214
+ array (
6215
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e2' . DIRECTORY_SEPARATOR . 'c5' . DIRECTORY_SEPARATOR . '4407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014.php',
6216
+ 'c' => '__TwigTemplate_e2c54407992fc7f64fc763c8fa820f4d1ef92de870acc466bbd2209e5965d014',
6217
+ 'i' => 'g',
6218
+ ),
6219
+ 'twig.e8.99.403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d' =>
6220
+ array (
6221
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e8' . DIRECTORY_SEPARATOR . '99' . DIRECTORY_SEPARATOR . '403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d.php',
6222
+ 'c' => '__TwigTemplate_e899403e3822a81b09e1353e7f59c289e98765518f100d96487c0db3f3f06c8d',
6223
+ 'i' => 'g',
6224
+ ),
6225
+ 'twig.e9.0f.cb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944' =>
6226
+ array (
6227
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e9' . DIRECTORY_SEPARATOR . '0f' . DIRECTORY_SEPARATOR . 'cb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944.php',
6228
+ 'c' => '__TwigTemplate_e90fcb1f091e9b4127585185e68c26f1b9d6d847e0152d264f92b621d5ec2944',
6229
+ 'i' => 'g',
6230
+ ),
6231
+ 'twig.e9.b8.f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040' =>
6232
+ array (
6233
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'e9' . DIRECTORY_SEPARATOR . 'b8' . DIRECTORY_SEPARATOR . 'f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040.php',
6234
+ 'c' => '__TwigTemplate_e9b8f7151873e99b1fbeb91c797dfff5b8dbd69fbcf98751c0fb8f46841dd040',
6235
+ 'i' => 'g',
6236
+ ),
6237
+ 'twig.ee.ea.ebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d' =>
6238
+ array (
6239
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'ee' . DIRECTORY_SEPARATOR . 'ea' . DIRECTORY_SEPARATOR . 'ebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d.php',
6240
+ 'c' => '__TwigTemplate_eeeaebb8da9bb78c051017293e6e38b7b9b5b9ce2693c48fc571b498eaf0027d',
6241
+ 'i' => 'g',
6242
+ ),
6243
  'twig.environment' =>
6244
  array (
6245
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'environment.php',
6246
  'c' => 'Ai1ec_Twig_Environment',
6247
  'i' => 'g',
6248
  ),
6249
+ 'twig.f3.35.91d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65' =>
6250
+ array (
6251
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f3' . DIRECTORY_SEPARATOR . '35' . DIRECTORY_SEPARATOR . '91d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65.php',
6252
+ 'c' => '__TwigTemplate_f33591d24d07f386c1027eeea2cbf1deffececd4acae7346e2c250942cfcff65',
6253
+ 'i' => 'g',
6254
+ ),
6255
+ 'twig.f6.f7.742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e' =>
6256
+ array (
6257
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f6' . DIRECTORY_SEPARATOR . 'f7' . DIRECTORY_SEPARATOR . '742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e.php',
6258
+ 'c' => '__TwigTemplate_f6f7742a44d6f56a89364a12ab1e9801d00d5bd9406dd18dbae62cbd9651ff6e',
6259
+ 'i' => 'g',
6260
+ ),
6261
+ 'twig.f9.27.e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326' =>
6262
+ array (
6263
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'f9' . DIRECTORY_SEPARATOR . '27' . DIRECTORY_SEPARATOR . 'e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326.php',
6264
+ 'c' => '__TwigTemplate_f927e9ebb965697e227fa8ba7991946a80bc34917fe8e437edbc0c4567956326',
6265
+ 'i' => 'g',
6266
+ ),
6267
+ 'twig.fa.8f.0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237' =>
6268
+ array (
6269
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fa' . DIRECTORY_SEPARATOR . '8f' . DIRECTORY_SEPARATOR . '0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237.php',
6270
+ 'c' => '__TwigTemplate_fa8f0b9f5c47856137f87659b98c8c795a1390f9bbf39246e273f6ef77da9237',
6271
+ 'i' => 'g',
6272
+ ),
6273
+ 'twig.fc.3c.b152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589' =>
6274
+ array (
6275
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fc' . DIRECTORY_SEPARATOR . '3c' . DIRECTORY_SEPARATOR . 'b152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589.php',
6276
+ 'c' => '__TwigTemplate_fc3cb152d1467d8b3ee69220d553a47cdb50cc64fa8c647cfa6a591c49aad589',
6277
+ 'i' => 'g',
6278
+ ),
6279
+ 'twig.fe.5f.a372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181' =>
6280
+ array (
6281
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'cache' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'fe' . DIRECTORY_SEPARATOR . '5f' . DIRECTORY_SEPARATOR . 'a372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181.php',
6282
+ 'c' => '__TwigTemplate_fe5fa372e0eb51f713beb664be0cf0c9c8c78572b1851c15eac685f6cd98c181',
6283
+ 'i' => 'g',
6284
+ ),
6285
  'twig.loader' =>
6286
  array (
6287
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'twig' . DIRECTORY_SEPARATOR . 'loader.php',
6288
  'c' => 'Ai1ec_Twig_Loader_Filesystem',
6289
  'i' => 'g',
6290
  ),
6291
+ 'upload.size-determiner' =>
6292
+ array (
6293
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'upload' . DIRECTORY_SEPARATOR . 'size-determiner.php',
6294
+ 'c' => 'Ai1ec_Upload_Size_Determiner_Utility',
6295
+ 'i' => 'g',
6296
+ 'r' => 'y',
6297
+ ),
6298
  'valarm' =>
6299
  array (
6300
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'iCal' . DIRECTORY_SEPARATOR . 'iCalcreator-2.20' . DIRECTORY_SEPARATOR . 'iCalcreator.class.php',
6308
  'i' => 'g',
6309
  'r' => 'y',
6310
  ),
6311
+ 'validator.email' =>
6312
+ array (
6313
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'email.php',
6314
+ 'c' => 'Ai1ec_Validator_Email',
6315
+ 'i' => 'n',
6316
+ 'r' => 'y',
6317
+ ),
6318
  'validator.exception' =>
6319
  array (
6320
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'exception.php',
6321
  'c' => 'Ai1ec_Value_Not_Valid_Exception',
6322
  'i' => 'g',
6323
  ),
6324
+ 'validator.human-readable-size' =>
6325
+ array (
6326
+ 'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'human-readable-size.php',
6327
+ 'c' => 'Ai1ec_Validator_Human_Readable_Size',
6328
+ 'i' => 'n',
6329
+ 'r' => 'y',
6330
+ ),
6331
  'validator.numeric' =>
6332
  array (
6333
  'f' => AI1EC_PATH . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'validator' . DIRECTORY_SEPARATOR . 'numeric.php',
lib/calendar-feed/ics.php CHANGED
@@ -18,7 +18,7 @@ class Ai1ecIcsConnectorPlugin extends Ai1ec_Connector_Plugin {
18
 
19
  const ICS_OPTION_DB_VERSION = 'ai1ec_ics_db_version';
20
 
21
- const ICS_DB_VERSION = 221;
22
 
23
  /**
24
  * @var array
@@ -251,9 +251,10 @@ class Ai1ecIcsConnectorPlugin extends Ai1ec_Connector_Plugin {
251
  // version,
252
  // or does not exist, then create/update table structure using
253
  // dbDelta().
254
- $option = $this->_registry->get( 'model.option' );
255
- if ( $option->get( self::ICS_OPTION_DB_VERSION ) !=
256
- self::ICS_DB_VERSION ) {
 
257
  $db = $this->_registry->get( 'dbi.dbi' );
258
  // ======================
259
  // = Create table feeds =
@@ -261,8 +262,8 @@ class Ai1ecIcsConnectorPlugin extends Ai1ec_Connector_Plugin {
261
  $table_name = $db->get_table_name( 'ai1ec_event_feeds' );
262
  $sql = "CREATE TABLE $table_name (
263
  feed_id bigint(20) NOT NULL AUTO_INCREMENT,
264
- feed_url varchar(255) NOT NULL,
265
- feed_name varchar(255) NOT NULL,
266
  feed_category varchar(255) NOT NULL,
267
  feed_tags varchar(255) NOT NULL,
268
  comments_enabled tinyint(1) NOT NULL DEFAULT '1',
@@ -271,9 +272,12 @@ class Ai1ecIcsConnectorPlugin extends Ai1ec_Connector_Plugin {
271
  keep_old_events tinyint(1) NOT NULL DEFAULT '0',
272
  import_timezone tinyint(1) NOT NULL DEFAULT '0',
273
  PRIMARY KEY (feed_id),
274
- UNIQUE KEY feed (feed_url)
275
  ) CHARACTER SET utf8;";
276
-
 
 
 
277
  if ( $this->_registry->get( 'database.helper' )->apply_delta( $sql ) ) {
278
  $option->set( self::ICS_OPTION_DB_VERSION,
279
  self::ICS_DB_VERSION );
18
 
19
  const ICS_OPTION_DB_VERSION = 'ai1ec_ics_db_version';
20
 
21
+ const ICS_DB_VERSION = 234;
22
 
23
  /**
24
  * @var array
251
  // version,
252
  // or does not exist, then create/update table structure using
253
  // dbDelta().
254
+ $option = $this->_registry->get( 'model.option' );
255
+ $current_db_version = $option->get( self::ICS_OPTION_DB_VERSION );
256
+ if ( $current_db_version != self::ICS_DB_VERSION ) {
257
+ /** @var $db Ai1ec_Dbi */
258
  $db = $this->_registry->get( 'dbi.dbi' );
259
  // ======================
260
  // = Create table feeds =
262
  $table_name = $db->get_table_name( 'ai1ec_event_feeds' );
263
  $sql = "CREATE TABLE $table_name (
264
  feed_id bigint(20) NOT NULL AUTO_INCREMENT,
265
+ feed_url text NOT NULL,
266
+ feed_name text NOT NULL,
267
  feed_category varchar(255) NOT NULL,
268
  feed_tags varchar(255) NOT NULL,
269
  comments_enabled tinyint(1) NOT NULL DEFAULT '1',
272
  keep_old_events tinyint(1) NOT NULL DEFAULT '0',
273
  import_timezone tinyint(1) NOT NULL DEFAULT '0',
274
  PRIMARY KEY (feed_id),
275
+ UNIQUE KEY feed (feed_url(255))
276
  ) CHARACTER SET utf8;";
277
+ if ( 221 === (int)$current_db_version ) {
278
+ $query = 'ALTER TABLE ' . $table_name . ' DROP INDEX feed';
279
+ $db->query( $query );
280
+ }
281
  if ( $this->_registry->get( 'database.helper' )->apply_delta( $sql ) ) {
282
  $option->set( self::ICS_OPTION_DB_VERSION,
283
  self::ICS_DB_VERSION );
lib/compatibility/check.php CHANGED
@@ -35,8 +35,12 @@ class Ai1ec_Compatibility_Check extends Ai1ec_Base {
35
  }
36
 
37
  /**
38
- * Observes settings changes. If setting ai1ec_use_frontend_rendering
39
- * is changed and set to true perfoms theme check.
 
 
 
 
40
  *
41
  * @param array $old_options Old options array.
42
  * @param array $new_options New options array.
@@ -46,6 +50,40 @@ class Ai1ec_Compatibility_Check extends Ai1ec_Base {
46
  * @throws Ai1ec_Bootstrap_Exception
47
  */
48
  public function ai1ec_settings_observer( $old_options, $new_options ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  $old_value = isset( $old_options['ai1ec_use_frontend_rendering'] )
50
  ? (bool)$old_options['ai1ec_use_frontend_rendering']['value']
51
  : null;
35
  }
36
 
37
  /**
38
+ * Observes settings changes.
39
+ *
40
+ * If setting ai1ec_use_frontend_rendering is changed and set to true
41
+ * perfoms theme check.
42
+ *
43
+ * Checks if Date format was changed, and update dates to the new format
44
  *
45
  * @param array $old_options Old options array.
46
  * @param array $new_options New options array.
50
  * @throws Ai1ec_Bootstrap_Exception
51
  */
52
  public function ai1ec_settings_observer( $old_options, $new_options ) {
53
+
54
+ // Date format change checker
55
+ $old_date_format_value = isset( $old_options['input_date_format'] )
56
+ ? $old_options['input_date_format']['value']
57
+ : null;
58
+ $new_date_format_value = isset( $new_options['input_date_format'] )
59
+ ? $new_options['input_date_format']['value']
60
+ : null;
61
+ if (
62
+ null !== $old_date_format_value&&
63
+ null !== $new_date_format_value &&
64
+ $old_date_format_value !== $new_date_format_value
65
+ ) {
66
+ // Get "Default calendar start date"
67
+ $exact_date = isset( $old_options['exact_date'] )
68
+ ? $old_options['exact_date']['value']
69
+ : '';
70
+ if ( '' !== $exact_date ) {
71
+ $date_system = $this->_registry->get( 'date.system' );
72
+
73
+ // Change "Default calendar start date" format
74
+ $new_exact_date = $date_system->convert_date_format(
75
+ $exact_date,
76
+ $old_date_format_value,
77
+ $new_date_format_value
78
+ );
79
+
80
+ // Save new value
81
+ $settings = $this->_registry->get( 'model.settings' );
82
+ $settings->set( 'exact_date', $new_exact_date );
83
+ }
84
+ }
85
+
86
+ // Frontend rendering checker
87
  $old_value = isset( $old_options['ai1ec_use_frontend_rendering'] )
88
  ? (bool)$old_options['ai1ec_use_frontend_rendering']['value']
89
  : null;
lib/content/filter.php CHANGED
@@ -72,12 +72,10 @@ class Ai1ec_Content_Filters extends Ai1ec_Base {
72
  *
73
  * @param array $allcaps An array of all the user's capabilities.
74
  * @param array $caps Actual capabilities for meta capability.
75
- * @param array $args Optional parameters passed to has_cap(), typically object ID.
76
- * @param \WP_User $user The user object.
77
  *
78
  * @return array Capabilities or empty array.
79
  */
80
- public function display_trash_link( $allcaps, $caps, $args, WP_User $user ) {
81
  if (
82
  isset( $_GET['instance'] ) &&
83
  in_array( 'delete_published_ai1ec_events', $caps )
72
  *
73
  * @param array $allcaps An array of all the user's capabilities.
74
  * @param array $caps Actual capabilities for meta capability.
 
 
75
  *
76
  * @return array Capabilities or empty array.
77
  */
78
+ public function display_trash_link( $allcaps, $caps ) {
79
  if (
80
  isset( $_GET['instance'] ) &&
81
  in_array( 'delete_published_ai1ec_events', $caps )
lib/date/system.php CHANGED
@@ -10,6 +10,7 @@
10
  * @package Ai1EC
11
  * @subpackage Ai1EC.Date
12
  */
 
13
  class Ai1ec_Date_System extends Ai1ec_Base {
14
 
15
  /**
@@ -136,6 +137,31 @@ class Ai1ec_Date_System extends Ai1ec_Base {
136
  return str_replace( '/', '-', $date );
137
  }
138
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
139
  /**
140
  * Returns a formatted date given a timestamp, based on the given date format.
141
  *
@@ -249,4 +275,4 @@ class Ai1ec_Date_System extends Ai1ec_Base {
249
  public function get_current_rounded_time( $shift = 11 ) {
250
  return $this->current_time() >> $shift << $shift;
251
  }
252
- }
10
  * @package Ai1EC
11
  * @subpackage Ai1EC.Date
12
  */
13
+
14
  class Ai1ec_Date_System extends Ai1ec_Base {
15
 
16
  /**
137
  return str_replace( '/', '-', $date );
138
  }
139
 
140
+ /**
141
+ * Returns the date formatted with new pattern from a given date and old pattern.
142
+ *
143
+ * @see self::get_date_patterns() for supported date formats.
144
+ *
145
+ * @param string $date Formatted date string
146
+ * @param string $old_pattern Key of old date pattern (@see
147
+ * self::get_date_format_patter())
148
+ * @param string $new_pattern Key of new date pattern (@see
149
+ * self::get_date_format_patter())
150
+ * @return string Formatted date string with new pattern
151
+ */
152
+ public function convert_date_format( $date, $old_pattern, $new_pattern ) {
153
+ // Convert old date to timestamp
154
+ $timeArray = date_parse_from_format( $this->get_date_format_patter( $old_pattern ), $date );
155
+
156
+ $timestamp = mktime(
157
+ $timeArray['hour'], $timeArray['minute'], $timeArray['second'],
158
+ $timeArray['month'], $timeArray['day'], $timeArray['year']
159
+ );
160
+
161
+ // Convert to new date pattern
162
+ return $this->format_date( $timestamp, $new_pattern );
163
+ }
164
+
165
  /**
166
  * Returns a formatted date given a timestamp, based on the given date format.
167
  *
275
  public function get_current_rounded_time( $shift = 11 ) {
276
  return $this->current_time() >> $shift << $shift;
277
  }
278
+ }
lib/global-functions.php CHANGED
@@ -136,4 +136,88 @@ function ai1ec_is_ssl_forced() {
136
  )
137
  )
138
  );
139
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
  )
137
  )
138
  );
139
+ }
140
+
141
+ /*
142
+ * Date parser for PHP <= 5.2
143
+ *
144
+ * Source: http://stackoverflow.com/questions/6668223/php-date-parse-from-format-alternative-in-php-5-2
145
+ *
146
+ * Modified to always populate hour, minute and second.
147
+ *
148
+ */
149
+ if ( ! function_exists( 'date_parse_from_format' ) ) {
150
+ function date_parse_from_format( $format, $date ) {
151
+ // reverse engineer date formats
152
+ $keys = array(
153
+ 'Y' => array( 'year', '\d{4}' ),
154
+ 'y' => array( 'year', '\d{2}' ),
155
+ 'm' => array( 'month', '\d{2}' ),
156
+ 'n' => array( 'month', '\d{1,2}' ),
157
+ 'M' => array( 'month', '[A-Z][a-z]{3}' ),
158
+ 'F' => array( 'month', '[A-Z][a-z]{2,8}' ),
159
+ 'd' => array( 'day', '\d{2}' ),
160
+ 'j' => array( 'day', '\d{1,2}' ),
161
+ 'D' => array( 'day', '[A-Z][a-z]{2}' ),
162
+ 'l' => array( 'day', '[A-Z][a-z]{6,9}' ),
163
+ 'u' => array( 'hour', '\d{1,6}' ),
164
+ 'h' => array( 'hour', '\d{2}' ),
165
+ 'H' => array( 'hour', '\d{2}' ),
166
+ 'g' => array( 'hour', '\d{1,2}' ),
167
+ 'G' => array( 'hour', '\d{1,2}' ),
168
+ 'i' => array( 'minute', '\d{2}' ),
169
+ 's' => array( 'second', '\d{2}' )
170
+ );
171
+
172
+ // convert format string to regex
173
+ $regex = '';
174
+ $chars = str_split( $format );
175
+ foreach ( $chars AS $n => $char ) {
176
+ $lastChar = isset( $chars[$n - 1] ) ? $chars[$n - 1] : '';
177
+ $skipCurrent = '\\' == $lastChar;
178
+ if ( !$skipCurrent && isset( $keys[$char] ) ) {
179
+ $regex .= '(?P<' . $keys[$char][0] . '>' . $keys[$char][1] . ')';
180
+ } else if ( '\\' == $char ) {
181
+ $regex .= $char;
182
+ } else {
183
+ $regex .= preg_quote( $char );
184
+ }
185
+ }
186
+
187
+ $dt = array();
188
+ // now try to match it
189
+ if ( preg_match( '#^' . $regex . '$#', $date, $dt ) ) {
190
+ foreach ( $dt AS $k => $v ) {
191
+ if ( is_int( $k ) ) {
192
+ unset( $dt[$k] );
193
+ }
194
+ }
195
+ if ( ! checkdate( $dt['month'], $dt['day'], $dt['year'] ) ) {
196
+ $dt['error_count'] = 1;
197
+ } else {
198
+ $dt['error_count'] = 0;
199
+ }
200
+ if ( ! isset( $dt['hour'] ) ) {
201
+ $dt['hour'] = 0;
202
+ }
203
+ if ( ! isset( $dt['minute'] ) ) {
204
+ $dt['minute'] = 0;
205
+ }
206
+ if ( ! isset( $dt['second'] ) ) {
207
+ $dt['second'] = 0;
208
+ }
209
+ } else {
210
+ $dt['error_count'] = 1;
211
+ }
212
+ $dt['errors'] = array();
213
+ $dt['fraction'] = '';
214
+ $dt['warning_count'] = 0;
215
+ $dt['warnings'] = array();
216
+ $dt['is_localtime'] = 0;
217
+ $dt['zone_type'] = 0;
218
+ $dt['zone'] = 0;
219
+ $dt['is_dst'] = '';
220
+
221
+ return $dt;
222
+ }
223
+ }
lib/html/element/href.php CHANGED
@@ -103,6 +103,13 @@ class Ai1ec_Html_Element_Href {
103
  $args['_extra_used_parameters']
104
  );
105
  }
 
 
 
 
 
 
 
106
  }
107
 
108
  /**
103
  $args['_extra_used_parameters']
104
  );
105
  }
106
+ $this->used_paramaters = array_merge(
107
+ $this->used_paramaters,
108
+ apply_filters(
109
+ 'ai1ec_view_args_for_view',
110
+ array()
111
+ )
112
+ );
113
  }
114
 
115
  /**
lib/html/element/setting/input.php CHANGED
@@ -37,6 +37,13 @@ class Ai1ec_Html_Setting_Input extends Ai1ec_Html_Element_Settings {
37
  case 'url':
38
  $input_type = 'url';
39
  break;
 
 
 
 
 
 
 
40
  }
41
 
42
  $input_args = array(
@@ -74,6 +81,10 @@ class Ai1ec_Html_Setting_Input extends Ai1ec_Html_Element_Settings {
74
  if ( isset( $this->_args['renderer']['group-class'] ) ) {
75
  $args['group_class'] = $this->_args['renderer']['group-class'];
76
  }
 
 
 
 
77
  $loader = $this->_registry->get( 'theme.loader' );
78
  $file = $loader->get_file( 'setting/input.twig', $args, true );
79
  return parent::render( $file->get_content() );
37
  case 'url':
38
  $input_type = 'url';
39
  break;
40
+
41
+ case 'number':
42
+ $input_type = 'number';
43
+ break;
44
+ case 'checkbox':
45
+ $input_type = 'checkbox';
46
+ break;
47
  }
48
 
49
  $input_args = array(
81
  if ( isset( $this->_args['renderer']['group-class'] ) ) {
82
  $args['group_class'] = $this->_args['renderer']['group-class'];
83
  }
84
+
85
+ if ( isset( $this->_args['checked'] ) && true === $this->_args['checked'] )
86
+ $args['input_args']['checked'] = $this->_args['checked'];
87
+
88
  $loader = $this->_registry->get( 'theme.loader' );
89
  $file = $loader->get_file( 'setting/input.twig', $args, true );
90
  return parent::render( $file->get_content() );
lib/import-export/ics.php CHANGED
@@ -1,1249 +1,1275 @@
1
- <?php
2
-
3
- /**
4
- * The ics import/export engine.
5
- *
6
- * @author Time.ly Network Inc.
7
- * @since 2.0
8
- *
9
- * @package AI1EC
10
- * @subpackage AI1EC.Import-export
11
- */
12
- class Ai1ec_Ics_Import_Export_Engine
13
- extends Ai1ec_Base
14
- implements Ai1ec_Import_Export_Engine {
15
-
16
- /**
17
- * @var Ai1ec_Taxonomy
18
- */
19
- protected $_taxonomy_model = null;
20
-
21
- /**
22
- * Recurrence rule class. Contains filter method.
23
- *
24
- * @var Ai1ec_Recurrence_Rule
25
- */
26
- protected $_rule_filter = null;
27
-
28
- /* (non-PHPdoc)
29
- * @see Ai1ec_Import_Export_Engine::import()
30
- */
31
- public function import( array $arguments ) {
32
- $cal = $this->_registry->get( 'vcalendar' );
33
- if ( $cal->parse( $arguments['source'] ) ) {
34
- $count = 0;
35
- try {
36
- $result = $this->add_vcalendar_events_to_db(
37
- $cal,
38
- $arguments
39
- );
40
- } catch ( Ai1ec_Parse_Exception $exception ) {
41
- throw new Ai1ec_Parse_Exception(
42
- 'Processing "' . $arguments['source'] .
43
- '" triggered error: ' . $exception->getMessage()
44
- );
45
- }
46
- return $result;
47
- }
48
- throw new Ai1ec_Parse_Exception( 'The passed string is not a valid ics feed' );
49
- }
50
-
51
- /* (non-PHPdoc)
52
- * @see Ai1ec_Import_Export_Engine::export()
53
- */
54
- public function export( array $arguments, array $params = array() ) {
55
- $c = new vcalendar();
56
- $c->setProperty( 'calscale', 'GREGORIAN' );
57
- $c->setProperty( 'method', 'PUBLISH' );
58
- // if no post id are specified do not export those properties
59
- // as they would create a new calendar in outlook.
60
- // a user reported this in AIOEC-982 and said this would fix it
61
- if( true === $arguments['do_not_export_as_calendar'] ) {
62
- $c->setProperty( 'X-WR-CALNAME', get_bloginfo( 'name' ) );
63
- $c->setProperty( 'X-WR-CALDESC', get_bloginfo( 'description' ) );
64
- }
65
- $c->setProperty( 'X-FROM-URL', home_url() );
66
- // Timezone setup
67
- $tz = $this->_registry->get( 'date.timezone' )->get_default_timezone();
68
- if ( $tz ) {
69
- $c->setProperty( 'X-WR-TIMEZONE', $tz );
70
- $tz_xprops = array( 'X-LIC-LOCATION' => $tz );
71
- iCalUtilityFunctions::createTimezone( $c, $tz, $tz_xprops );
72
- }
73
-
74
- $this->_taxonomy_model = $this->_registry->get( 'model.taxonomy' );
75
- $post_ids = array();
76
- foreach ( $arguments['events'] as $event ) {
77
- $post_ids[] = $event->get( 'post_id' );
78
- }
79
- $this->_taxonomy_model->prepare_meta_for_ics( $post_ids );
80
- $this->_registry->get( 'controller.content-filter' )
81
- ->clear_the_content_filters();
82
- foreach ( $arguments['events'] as $event ) {
83
- $c = $this->_insert_event_in_calendar(
84
- $event,
85
- $c,
86
- true,
87
- $params
88
- );
89
- }
90
- $this->_registry->get( 'controller.content-filter' )
91
- ->restore_the_content_filters();
92
- $str = ltrim( $c->createCalendar() );
93
- return $str;
94
- }
95
-
96
- /**
97
- * Check if date-time specification has no (empty) time component.
98
- *
99
- * @param array $datetime Datetime array returned by iCalcreator.
100
- *
101
- * @return bool Timelessness.
102
- */
103
- protected function _is_timeless( array $datetime ) {
104
- $timeless = true;
105
- foreach ( array( 'hour', 'min', 'sec' ) as $field ) {
106
- $timeless &= (
107
- isset( $datetime[$field] ) &&
108
- 0 != $datetime[$field]
109
- )
110
- ? false
111
- : true;
112
- }
113
- return $timeless;
114
- }
115
-
116
- /**
117
- * Process vcalendar instance - add events to database.
118
- *
119
- * @param vcalendar $v Calendar to retrieve data from.
120
- * @param array $args Arbitrary arguments map.
121
- *
122
- * @throws Ai1ec_Parse_Exception
123
- *
124
- * @internal param stdClass $feed Instance of feed (see Ai1ecIcs plugin).
125
- * @internal param string $comment_status WP comment status: 'open' or 'closed'.
126
- * @internal param int $do_show_map Map display status (DB boolean: 0 or 1).
127
- *
128
- * @return int Count of events added to database.
129
- */
130
- public function add_vcalendar_events_to_db(
131
- vcalendar $v,
132
- array $args
133
- ) {
134
- $forced_timezone = null;
135
- $feed = isset( $args['feed'] ) ? $args['feed'] : null;
136
- $comment_status = isset( $args['comment_status'] ) ? $args['comment_status'] : 'open';
137
- $do_show_map = isset( $args['do_show_map'] ) ? $args['do_show_map'] : 0;
138
- $count = 0;
139
- $events_in_db = isset( $args['events_in_db'] ) ? $args['events_in_db'] : 0;
140
- $v->sort();
141
- // Reverse the sort order, so that RECURRENCE-IDs are listed before the
142
- // defining recurrence events, and therefore take precedence during
143
- // caching.
144
- $v->components = array_reverse( $v->components );
145
-
146
- // TODO: select only VEVENT components that occur after, say, 1 month ago.
147
- // Maybe use $v->selectComponents(), which takes into account recurrence
148
-
149
- // Fetch default timezone in case individual properties don't define it
150
- $tz = $v->getComponent( 'vtimezone' );
151
- $local_timezone = $this->_registry->get( 'date.timezone' )->get_default_timezone();
152
- $timezone = $local_timezone;
153
- if ( ! empty( $tz ) ) {
154
- $timezone = $tz->getProperty( 'TZID' );
155
- }
156
-
157
- $feed_name = $v->getProperty( 'X-WR-CALNAME' );
158
- $x_wr_timezone = $v->getProperty( 'X-WR-TIMEZONE' );
159
- if (
160
- isset( $x_wr_timezone[1] ) &&
161
- is_array( $x_wr_timezone )
162
- ) {
163
- $forced_timezone = (string)$x_wr_timezone[1];
164
- $timezone = $forced_timezone;
165
- }
166
-
167
- $messages = array();
168
- if ( empty( $forced_timezone ) ) {
169
- $forced_timezone = $local_timezone;
170
- }
171
- $current_timestamp = $this->_registry->get( 'date.time' )->format_to_gmt();
172
- // initialize empty custom exclusions structure
173
- $exclusions = array();
174
- // go over each event
175
- while ( $e = $v->getComponent( 'vevent' ) ) {
176
- // Event data array.
177
- $data = array();
178
- // =====================
179
- // = Start & end times =
180
- // =====================
181
- $start = $e->getProperty( 'dtstart', 1, true );
182
- $end = $e->getProperty( 'dtend', 1, true );
183
- // For cases where a "VEVENT" calendar component
184
- // specifies a "DTSTART" property with a DATE value type but none
185
- // of "DTEND" nor "DURATION" property, the event duration is taken to
186
- // be one day. For cases where a "VEVENT" calendar component
187
- // specifies a "DTSTART" property with a DATE-TIME value type but no
188
- // "DTEND" property, the event ends on the same calendar date and
189
- // time of day specified by the "DTSTART" property.
190
- if ( empty( $end ) ) {
191
- // #1 if duration is present, assign it to end time
192
- $end = $e->getProperty( 'duration', 1, true, true );
193
- if ( empty( $end ) ) {
194
- // #2 if only DATE value is set for start, set duration to 1 day
195
- if ( ! isset( $start['value']['hour'] ) ) {
196
- $end = array(
197
- 'value' => array(
198
- 'year' => $start['value']['year'],
199
- 'month' => $start['value']['month'],
200
- 'day' => $start['value']['day'] + 1,
201
- 'hour' => 0,
202
- 'min' => 0,
203
- 'sec' => 0,
204
- ),
205
- );
206
- if ( isset( $start['value']['tz'] ) ) {
207
- $end['value']['tz'] = $start['value']['tz'];
208
- }
209
- } else {
210
- // #3 set end date to start time
211
- $end = $start;
212
- }
213
- }
214
- }
215
-
216
- $categories = $e->getProperty( "CATEGORIES", false, true );
217
- $imported_cat = array( Ai1ec_Event_Taxonomy::CATEGORIES => array() );
218
- // If the user chose to preserve taxonomies during import, add categories.
219
- if( $categories && $feed->keep_tags_categories ) {
220
- $imported_cat = $this->add_categories_and_tags(
221
- $categories['value'],
222
- $imported_cat,
223
- false,
224
- true
225
- );
226
- }
227
- $feed_categories = $feed->feed_category;
228
- if( ! empty( $feed_categories ) ) {
229
- $imported_cat = $this->add_categories_and_tags(
230
- $feed_categories,
231
- $imported_cat,
232
- false,
233
- false
234
- );
235
- }
236
- $tags = $e->getProperty( "X-TAGS", false, true );
237
-
238
- $imported_tags = array( Ai1ec_Event_Taxonomy::TAGS => array() );
239
- // If the user chose to preserve taxonomies during import, add tags.
240
- if( $tags && $feed->keep_tags_categories ) {
241
- $imported_tags = $this->add_categories_and_tags(
242
- $tags[1]['value'],
243
- $imported_tags,
244
- true,
245
- true
246
- );
247
- }
248
- $feed_tags = $feed->feed_tags;
249
- if( ! empty( $feed_tags ) ) {
250
- $imported_tags = $this->add_categories_and_tags(
251
- $feed_tags,
252
- $imported_tags,
253
- true,
254
- true
255
- );
256
- }
257
- // Event is all-day if no time components are defined
258
- $allday = $this->_is_timeless( $start['value'] ) &&
259
- $this->_is_timeless( $end['value'] );
260
- // Also check the proprietary MS all-day field.
261
- $ms_allday = $e->getProperty( 'X-MICROSOFT-CDO-ALLDAYEVENT' );
262
- if ( ! empty( $ms_allday ) && $ms_allday[1] == 'TRUE' ) {
263
- $allday = true;
264
- }
265
- $event_timezone = $timezone;
266
- if ( $allday ) {
267
- $event_timezone = $local_timezone;
268
- }
269
- $start = $this->_time_array_to_datetime(
270
- $start,
271
- $event_timezone,
272
- $feed->import_timezone ? $forced_timezone : null
273
- );
274
- $end = $this->_time_array_to_datetime(
275
- $end,
276
- $event_timezone,
277
- $feed->import_timezone ? $forced_timezone : null
278
- );
279
-
280
- if ( false === $start || false === $end ) {
281
- throw new Ai1ec_Parse_Exception(
282
- 'Failed to parse one or more dates given timezone "' .
283
- var_export( $event_timezone, true ) . '"'
284
- );
285
- continue;
286
- }
287
-
288
- // If all-day, and start and end times are equal, then this event has
289
- // invalid end time (happens sometimes with poorly implemented iCalendar
290
- // exports, such as in The Event Calendar), so set end time to 1 day
291
- // after start time.
292
- if ( $allday && $start->format() === $end->format() ) {
293
- $end->adjust_day( +1 );
294
- }
295
-
296
- $data += compact( 'start', 'end', 'allday' );
297
-
298
- // =======================================
299
- // = Recurrence rules & recurrence dates =
300
- // =======================================
301
- if ( $rrule = $e->createRrule() ) {
302
- $rrule = explode( ':', $rrule );
303
- $rrule = trim( end( $rrule ) );
304
- }
305
-
306
- if ( $exrule = $e->createExrule() ) {
307
- $exrule = explode( ':', $exrule );
308
- $exrule = trim( end( $exrule ) );
309
- }
310
-
311
- if ( $rdate = $e->createRdate() ) {
312
- $rdate = explode( ':', $rdate );
313
- $rdate = trim( end( $rdate ) );
314
- }
315
-
316
- // ===================
317
- // = Exception dates =
318
- // ===================
319
- $exdate = '';
320
- if ( $exdates = $e->createExdate() ){
321
- // We may have two formats:
322
- // one exdate with many dates ot more EXDATE rules
323
- $exdates = explode( 'EXDATE', $exdates );
324
- $def_timezone = $this->_get_import_timezone( $event_timezone );
325
- foreach ( $exdates as $exd ) {
326
- if ( empty( $exd ) ) {
327
- continue;
328
- }
329
- $exploded = explode( ':', $exd );
330
- $excpt_timezone = $def_timezone;
331
- $excpt_date = null;
332
- foreach ( $exploded as $particle ) {
333
- if ( ';TZID=' === substr( $particle, 0, 6 ) ) {
334
- $excpt_timezone = substr( $particle, 6 );
335
- } else {
336
- $excpt_date = trim( $particle );
337
- }
338
- }
339
- // Google sends YYYYMMDD for all-day excluded events
340
- if (
341
- $allday &&
342
- 8 === strlen( $excpt_date )
343
- ) {
344
- $excpt_date .= 'T000000Z';
345
- $excpt_timezone = 'UTC';
346
- }
347
- $ex_dt = $this->_registry->get(
348
- 'date.time',
349
- $excpt_date,
350
- $excpt_timezone
351
- );
352
- if ( $ex_dt ) {
353
- if ( isset( $exdate{0} ) ) {
354
- $exdate .= ',';
355
- }
356
- $exdate .= $ex_dt->format( 'Ymd\THis', $excpt_timezone );
357
- }
358
- }
359
- }
360
- // Add custom exclusions if there any
361
- $recurrence_id = $e->getProperty( 'recurrence-id' );
362
- if (
363
- false === $recurrence_id &&
364
- ! empty( $exclusions[$e->getProperty( 'uid' )] )
365
- ) {
366
- if ( isset( $exdate{0} ) ) {
367
- $exdate .= ',';
368
- }
369
- $exdate .= implode( ',', $exclusions[$e->getProperty( 'uid' )] );
370
- }
371
- // ========================
372
- // = Latitude & longitude =
373
- // ========================
374
- $latitude = $longitude = NULL;
375
- $geo_tag = $e->getProperty( 'geo' );
376
- if ( is_array( $geo_tag ) ) {
377
- if (
378
- isset( $geo_tag['latitude'] ) &&
379
- isset( $geo_tag['longitude'] )
380
- ) {
381
- $latitude = (float)$geo_tag['latitude'];
382
- $longitude = (float)$geo_tag['longitude'];
383
- }
384
- } else if ( ! empty( $geo_tag ) && false !== strpos( $geo_tag, ';' ) ) {
385
- list( $latitude, $longitude ) = explode( ';', $geo_tag, 2 );
386
- $latitude = (float)$latitude;
387
- $longitude = (float)$longitude;
388
- }
389
- unset( $geo_tag );
390
- if ( NULL !== $latitude ) {
391
- $data += compact( 'latitude', 'longitude' );
392
- // Check the input coordinates checkbox, otherwise lat/long data
393
- // is not present on the edit event page
394
- $data['show_coordinates'] = 1;
395
- }
396
-
397
- // ===================
398
- // = Venue & address =
399
- // ===================
400
- $address = $venue = '';
401
- $location = $e->getProperty( 'location' );
402
- $matches = array();
403
- // This regexp matches a venue / address in the format
404
- // "venue @ address" or "venue - address".
405
- preg_match( '/\s*(.*\S)\s+[\-@]\s+(.*)\s*/', $location, $matches );
406
- // if there is no match, it's not a combined venue + address
407
- if ( empty( $matches ) ) {
408
- // temporary fix for Mac ICS import. Se AIOEC-2187
409
- // and https://github.com/iCalcreator/iCalcreator/issues/13
410
- $location = str_replace( '\n', "\n", $location );
411
- // if there is a comma, probably it's an address
412
- if ( false === strpos( $location, ',' ) ) {
413
- $venue = $location;
414
- } else {
415
- $address = $location;
416
- }
417
- } else {
418
- $venue = isset( $matches[1] ) ? $matches[1] : '';
419
- $address = isset( $matches[2] ) ? $matches[2] : '';
420
- }
421
-
422
- // =====================================================
423
- // = Set show map status based on presence of location =
424
- // =====================================================
425
- $event_do_show_map = $do_show_map;
426
- if (
427
- 1 === $do_show_map &&
428
- NULL === $latitude &&
429
- empty( $address )
430
- ) {
431
- $event_do_show_map = 0;
432
- }
433
-
434
- // ==================
435
- // = Cost & tickets =
436
- // ==================
437
- $cost = $e->getProperty( 'X-COST' );
438
- $cost = $cost ? $cost[1] : '';
439
- $ticket_url = $e->getProperty( 'X-TICKETS-URL' );
440
- $ticket_url = $ticket_url ? $ticket_url[1] : '';
441
-
442
- // ===============================
443
- // = Contact name, phone, e-mail =
444
- // ===============================
445
- $organizer = $e->getProperty( 'organizer' );
446
- if (
447
- 'MAILTO:' === substr( $organizer, 0, 7 ) &&
448
- false === strpos( $organizer, '@' )
449
- ) {
450
- $organizer = substr( $organizer, 7 );
451
- }
452
- $contact = $e->getProperty( 'contact' );
453
- $elements = explode( ';', $contact, 4 );
454
- foreach ( $elements as $el ) {
455
- $el = trim( $el );
456
- // Detect e-mail address.
457
- if ( false !== strpos( $el, '@' ) ) {
458
- $data['contact_email'] = $el;
459
- }
460
- // Detect URL.
461
- elseif ( false !== strpos( $el, '://' ) ) {
462
- $data['contact_url'] = $el;
463
- }
464
- // Detect phone number.
465
- elseif ( preg_match( '/\d/', $el ) ) {
466
- $data['contact_phone'] = $el;
467
- }
468
- // Default to name.
469
- else {
470
- $data['contact_name'] = $el;
471
- }
472
- }
473
- if ( ! isset( $data['contact_name'] ) || ! $data['contact_name'] ) {
474
- // If no contact name, default to organizer property.
475
- $data['contact_name'] = $organizer;
476
- }
477
- // Store yet-unsaved values to the $data array.
478
- $data += array(
479
- 'recurrence_rules' => $rrule,
480
- 'exception_rules' => $exrule,
481
- 'recurrence_dates' => $rdate,
482
- 'exception_dates' => $exdate,
483
- 'venue' => $venue,
484
- 'address' => $address,
485
- 'cost' => $cost,
486
- 'ticket_url' => $ticket_url,
487
- 'show_map' => $event_do_show_map,
488
- 'ical_feed_url' => $feed->feed_url,
489
- 'ical_source_url' => $e->getProperty( 'url' ),
490
- 'ical_organizer' => $organizer,
491
- 'ical_contact' => $contact,
492
- 'ical_uid' => $this->_get_ical_uid( $e ),
493
- 'categories' => array_keys( $imported_cat[Ai1ec_Event_Taxonomy::CATEGORIES] ),
494
- 'tags' => array_keys( $imported_tags[Ai1ec_Event_Taxonomy::TAGS] ),
495
- 'feed' => $feed,
496
- 'post' => array(
497
- 'post_status' => 'publish',
498
- 'comment_status' => $comment_status,
499
- 'post_type' => AI1EC_POST_TYPE,
500
- 'post_author' => 1,
501
- 'post_title' => $e->getProperty( 'summary' ),
502
- 'post_content' => stripslashes(
503
- str_replace(
504
- '\n',
505
- "\n",
506
- $e->getProperty( 'description' )
507
- )
508
- ),
509
- ),
510
- );
511
- // register any custom exclusions for given event
512
- $exclusions = $this->_add_recurring_events_exclusions(
513
- $e,
514
- $exclusions,
515
- $start
516
- );
517
-
518
- // Create event object.
519
- $data = apply_filters(
520
- 'ai1ec_pre_init_event_from_feed',
521
- $data,
522
- $e,
523
- $feed
524
- );
525
-
526
- $event = $this->_registry->get( 'model.event', $data );
527
-
528
- // Instant Event
529
- $is_instant = $e->getProperty( 'X-INSTANT-EVENT' );
530
- if ( $is_instant ) {
531
- $event->set_no_end_time();
532
- }
533
-
534
- $recurrence = $event->get( 'recurrence_rules' );
535
- $search = $this->_registry->get( 'model.search' );
536
- // first let's check by UID
537
- $matching_event_id = $search
538
- ->get_matching_event_by_uid_and_url(
539
- $event->get( 'ical_uid' ),
540
- $event->get( 'ical_feed_url' )
541
- );
542
- // if no result, perform the legacy check.
543
- if ( null === $matching_event_id ) {
544
- $matching_event_id = $search
545
- ->get_matching_event_id(
546
- $event->get( 'ical_uid' ),
547
- $event->get( 'ical_feed_url' ),
548
- $event->get( 'start' ),
549
- ! empty( $recurrence )
550
- );
551
- }
552
- if ( null === $matching_event_id ) {
553
- // =================================================
554
- // = Event was not found, so store it and the post =
555
- // =================================================
556
- $event->save();
557
- $count++;
558
- } else {
559
- // ======================================================
560
- // = Event was found, let's store the new event details =
561
- // ======================================================
562
-
563
- // Update the post
564
- $post = get_post( $matching_event_id );
565
-
566
- if ( null !== $post ) {
567
- $post->post_title = $event->get( 'post' )->post_title;
568
- $post->post_content = $event->get( 'post' )->post_content;
569
- wp_update_post( $post );
570
-
571
- // Update the event
572
- $event->set( 'post_id', $matching_event_id );
573
- $event->set( 'post', $post );
574
- $event->save( true );
575
- $count++;
576
- }
577
- }
578
- do_action( 'ai1ec_ics_event_saved', $event, $feed );
579
-
580
- // import not standard taxonomies.
581
- unset( $imported_cat[Ai1ec_Event_Taxonomy::CATEGORIES] );
582
- foreach ( $imported_cat as $tax_name => $ids ) {
583
- wp_set_post_terms( $event->get( 'post_id' ), array_keys( $ids ), $tax_name );
584
- }
585
-
586
- unset( $imported_tags[Ai1ec_Event_Taxonomy::TAGS] );
587
- foreach ( $imported_tags as $tax_name => $ids ) {
588
- wp_set_post_terms( $event->get( 'post_id' ), array_keys( $ids ), $tax_name );
589
- }
590
-
591
- unset( $events_in_db[$event->get( 'post_id' )] );
592
- }
593
-
594
- return array(
595
- 'count' => $count,
596
- 'events_to_delete' => $events_in_db,
597
- 'messages' => $messages,
598
- 'name' => $feed_name,
599
- );
600
- }
601
-
602
- /**
603
- * Parse importable feed timezone to sensible value.
604
- *
605
- * @param string $def_timezone Timezone value from feed.
606
- *
607
- * @return string Valid timezone name to use.
608
- */
609
- protected function _get_import_timezone( $def_timezone ) {
610
- $parser = $this->_registry->get( 'date.timezone' );
611
- $timezone = $parser->get_name( $def_timezone );
612
- if ( false === $timezone ) {
613
- return 'sys.default';
614
- }
615
- return $timezone;
616
- }
617
-
618
- /**
619
- * time_array_to_timestamp function
620
- *
621
- * Converts time array to time string.
622
- * Passed array: Array( 'year', 'month', 'day', ['hour', 'min', 'sec', ['tz']] )
623
- * Return int: UNIX timestamp in GMT
624
- *
625
- * @param array $time iCalcreator time property array
626
- * (*full* format expected)
627
- * @param string $def_timezone Default time zone in case not defined
628
- * in $time
629
- * @param null|string $forced_timezone Timezone to use instead of UTC.
630
- *
631
- * @return int UNIX timestamp
632
- **/
633
- protected function _time_array_to_datetime(
634
- array $time,
635
- $def_timezone,
636
- $forced_timezone = null
637
- ) {
638
- $timezone = '';
639
- if ( isset( $time['params']['TZID'] ) ) {
640
- $timezone = $time['params']['TZID'];
641
- } elseif (
642
- isset( $time['value']['tz'] ) &&
643
- 'Z' === $time['value']['tz']
644
- ) {
645
- $timezone = 'UTC';
646
- }
647
- if ( empty( $timezone ) ) {
648
- $timezone = $def_timezone;
649
- }
650
-
651
- $date_time = $this->_registry->get( 'date.time' );
652
-
653
- if ( ! empty( $timezone ) ) {
654
- $parser = $this->_registry->get( 'date.timezone' );
655
- $timezone = $parser->get_name( $timezone );
656
- if ( false === $timezone ) {
657
- return false;
658
- }
659
- $date_time->set_timezone( $timezone );
660
- }
661
-
662
- if ( ! isset( $time['value']['hour'] ) ) {
663
- $time['value']['hour'] = $time['value']['min'] =
664
- $time['value']['sec'] = 0;
665
- }
666
-
667
- $date_time->set_date(
668
- $time['value']['year'],
669
- $time['value']['month'],
670
- $time['value']['day']
671
- )->set_time(
672
- $time['value']['hour'],
673
- $time['value']['min'],
674
- $time['value']['sec']
675
- );
676
- if (
677
- 'UTC' === $timezone &&
678
- null !== $forced_timezone
679
- ) {
680
- $date_time->set_timezone( $forced_timezone );
681
- }
682
- return $date_time;
683
- }
684
-
685
- /**
686
- * Convert an event from a feed into a new Ai1ec_Event object and add it to
687
- * the calendar.
688
- *
689
- * @param Ai1ec_Event $event Event object.
690
- * @param vcalendar $calendar Calendar object.
691
- * @param bool $export States whether events are created for export.
692
- * @param array $params Additional parameters for export.
693
- *
694
- * @return void
695
- */
696
- protected function _insert_event_in_calendar(
697
- Ai1ec_Event $event,
698
- vcalendar $calendar,
699
- $export = false,
700
- array $params = array()
701
- ) {
702
-
703
- $tz = $this->_registry->get( 'date.timezone' )
704
- ->get_default_timezone();
705
-
706
- $e = & $calendar->newComponent( 'vevent' );
707
- $uid = '';
708
- if ( $event->get( 'ical_uid' ) ) {
709
- $uid = addcslashes( $event->get( 'ical_uid' ), "\\;,\n" );
710
- } else {
711
- $uid = $event->get_uid();
712
- $event->set( 'ical_uid', $uid );
713
- $event->save( true );
714
- }
715
- $e->setProperty( 'uid', $this->_sanitize_value( $uid ) );
716
- $e->setProperty(
717
- 'url',
718
- get_permalink( $event->get( 'post_id' ) )
719
- );
720
-
721
- // =========================
722
- // = Summary & description =
723
- // =========================
724
- $e->setProperty(
725
- 'summary',
726
- $this->_sanitize_value(
727
- html_entity_decode(
728
- apply_filters( 'the_title', $event->get( 'post' )->post_title ),
729
- ENT_QUOTES,
730
- 'UTF-8'
731
- )
732
- )
733
- );
734
-
735
- $content = apply_filters(
736
- 'ai1ec_the_content',
737
- apply_filters(
738
- 'the_content',
739
- $event->get( 'post' )->post_content
740
- )
741
- );
742
- $content = str_replace(']]>', ']]&gt;', $content);
743
- $content = html_entity_decode( $content, ENT_QUOTES, 'UTF-8' );
744
-
745
- // Prepend featured image if available.
746
- $size = null;
747
- $avatar = $this->_registry->get( 'view.event.avatar' );
748
- $matches = $avatar->get_image_from_content( $content );
749
- // if no img is already present - add thumbnail
750
- if ( empty( $matches ) ) {
751
- if ( $img_url = $avatar->get_post_thumbnail_url( $event, $size ) ) {
752
- $content = '<div class="ai1ec-event-avatar alignleft timely"><img src="' .
753
- esc_attr( $img_url ) . '" width="' . $size[0] . '" height="' .
754
- $size[1] . '" /></div>' . $content;
755
- }
756
- }
757
-
758
- if ( isset( $params['no_html'] ) && $params['no_html'] ) {
759
- $e->setProperty(
760
- 'description',
761
- $this->_sanitize_value(
762
- strip_tags( strip_shortcodes( $content ) )
763
- )
764
- );
765
- if ( ! empty( $content ) ) {
766
- $html_content = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">\n' .
767
- '<HTML>\n<HEAD>\n<TITLE></TITLE>\n</HEAD>\n<BODY>' . $content .
768
- '</BODY></HTML>';
769
- $e->setProperty(
770
- 'X-ALT-DESC',
771
- $this->_sanitize_value( $html_content ),
772
- array(
773
- 'FMTTYPE' => 'text/html',
774
- )
775
- );
776
- unset( $html_content );
777
- }
778
- } else {
779
- $e->setProperty( 'description', $this->_sanitize_value( $content ) );
780
- }
781
- $revision = (int)current(
782
- array_keys(
783
- wp_get_post_revisions( $event->get( 'post_id' ) )
784
- )
785
- );
786
- $e->setProperty( 'sequence', $revision );
787
-
788
- // =====================
789
- // = Start & end times =
790
- // =====================
791
- $dtstartstring = '';
792
- $dtstart = $dtend = array();
793
- if ( $event->is_allday() ) {
794
- $dtstart['VALUE'] = $dtend['VALUE'] = 'DATE';
795
- // For exporting all day events, don't set a timezone
796
- if ( $tz && ! $export ) {
797
- $dtstart['TZID'] = $dtend['TZID'] = $tz;
798
- }
799
-
800
- // For exportin' all day events, only set the date not the time
801
- if ( $export ) {
802
- $e->setProperty(
803
- 'dtstart',
804
- $this->_sanitize_value(
805
- $event->get( 'start' )->format( 'Ymd' )
806
- ),
807
- $dtstart
808
- );
809
- $e->setProperty(
810
- 'dtend',
811
- $this->_sanitize_value(
812
- $event->get( 'end' )->format( 'Ymd' )
813
- ),
814
- $dtend
815
- );
816
- } else {
817
- $e->setProperty(
818
- 'dtstart',
819
- $this->_sanitize_value(
820
- $event->get( 'start' )->format( "Ymd\T" )
821
- ),
822
- $dtstart
823
- );
824
- $e->setProperty(
825
- 'dtend',
826
- $this->_sanitize_value(
827
- $event->get( 'end' )->format( "Ymd\T" )
828
- ),
829
- $dtend
830
- );
831
- }
832
- } else {
833
- if ( $tz ) {
834
- $dtstart['TZID'] = $dtend['TZID'] = $tz;
835
- }
836
- // This is used later.
837
- $dtstartstring = $event->get( 'start' )->format( "Ymd\THis" );
838
- $e->setProperty(
839
- 'dtstart',
840
- $this->_sanitize_value( $dtstartstring ),
841
- $dtstart
842
- );
843
-
844
- if ( false === (bool)$event->get( 'instant_event' ) ) {
845
- $e->setProperty(
846
- 'dtend',
847
- $this->_sanitize_value(
848
- $event->get( 'end' )->format( "Ymd\THis" )
849
- ),
850
- $dtend
851
- );
852
- }
853
- }
854
-
855
- // ========================
856
- // = Latitude & longitude =
857
- // ========================
858
- if (
859
- floatval( $event->get( 'latitude' ) ) ||
860
- floatval( $event->get( 'longitude' ) )
861
- ) {
862
- $e->setProperty(
863
- 'geo',
864
- $event->get( 'latitude' ),
865
- $event->get( 'longitude' )
866
- );
867
- }
868
-
869
- // ===================
870
- // = Venue & address =
871
- // ===================
872
- if ( $event->get( 'venue' ) || $event->get( 'address' ) ) {
873
- $location = array(
874
- $event->get( 'venue' ),
875
- $event->get( 'address' )
876
- );
877
- $location = array_filter( $location );
878
- $location = implode( ' @ ', $location );
879
- $e->setProperty( 'location', $this->_sanitize_value( $location ) );
880
- }
881
-
882
- $categories = array();
883
- $language = get_bloginfo( 'language' );
884
-
885
- foreach (
886
- $this->_taxonomy_model->get_post_categories(
887
- $event->get( 'post_id' )
888
- )
889
- as $cat
890
- ) {
891
- $categories[] = $cat->name;
892
- }
893
- $e->setProperty(
894
- 'categories',
895
- implode( ',', $categories ),
896
- array( "LANGUAGE" => $language )
897
- );
898
- $tags = array();
899
- foreach (
900
- $this->_taxonomy_model->get_post_tags( $event->get( 'post_id' ) )
901
- as $tag
902
- ) {
903
- $tags[] = $tag->name;
904
- }
905
- if( ! empty( $tags) ) {
906
- $e->setProperty(
907
- 'X-TAGS',
908
- implode( ',', $tags ),
909
- array( "LANGUAGE" => $language )
910
- );
911
- }
912
- // ==================
913
- // = Cost & tickets =
914
- // ==================
915
- if ( $event->get( 'cost' ) ) {
916
- $e->setProperty(
917
- 'X-COST',
918
- $this->_sanitize_value( $event->get( 'cost' ) )
919
- );
920
- }
921
- if ( $event->get( 'ticket_url' ) ) {
922
- $e->setProperty(
923
- 'X-TICKETS-URL',
924
- $this->_sanitize_value(
925
- $event->get( 'ticket_url' )
926
- )
927
- );
928
- }
929
- // =================
930
- // = Instant Event =
931
- // =================
932
- if ( $event->is_instant() ) {
933
- $e->setProperty(
934
- 'X-INSTANT-EVENT',
935
- $this->_sanitize_value( $event->is_instant() )
936
- );
937
- }
938
-
939
- // ====================================
940
- // = Contact name, phone, e-mail, URL =
941
- // ====================================
942
- $contact = array(
943
- $event->get( 'contact_name' ),
944
- $event->get( 'contact_phone' ),
945
- $event->get( 'contact_email' ),
946
- $event->get( 'contact_url' ),
947
- );
948
- $contact = array_filter( $contact );
949
- $contact = implode( '; ', $contact );
950
- $e->setProperty( 'contact', $this->_sanitize_value( $contact ) );
951
-
952
- // ====================
953
- // = Recurrence rules =
954
- // ====================
955
- $rrule = array();
956
- $recurrence = $event->get( 'recurrence_rules' );
957
- $recurrence = $this->_filter_rule( $recurrence );
958
- if ( ! empty( $recurrence ) ) {
959
- $rules = array();
960
- foreach ( explode( ';', $recurrence ) as $v) {
961
- if ( strpos( $v, '=' ) === false ) {
962
- continue;
963
- }
964
-
965
- list( $k, $v ) = explode( '=', $v );
966
- $k = strtoupper( $k );
967
- // If $v is a comma-separated list, turn it into array for iCalcreator
968
- switch ( $k ) {
969
- case 'BYSECOND':
970
- case 'BYMINUTE':
971
- case 'BYHOUR':
972
- case 'BYDAY':
973
- case 'BYMONTHDAY':
974
- case 'BYYEARDAY':
975
- case 'BYWEEKNO':
976
- case 'BYMONTH':
977
- case 'BYSETPOS':
978
- $exploded = explode( ',', $v );
979
- break;
980
- default:
981
- $exploded = $v;
982
- break;
983
- }
984
- // iCalcreator requires a more complex array structure for BYDAY...
985
- if ( $k == 'BYDAY' ) {
986
- $v = array();
987
- foreach ( $exploded as $day ) {
988
- $v[] = array( 'DAY' => $day );
989
- }
990
- } else {
991
- $v = $exploded;
992
- }
993
- $rrule[ $k ] = $v;
994
- }
995
- }
996
-
997
- // ===================
998
- // = Exception rules =
999
- // ===================
1000
- $exceptions = $event->get( 'exception_rules' );
1001
- $exceptions = $this->_filter_rule( $exceptions );
1002
- $exrule = array();
1003
- if ( ! empty( $exceptions ) ) {
1004
- $rules = array();
1005
-
1006
- foreach ( explode( ';', $exceptions ) as $v) {
1007
- if ( strpos( $v, '=' ) === false ) {
1008
- continue;
1009
- }
1010
-
1011
- list($k, $v) = explode( '=', $v );
1012
- $k = strtoupper( $k );
1013
- // If $v is a comma-separated list, turn it into array for iCalcreator
1014
- switch ( $k ) {
1015
- case 'BYSECOND':
1016
- case 'BYMINUTE':
1017
- case 'BYHOUR':
1018
- case 'BYDAY':
1019
- case 'BYMONTHDAY':
1020
- case 'BYYEARDAY':
1021
- case 'BYWEEKNO':
1022
- case 'BYMONTH':
1023
- case 'BYSETPOS':
1024
- $exploded = explode( ',', $v );
1025
- break;
1026
- default:
1027
- $exploded = $v;
1028
- break;
1029
- }
1030
- // iCalcreator requires a more complex array structure for BYDAY...
1031
- if ( $k == 'BYDAY' ) {
1032
- $v = array();
1033
- foreach ( $exploded as $day ) {
1034
- $v[] = array( 'DAY' => $day );
1035
- }
1036
- } else {
1037
- $v = $exploded;
1038
- }
1039
- $exrule[ $k ] = $v;
1040
- }
1041
- }
1042
-
1043
- // add rrule to exported calendar
1044
- if ( ! empty( $rrule ) && ! isset( $rrule['RDATE'] ) ) {
1045
- $e->setProperty( 'rrule', $this->_sanitize_value( $rrule ) );
1046
- }
1047
- // add exrule to exported calendar
1048
- if ( ! empty( $exrule ) && ! isset( $exrule['EXDATE'] ) ) {
1049
- $e->setProperty( 'exrule', $this->_sanitize_value( $exrule ) );
1050
- }
1051
-
1052
- // ===================
1053
- // = Exception dates =
1054
- // ===================
1055
- // For all day events that use a date as DTSTART, date must be supplied
1056
- // For other other events which use DATETIME, we must use that as well
1057
- // We must also match the exact starting time
1058
- $recurrence_dates = $event->get( 'recurrence_dates' );
1059
- $recurrence_dates = $this->_filter_rule( $recurrence_dates );
1060
- if ( ! empty( $recurrence_dates ) ) {
1061
- $params = array(
1062
- 'VALUE' => 'DATE-TIME',
1063
- 'TZID' => $tz,
1064
- );
1065
- $dt_suffix = $event->get( 'start' )->format( '\THis' );
1066
- foreach (
1067
- explode( ',', $recurrence_dates )
1068
- as $exdate
1069
- ) {
1070
- // date-time string in EXDATES is formatted as 'Ymd\THis\Z', that
1071
- // means - in UTC timezone, thus we use `format_to_gmt` here.
1072
- $exdate = $this->_registry->get( 'date.time', $exdate )
1073
- ->format_to_gmt( 'Ymd' );
1074
- $e->setProperty(
1075
- 'rdate',
1076
- array( $exdate . $dt_suffix ),
1077
- $params
1078
- );
1079
- }
1080
- }
1081
- $exception_dates = $event->get( 'exception_dates' );
1082
- $exception_dates = $this->_filter_rule( $exception_dates );
1083
- if ( ! empty( $exception_dates ) ) {
1084
- $params = array(
1085
- 'VALUE' => 'DATE-TIME',
1086
- 'TZID' => $tz,
1087
- );
1088
- $dt_suffix = $event->get( 'start' )->format( '\THis' );
1089
- foreach (
1090
- explode( ',', $exception_dates )
1091
- as $exdate
1092
- ) {
1093
- // date-time string in EXDATES is formatted as 'Ymd\THis\Z', that
1094
- // means - in UTC timezone, thus we use `format_to_gmt` here.
1095
- $exdate = $this->_registry->get( 'date.time', $exdate )
1096
- ->format_to_gmt( 'Ymd' );
1097
- $e->setProperty(
1098
- 'exdate',
1099
- array( $exdate . $dt_suffix ),
1100
- $params
1101
- );
1102
- }
1103
- }
1104
- return $calendar;
1105
- }
1106
-
1107
- /**
1108
- * _sanitize_value method
1109
- *
1110
- * Convert value, so it be safe to use on ICS feed. Used before passing to
1111
- * iCalcreator methods, for rendering.
1112
- *
1113
- * @param string $value Text to be sanitized
1114
- *
1115
- * @return string Safe value, for use in HTML
1116
- */
1117
- protected function _sanitize_value( $value ) {
1118
- if ( ! is_scalar( $value ) ) {
1119
- return $value;
1120
- }
1121
- $safe_eol = "\n";
1122
- $value = strtr(
1123
- trim( $value ),
1124
- array(
1125
- "\r\n" => $safe_eol,
1126
- "\r" => $safe_eol,
1127
- "\n" => $safe_eol,
1128
- )
1129
- );
1130
- $value = addcslashes( $value, '\\' );
1131
- return $value;
1132
- }
1133
-
1134
- /**
1135
- * Takes a comma-separated list of tags or categories.
1136
- * If they exist, reuses
1137
- * the existing ones. If not, creates them.
1138
- *
1139
- * The $imported_terms array uses keys to store values rather than values to
1140
- * speed up lookups (using isset() insted of in_array()).
1141
- *
1142
- * @param string $terms
1143
- * @param array $imported_terms
1144
- * @param boolean $is_tag
1145
- * @param boolean $use_name
1146
- *
1147
- * @return array
1148
- */
1149
- public function add_categories_and_tags(
1150
- $terms,
1151
- array $imported_terms,
1152
- $is_tag,
1153
- $use_name
1154
- ) {
1155
- $taxonomy = $is_tag ? 'events_tags' : 'events_categories';
1156
- $categories = explode( ',', $terms );
1157
- $event_taxonomy = $this->_registry->get( 'model.event.taxonomy' );
1158
-
1159
- foreach ( $categories as $cat_name ) {
1160
- $cat_name = trim( $cat_name );
1161
- if ( empty( $cat_name ) ) {
1162
- continue;
1163
- }
1164
- $term = $event_taxonomy->initiate_term( $cat_name, $taxonomy, ! $use_name );
1165
- if ( false !== $term ) {
1166
- if ( ! isset( $imported_terms[$term['taxonomy']] ) ) {
1167
- $imported_terms[$term['taxonomy']] = array();
1168
- }
1169
- $imported_terms[$term['taxonomy']][$term['term_id']] = true;
1170
- }
1171
- }
1172
- return $imported_terms;
1173
- }
1174
-
1175
- /**
1176
- * Returns modified ical uid for google recurring edited events.
1177
- *
1178
- * @param vevent $e Vevent object.
1179
- *
1180
- * @return string ICAL uid.
1181
- */
1182
- protected function _get_ical_uid( $e ) {
1183
- $ical_uid = $e->getProperty( 'uid' );
1184
- $recurrence_id = $e->getProperty( 'recurrence-id' );
1185
- if ( false !== $recurrence_id ) {
1186
- $ical_uid = implode( '', array_values( $recurrence_id ) ) . '-' .
1187
- $ical_uid;
1188
- }
1189
-
1190
- return $ical_uid;
1191
- }
1192
-
1193
- /**
1194
- * Returns modified exclusions structure for given event.
1195
- *
1196
- * @param vcalendar $e Vcalendar event object.
1197
- * @param array $exclusions Exclusions.
1198
- * @param Ai1ec_Date_Time $start Date time object.
1199
- *
1200
- * @return array Modified exclusions structure.
1201
- */
1202
- protected function _add_recurring_events_exclusions( $e, $exclusions, $start ) {
1203
- $recurrence_id = $e->getProperty( 'recurrence-id' );
1204
- if (
1205
- false === $recurrence_id ||
1206
- ! isset( $recurrence_id['year'] ) ||
1207
- ! isset( $recurrence_id['month'] ) ||
1208
- ! isset( $recurrence_id['day'] )
1209
- ) {
1210
- return $exclusions;
1211
- }
1212
- $year = $month = $day = $hour = $min = $sec = null;
1213
- extract( $recurrence_id, EXTR_IF_EXISTS );
1214
- $timezone = '';
1215
- $exdate = sprintf( '%04d%02d%02d', $year, $month, $day );
1216
- if (
1217
- null === $hour ||
1218
- null === $min ||
1219
- null === $sec
1220
- ) {
1221
- $hour = $min = $sec = '00';
1222
- $timezone = 'Z';
1223
- }
1224
- $exdate .= sprintf(
1225
- 'T%02d%02d%02d%s',
1226
- $hour,
1227
- $min,
1228
- $sec,
1229
- $timezone
1230
- );
1231
- $exclusions[$e->getProperty( 'uid' )][] = $exdate;
1232
- return $exclusions;
1233
- }
1234
-
1235
- /**
1236
- * Filter recurrence / exclusion rule or dates. Avoid throwing exception for old, malformed values.
1237
- *
1238
- * @param string $rule Rule or dates value.
1239
- *
1240
- * @return string Fixed rule or dates value.
1241
- */
1242
- protected function _filter_rule( $rule ) {
1243
- if ( null === $this->_rule_filter ) {
1244
- $this->_rule_filter = $this->_registry->get( 'recurrence.rule' );
1245
- }
1246
- return $this->_rule_filter->filter_rule( $rule );
1247
- }
1248
-
1249
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * The ics import/export engine.
5
+ *
6
+ * @author Time.ly Network Inc.
7
+ * @since 2.0
8
+ *
9
+ * @package AI1EC
10
+ * @subpackage AI1EC.Import-export
11
+ */
12
+ class Ai1ec_Ics_Import_Export_Engine
13
+ extends Ai1ec_Base
14
+ implements Ai1ec_Import_Export_Engine {
15
+
16
+ /**
17
+ * @var Ai1ec_Taxonomy
18
+ */
19
+ protected $_taxonomy_model = null;
20
+
21
+ /**
22
+ * Recurrence rule class. Contains filter method.
23
+ *
24
+ * @var Ai1ec_Recurrence_Rule
25
+ */
26
+ protected $_rule_filter = null;
27
+
28
+ /* (non-PHPdoc)
29
+ * @see Ai1ec_Import_Export_Engine::import()
30
+ */
31
+ public function import( array $arguments ) {
32
+ $cal = $this->_registry->get( 'vcalendar' );
33
+ if ( $cal->parse( $arguments['source'] ) ) {
34
+ try {
35
+ $result = $this->add_vcalendar_events_to_db(
36
+ $cal,
37
+ $arguments
38
+ );
39
+ } catch ( Ai1ec_Parse_Exception $exception ) {
40
+ throw new Ai1ec_Parse_Exception(
41
+ 'Processing "' . $arguments['source'] .
42
+ '" triggered error: ' . $exception->getMessage()
43
+ );
44
+ }
45
+ return $result;
46
+ }
47
+ throw new Ai1ec_Parse_Exception( 'The passed string is not a valid ics feed' );
48
+ }
49
+
50
+ /* (non-PHPdoc)
51
+ * @see Ai1ec_Import_Export_Engine::export()
52
+ */
53
+ public function export( array $arguments, array $params = array() ) {
54
+ $c = new vcalendar();
55
+ $c->setProperty( 'calscale', 'GREGORIAN' );
56
+ $c->setProperty( 'method', 'PUBLISH' );
57
+ // if no post id are specified do not export those properties
58
+ // as they would create a new calendar in outlook.
59
+ // a user reported this in AIOEC-982 and said this would fix it
60
+ if( true === $arguments['do_not_export_as_calendar'] ) {
61
+ $c->setProperty( 'X-WR-CALNAME', get_bloginfo( 'name' ) );
62
+ $c->setProperty( 'X-WR-CALDESC', get_bloginfo( 'description' ) );
63
+ }
64
+ $c->setProperty( 'X-FROM-URL', home_url() );
65
+ // Timezone setup
66
+ $tz = $this->_registry->get( 'date.timezone' )->get_default_timezone();
67
+ if ( $tz ) {
68
+ $c->setProperty( 'X-WR-TIMEZONE', $tz );
69
+ $tz_xprops = array( 'X-LIC-LOCATION' => $tz );
70
+ iCalUtilityFunctions::createTimezone( $c, $tz, $tz_xprops );
71
+ }
72
+
73
+ $this->_taxonomy_model = $this->_registry->get( 'model.taxonomy' );
74
+ $post_ids = array();
75
+ foreach ( $arguments['events'] as $event ) {
76
+ $post_ids[] = $event->get( 'post_id' );
77
+ }
78
+ $this->_taxonomy_model->prepare_meta_for_ics( $post_ids );
79
+ $this->_registry->get( 'controller.content-filter' )
80
+ ->clear_the_content_filters();
81
+ foreach ( $arguments['events'] as $event ) {
82
+ $c = $this->_insert_event_in_calendar(
83
+ $event,
84
+ $c,
85
+ true,
86
+ $params
87
+ );
88
+ }
89
+ $this->_registry->get( 'controller.content-filter' )
90
+ ->restore_the_content_filters();
91
+ $str = ltrim( $c->createCalendar() );
92
+ return $str;
93
+ }
94
+
95
+ /**
96
+ * Check if date-time specification has no (empty) time component.
97
+ *
98
+ * @param array $datetime Datetime array returned by iCalcreator.
99
+ *
100
+ * @return bool Timelessness.
101
+ */
102
+ protected function _is_timeless( array $datetime ) {
103
+ $timeless = true;
104
+ foreach ( array( 'hour', 'min', 'sec' ) as $field ) {
105
+ $timeless &= (
106
+ isset( $datetime[$field] ) &&
107
+ 0 != $datetime[$field]
108
+ )
109
+ ? false
110
+ : true;
111
+ }
112
+ return $timeless;
113
+ }
114
+
115
+ /**
116
+ * Process vcalendar instance - add events to database.
117
+ *
118
+ * @param vcalendar $v Calendar to retrieve data from.
119
+ * @param array $args Arbitrary arguments map.
120
+ *
121
+ * @throws Ai1ec_Parse_Exception
122
+ *
123
+ * @internal param stdClass $feed Instance of feed (see Ai1ecIcs plugin).
124
+ * @internal param string $comment_status WP comment status: 'open' or 'closed'.
125
+ * @internal param int $do_show_map Map display status (DB boolean: 0 or 1).
126
+ *
127
+ * @return int Count of events added to database.
128
+ */
129
+ public function add_vcalendar_events_to_db(
130
+ vcalendar $v,
131
+ array $args
132
+ ) {
133
+ $forced_timezone = null;
134
+ $feed = isset( $args['feed'] ) ? $args['feed'] : null;
135
+ $comment_status = isset( $args['comment_status'] ) ? $args['comment_status'] : 'open';
136
+ $do_show_map = isset( $args['do_show_map'] ) ? $args['do_show_map'] : 0;
137
+ $count = 0;
138
+ $events_in_db = isset( $args['events_in_db'] ) ? $args['events_in_db'] : 0;
139
+ $v->sort();
140
+ // Reverse the sort order, so that RECURRENCE-IDs are listed before the
141
+ // defining recurrence events, and therefore take precedence during
142
+ // caching.
143
+ $v->components = array_reverse( $v->components );
144
+
145
+ // TODO: select only VEVENT components that occur after, say, 1 month ago.
146
+ // Maybe use $v->selectComponents(), which takes into account recurrence
147
+
148
+ // Fetch default timezone in case individual properties don't define it
149
+ $tz = $v->getComponent( 'vtimezone' );
150
+ $local_timezone = $this->_registry->get( 'date.timezone' )->get_default_timezone();
151
+ $timezone = $local_timezone;
152
+ if ( ! empty( $tz ) ) {
153
+ $timezone = $tz->getProperty( 'TZID' );
154
+ }
155
+
156
+ $feed_name = $v->getProperty( 'X-WR-CALNAME' );
157
+ $x_wr_timezone = $v->getProperty( 'X-WR-TIMEZONE' );
158
+ if (
159
+ isset( $x_wr_timezone[1] ) &&
160
+ is_array( $x_wr_timezone )
161
+ ) {
162
+ $forced_timezone = (string)$x_wr_timezone[1];
163
+ $timezone = $forced_timezone;
164
+ }
165
+
166
+ $messages = array();
167
+ if ( empty( $forced_timezone ) ) {
168
+ $forced_timezone = $local_timezone;
169
+ }
170
+ $current_timestamp = $this->_registry->get( 'date.time' )->format_to_gmt();
171
+ // initialize empty custom exclusions structure
172
+ $exclusions = array();
173
+ // go over each event
174
+ while ( $e = $v->getComponent( 'vevent' ) ) {
175
+
176
+ // Event data array.
177
+ $data = array();
178
+ // =====================
179
+ // = Start & end times =
180
+ // =====================
181
+ $start = $e->getProperty( 'dtstart', 1, true );
182
+ $end = $e->getProperty( 'dtend', 1, true );
183
+ // For cases where a "VEVENT" calendar component
184
+ // specifies a "DTSTART" property with a DATE value type but none
185
+ // of "DTEND" nor "DURATION" property, the event duration is taken to
186
+ // be one day. For cases where a "VEVENT" calendar component
187
+ // specifies a "DTSTART" property with a DATE-TIME value type but no
188
+ // "DTEND" property, the event ends on the same calendar date and
189
+ // time of day specified by the "DTSTART" property.
190
+ if ( empty( $end ) ) {
191
+ // #1 if duration is present, assign it to end time
192
+ $end = $e->getProperty( 'duration', 1, true, true );
193
+ if ( empty( $end ) ) {
194
+ // #2 if only DATE value is set for start, set duration to 1 day
195
+ if ( ! isset( $start['value']['hour'] ) ) {
196
+ $end = array(
197
+ 'value' => array(
198
+ 'year' => $start['value']['year'],
199
+ 'month' => $start['value']['month'],
200
+ 'day' => $start['value']['day'] + 1,
201
+ 'hour' => 0,
202
+ 'min' => 0,
203
+ 'sec' => 0,
204
+ ),
205
+ );
206
+ if ( isset( $start['value']['tz'] ) ) {
207
+ $end['value']['tz'] = $start['value']['tz'];
208
+ }
209
+ } else {
210
+ // #3 set end date to start time
211
+ $end = $start;
212
+ }
213
+ }
214
+ }
215
+ $categories = $e->getProperty( "CATEGORIES", false, true );
216
+ $imported_cat = array( Ai1ec_Event_Taxonomy::CATEGORIES => array() );
217
+ // If the user chose to preserve taxonomies during import, add categories.
218
+ if( $categories && $feed->keep_tags_categories ) {
219
+ $imported_cat = $this->add_categories_and_tags(
220
+ $categories['value'],
221
+ $imported_cat,
222
+ false,
223
+ true
224
+ );
225
+ }
226
+ $feed_categories = $feed->feed_category;
227
+ if( ! empty( $feed_categories ) ) {
228
+ $imported_cat = $this->add_categories_and_tags(
229
+ $feed_categories,
230
+ $imported_cat,
231
+ false,
232
+ false
233
+ );
234
+ }
235
+ $tags = $e->getProperty( "X-TAGS", false, true );
236
+ $imported_tags = array( Ai1ec_Event_Taxonomy::TAGS => array() );
237
+ // If the user chose to preserve taxonomies during import, add tags.
238
+ if( $tags && $feed->keep_tags_categories ) {
239
+ $imported_tags = $this->add_categories_and_tags(
240
+ $tags[1]['value'],
241
+ $imported_tags,
242
+ true,
243
+ true
244
+ );
245
+ }
246
+ $feed_tags = $feed->feed_tags;
247
+ if( ! empty( $feed_tags ) ) {
248
+ $imported_tags = $this->add_categories_and_tags(
249
+ $feed_tags,
250
+ $imported_tags,
251
+ true,
252
+ true
253
+ );
254
+ }
255
+ // Event is all-day if no time components are defined
256
+ $allday = $this->_is_timeless( $start['value'] ) &&
257
+ $this->_is_timeless( $end['value'] );
258
+ // Also check the proprietary MS all-day field.
259
+ $ms_allday = $e->getProperty( 'X-MICROSOFT-CDO-ALLDAYEVENT' );
260
+ if ( ! empty( $ms_allday ) && $ms_allday[1] == 'TRUE' ) {
261
+ $allday = true;
262
+ }
263
+ $event_timezone = $timezone;
264
+ if ( $allday ) {
265
+ $event_timezone = $local_timezone;
266
+ }
267
+ $start = $this->_time_array_to_datetime(
268
+ $start,
269
+ $event_timezone,
270
+ $feed->import_timezone ? $forced_timezone : null
271
+ );
272
+ $end = $this->_time_array_to_datetime(
273
+ $end,
274
+ $event_timezone,
275
+ $feed->import_timezone ? $forced_timezone : null
276
+ );
277
+ if ( false === $start || false === $end ) {
278
+ throw new Ai1ec_Parse_Exception(
279
+ 'Failed to parse one or more dates given timezone "' .
280
+ var_export( $event_timezone, true ) . '"'
281
+ );
282
+ continue;
283
+ }
284
+
285
+ // If all-day, and start and end times are equal, then this event has
286
+ // invalid end time (happens sometimes with poorly implemented iCalendar
287
+ // exports, such as in The Event Calendar), so set end time to 1 day
288
+ // after start time.
289
+ if ( $allday && $start->format() === $end->format() ) {
290
+ $end->adjust_day( +1 );
291
+ }
292
+
293
+ $data += compact( 'start', 'end', 'allday' );
294
+
295
+ // =======================================
296
+ // = Recurrence rules & recurrence dates =
297
+ // =======================================
298
+ if ( $rrule = $e->createRrule() ) {
299
+ $rrule = explode( ':', $rrule );
300
+ $rrule = trim( end( $rrule ) );
301
+ }
302
+
303
+ if ( $exrule = $e->createExrule() ) {
304
+ $exrule = explode( ':', $exrule );
305
+ $exrule = trim( end( $exrule ) );
306
+ }
307
+
308
+ if ( $rdate = $e->createRdate() ) {
309
+ $rdate = explode( ':', $rdate );
310
+ $rdate = trim( end( $rdate ) );
311
+ }
312
+
313
+ // ===================
314
+ // = Exception dates =
315
+ // ===================
316
+ $exdate = '';
317
+ if ( $exdates = $e->createExdate() ){
318
+ // We may have two formats:
319
+ // one exdate with many dates ot more EXDATE rules
320
+ $exdates = explode( 'EXDATE', $exdates );
321
+ $def_timezone = $this->_get_import_timezone( $event_timezone );
322
+ foreach ( $exdates as $exd ) {
323
+ if ( empty( $exd ) ) {
324
+ continue;
325
+ }
326
+ $exploded = explode( ':', $exd );
327
+ $excpt_timezone = $def_timezone;
328
+ $excpt_date = null;
329
+ foreach ( $exploded as $particle ) {
330
+ if ( ';TZID=' === substr( $particle, 0, 6 ) ) {
331
+ $excpt_timezone = substr( $particle, 6 );
332
+ } else {
333
+ $excpt_date = trim( $particle );
334
+ }
335
+ }
336
+ $exploded = explode( ',', $excpt_date );
337
+ foreach ( $exploded as $particle ) {
338
+ // Google sends YYYYMMDD for all-day excluded events
339
+ if (
340
+ $allday &&
341
+ 8 === strlen( $particle )
342
+ ) {
343
+ $particle .= 'T000000Z';
344
+ $excpt_timezone = 'UTC';
345
+ }
346
+ $ex_dt = $this->_registry->get(
347
+ 'date.time',
348
+ $particle,
349
+ $excpt_timezone
350
+ );
351
+ if ( $ex_dt ) {
352
+ if ( isset( $exdate{0} ) ) {
353
+ $exdate .= ',';
354
+ }
355
+ $exdate .= $ex_dt->format( 'Ymd\THis', $excpt_timezone );
356
+ }
357
+ }
358
+ }
359
+ }
360
+ // Add custom exclusions if there any
361
+ $recurrence_id = $e->getProperty( 'recurrence-id' );
362
+ if (
363
+ false === $recurrence_id &&
364
+ ! empty( $exclusions[$e->getProperty( 'uid' )] )
365
+ ) {
366
+ if ( isset( $exdate{0} ) ) {
367
+ $exdate .= ',';
368
+ }
369
+ $exdate .= implode( ',', $exclusions[$e->getProperty( 'uid' )] );
370
+ }
371
+ // ========================
372
+ // = Latitude & longitude =
373
+ // ========================
374
+ $latitude = $longitude = NULL;
375
+ $geo_tag = $e->getProperty( 'geo' );
376
+ if ( is_array( $geo_tag ) ) {
377
+ if (
378
+ isset( $geo_tag['latitude'] ) &&
379
+ isset( $geo_tag['longitude'] )
380
+ ) {
381
+ $latitude = (float)$geo_tag['latitude'];
382
+ $longitude = (float)$geo_tag['longitude'];
383
+ }
384
+ } else if ( ! empty( $geo_tag ) && false !== strpos( $geo_tag, ';' ) ) {
385
+ list( $latitude, $longitude ) = explode( ';', $geo_tag, 2 );
386
+ $latitude = (float)$latitude;
387
+ $longitude = (float)$longitude;
388
+ }
389
+ unset( $geo_tag );
390
+ if ( NULL !== $latitude ) {
391
+ $data += compact( 'latitude', 'longitude' );
392
+ // Check the input coordinates checkbox, otherwise lat/long data
393
+ // is not present on the edit event page
394
+ $data['show_coordinates'] = 1;
395
+ }
396
+ // ===================
397
+ // = Venue & address =
398
+ // ===================
399
+ $address = $venue = '';
400
+ $location = $e->getProperty( 'location' );
401
+ $matches = array();
402
+ // This regexp matches a venue / address in the format
403
+ // "venue @ address" or "venue - address".
404
+ preg_match( '/\s*(.*\S)\s+[\-@]\s+(.*)\s*/', $location, $matches );
405
+ // if there is no match, it's not a combined venue + address
406
+ if ( empty( $matches ) ) {
407
+ // temporary fix for Mac ICS import. Se AIOEC-2187
408
+ // and https://github.com/iCalcreator/iCalcreator/issues/13
409
+ $location = str_replace( '\n', "\n", $location );
410
+ // if there is a comma, probably it's an address
411
+ if ( false === strpos( $location, ',' ) ) {
412
+ $venue = $location;
413
+ } else {
414
+ $address = $location;
415
+ }
416
+ } else {
417
+ $venue = isset( $matches[1] ) ? $matches[1] : '';
418
+ $address = isset( $matches[2] ) ? $matches[2] : '';
419
+ }
420
+
421
+ // =====================================================
422
+ // = Set show map status based on presence of location =
423
+ // =====================================================
424
+ $event_do_show_map = $do_show_map;
425
+ if (
426
+ 1 === $do_show_map &&
427
+ NULL === $latitude &&
428
+ empty( $address )
429
+ ) {
430
+ $event_do_show_map = 0;
431
+ }
432
+
433
+ // ==================
434
+ // = Cost & tickets =
435
+ // ==================
436
+ $cost = $e->getProperty( 'X-COST' );
437
+ $cost = $cost ? $cost[1] : '';
438
+ $ticket_url = $e->getProperty( 'X-TICKETS-URL' );
439
+ $ticket_url = $ticket_url ? $ticket_url[1] : '';
440
+
441
+ // ===============================
442
+ // = Contact name, phone, e-mail =
443
+ // ===============================
444
+ $organizer = $e->getProperty( 'organizer' );
445
+ if (
446
+ 'MAILTO:' === substr( $organizer, 0, 7 ) &&
447
+ false === strpos( $organizer, '@' )
448
+ ) {
449
+ $organizer = substr( $organizer, 7 );
450
+ }
451
+ $contact = $e->getProperty( 'contact' );
452
+ $elements = explode( ';', $contact, 4 );
453
+
454
+ foreach ( $elements as $el ) {
455
+ $el = trim( $el );
456
+ // Detect e-mail address.
457
+ if ( false !== strpos( $el, '@' ) ) {
458
+ $data['contact_email'] = $el;
459
+ }
460
+ // Detect URL.
461
+ elseif ( false !== strpos( $el, '://' ) ) {
462
+ $data['contact_url'] = $el;
463
+ }
464
+ // Detect phone number.
465
+ elseif ( preg_match( '/\d/', $el ) ) {
466
+ $data['contact_phone'] = $el;
467
+ }
468
+ // Default to name.
469
+ else {
470
+ $data['contact_name'] = $el;
471
+ }
472
+ }
473
+ if ( ! isset( $data['contact_name'] ) || ! $data['contact_name'] ) {
474
+ // If no contact name, default to organizer property.
475
+ $data['contact_name'] = $organizer;
476
+ }
477
+
478
+ $description = stripslashes(
479
+ str_replace(
480
+ '\n',
481
+ "\n",
482
+ $e->getProperty( 'description' )
483
+ ));
484
+
485
+ $description = $this->_remove_ticket_url( $description );
486
+
487
+ // Store yet-unsaved values to the $data array.
488
+ $data += array(
489
+ 'recurrence_rules' => $rrule,
490
+ 'exception_rules' => $exrule,
491
+ 'recurrence_dates' => $rdate,
492
+ 'exception_dates' => $exdate,
493
+ 'venue' => $venue,
494
+ 'address' => $address,
495
+ 'cost' => $cost,
496
+ 'ticket_url' => $ticket_url,
497
+ 'show_map' => $event_do_show_map,
498
+ 'ical_feed_url' => $feed->feed_url,
499
+ 'ical_source_url' => $e->getProperty( 'url' ),
500
+ 'ical_organizer' => $organizer,
501
+ 'ical_contact' => $contact,
502
+ 'ical_uid' => $this->_get_ical_uid( $e ),
503
+ 'categories' => array_keys( $imported_cat[Ai1ec_Event_Taxonomy::CATEGORIES] ),
504
+ 'tags' => array_keys( $imported_tags[Ai1ec_Event_Taxonomy::TAGS] ),
505
+ 'feed' => $feed,
506
+ 'post' => array(
507
+ 'post_status' => 'publish',
508
+ 'comment_status' => $comment_status,
509
+ 'post_type' => AI1EC_POST_TYPE,
510
+ 'post_author' => 1,
511
+ 'post_title' => $e->getProperty( 'summary' ),
512
+ 'post_content' => $description
513
+ )
514
+ );
515
+ // register any custom exclusions for given event
516
+ $exclusions = $this->_add_recurring_events_exclusions(
517
+ $e,
518
+ $exclusions,
519
+ $start
520
+ );
521
+
522
+ // Create event object.
523
+ $data = apply_filters(
524
+ 'ai1ec_pre_init_event_from_feed',
525
+ $data,
526
+ $e,
527
+ $feed
528
+ );
529
+
530
+ $event = $this->_registry->get( 'model.event', $data );
531
+
532
+ // Instant Event
533
+ $is_instant = $e->getProperty( 'X-INSTANT-EVENT' );
534
+ if ( $is_instant ) {
535
+ $event->set_no_end_time();
536
+ }
537
+
538
+ $recurrence = $event->get( 'recurrence_rules' );
539
+ $search = $this->_registry->get( 'model.search' );
540
+ // first let's check by UID
541
+ $matching_event_id = $search
542
+ ->get_matching_event_by_uid_and_url(
543
+ $event->get( 'ical_uid' ),
544
+ $event->get( 'ical_feed_url' )
545
+ );
546
+ // if no result, perform the legacy check.
547
+ if ( null === $matching_event_id ) {
548
+ $matching_event_id = $search
549
+ ->get_matching_event_id(
550
+ $event->get( 'ical_uid' ),
551
+ $event->get( 'ical_feed_url' ),
552
+ $event->get( 'start' ),
553
+ ! empty( $recurrence )
554
+ );
555
+ }
556
+ if ( null === $matching_event_id ) {
557
+
558
+ // =================================================
559
+ // = Event was not found, so store it and the post =
560
+ // =================================================
561
+ $event->save();
562
+ $count++;
563
+ } else {
564
+ // ======================================================
565
+ // = Event was found, let's store the new event details =
566
+ // ======================================================
567
+
568
+ // Update the post
569
+ $post = get_post( $matching_event_id );
570
+
571
+ if ( null !== $post ) {
572
+ $post->post_title = $event->get( 'post' )->post_title;
573
+ $post->post_content = $event->get( 'post' )->post_content;
574
+ wp_update_post( $post );
575
+
576
+ // Update the event
577
+ $event->set( 'post_id', $matching_event_id );
578
+ $event->set( 'post', $post );
579
+ $event->save( true );
580
+ $count++;
581
+ }
582
+ }
583
+ do_action( 'ai1ec_ics_event_saved', $event, $feed );
584
+
585
+ // import not standard taxonomies.
586
+ unset( $imported_cat[Ai1ec_Event_Taxonomy::CATEGORIES] );
587
+ foreach ( $imported_cat as $tax_name => $ids ) {
588
+ wp_set_post_terms( $event->get( 'post_id' ), array_keys( $ids ), $tax_name );
589
+ }
590
+
591
+ unset( $imported_tags[Ai1ec_Event_Taxonomy::TAGS] );
592
+ foreach ( $imported_tags as $tax_name => $ids ) {
593
+ wp_set_post_terms( $event->get( 'post_id' ), array_keys( $ids ), $tax_name );
594
+ }
595
+
596
+ unset( $events_in_db[$event->get( 'post_id' )] );
597
+ } //close while iteration
598
+
599
+ return array(
600
+ 'count' => $count,
601
+ 'events_to_delete' => $events_in_db,
602
+ 'messages' => $messages,
603
+ 'name' => $feed_name,
604
+ );
605
+ }
606
+
607
+ /**
608
+ * Parse importable feed timezone to sensible value.
609
+ *
610
+ * @param string $def_timezone Timezone value from feed.
611
+ *
612
+ * @return string Valid timezone name to use.
613
+ */
614
+ protected function _get_import_timezone( $def_timezone ) {
615
+ $parser = $this->_registry->get( 'date.timezone' );
616
+ $timezone = $parser->get_name( $def_timezone );
617
+ if ( false === $timezone ) {
618
+ return 'sys.default';
619
+ }
620
+ return $timezone;
621
+ }
622
+
623
+ /**
624
+ * time_array_to_timestamp function
625
+ *
626
+ * Converts time array to time string.
627
+ * Passed array: Array( 'year', 'month', 'day', ['hour', 'min', 'sec', ['tz']] )
628
+ * Return int: UNIX timestamp in GMT
629
+ *
630
+ * @param array $time iCalcreator time property array
631
+ * (*full* format expected)
632
+ * @param string $def_timezone Default time zone in case not defined
633
+ * in $time
634
+ * @param null|string $forced_timezone Timezone to use instead of UTC.
635
+ *
636
+ * @return int UNIX timestamp
637
+ **/
638
+ protected function _time_array_to_datetime(
639
+ array $time,
640
+ $def_timezone,
641
+ $forced_timezone = null
642
+ ) {
643
+ $timezone = '';
644
+ if ( isset( $time['params']['TZID'] ) ) {
645
+ $timezone = $time['params']['TZID'];
646
+ } elseif (
647
+ isset( $time['value']['tz'] ) &&
648
+ 'Z' === $time['value']['tz']
649
+ ) {
650
+ $timezone = 'UTC';
651
+ }
652
+ if ( empty( $timezone ) ) {
653
+ $timezone = $def_timezone;
654
+ }
655
+
656
+ $date_time = $this->_registry->get( 'date.time' );
657
+
658
+ if ( ! empty( $timezone ) ) {
659
+ $parser = $this->_registry->get( 'date.timezone' );
660
+ $timezone = $parser->get_name( $timezone );
661
+ if ( false === $timezone ) {
662
+ return false;
663
+ }
664
+ $date_time->set_timezone( $timezone );
665
+ }
666
+
667
+ if ( ! isset( $time['value']['hour'] ) ) {
668
+ $time['value']['hour'] = $time['value']['min'] =
669
+ $time['value']['sec'] = 0;
670
+ }
671
+
672
+ $date_time->set_date(
673
+ $time['value']['year'],
674
+ $time['value']['month'],
675
+ $time['value']['day']
676
+ )->set_time(
677
+ $time['value']['hour'],
678
+ $time['value']['min'],
679
+ $time['value']['sec']
680
+ );
681
+ if (
682
+ 'UTC' === $timezone &&
683
+ null !== $forced_timezone
684
+ ) {
685
+ $date_time->set_timezone( $forced_timezone );
686
+ }
687
+ return $date_time;
688
+ }
689
+
690
+ /**
691
+ * Convert an event from a feed into a new Ai1ec_Event object and add it to
692
+ * the calendar.
693
+ *
694
+ * @param Ai1ec_Event $event Event object.
695
+ * @param vcalendar $calendar Calendar object.
696
+ * @param bool $export States whether events are created for export.
697
+ * @param array $params Additional parameters for export.
698
+ *
699
+ * @return void
700
+ */
701
+ protected function _insert_event_in_calendar(
702
+ Ai1ec_Event $event,
703
+ vcalendar $calendar,
704
+ $export = false,
705
+ array $params = array()
706
+ ) {
707
+
708
+ $tz = $this->_registry->get( 'date.timezone' )
709
+ ->get_default_timezone();
710
+
711
+ $e = & $calendar->newComponent( 'vevent' );
712
+ $uid = '';
713
+ if ( $event->get( 'ical_uid' ) ) {
714
+ $uid = addcslashes( $event->get( 'ical_uid' ), "\\;,\n" );
715
+ } else {
716
+ $uid = $event->get_uid();
717
+ $event->set( 'ical_uid', $uid );
718
+ $event->save( true );
719
+ }
720
+ $e->setProperty( 'uid', $this->_sanitize_value( $uid ) );
721
+ $e->setProperty(
722
+ 'url',
723
+ get_permalink( $event->get( 'post_id' ) )
724
+ );
725
+
726
+ // =========================
727
+ // = Summary & description =
728
+ // =========================
729
+ $e->setProperty(
730
+ 'summary',
731
+ $this->_sanitize_value(
732
+ html_entity_decode(
733
+ apply_filters( 'the_title', $event->get( 'post' )->post_title ),
734
+ ENT_QUOTES,
735
+ 'UTF-8'
736
+ )
737
+ )
738
+ );
739
+
740
+ $content = apply_filters(
741
+ 'ai1ec_the_content',
742
+ apply_filters(
743
+ 'the_content',
744
+ $event->get( 'post' )->post_content
745
+ )
746
+ );
747
+
748
+ //Adding Ticket URL to the Description field
749
+ if ( $event->get( 'ticket_url' ) ) {
750
+ $url = $event->get( 'ticket_url' );
751
+ $content = $this->_remove_ticket_url( $content );
752
+ $content = $content
753
+ . '<p>' . __( 'Tickets: ', AI1EC_PLUGIN_NAME )
754
+ . '<a class="ai1ec-ticket-url-exported" href="'
755
+ . $url . '">' . $url
756
+ . '</a>.</p>';
757
+ }
758
+
759
+ $content = str_replace(']]>', ']]&gt;', $content);
760
+ $content = html_entity_decode( $content, ENT_QUOTES, 'UTF-8' );
761
+
762
+ // Prepend featured image if available.
763
+ $size = null;
764
+ $avatar = $this->_registry->get( 'view.event.avatar' );
765
+ $matches = $avatar->get_image_from_content( $content );
766
+ // if no img is already present - add thumbnail
767
+ if ( empty( $matches ) ) {
768
+ if ( $img_url = $avatar->get_post_thumbnail_url( $event, $size ) ) {
769
+ $content = '<div class="ai1ec-event-avatar alignleft timely"><img src="' .
770
+ esc_attr( $img_url ) . '" width="' . $size[0] . '" height="' .
771
+ $size[1] . '" /></div>' . $content;
772
+ }
773
+ }
774
+
775
+ if ( isset( $params['no_html'] ) && $params['no_html'] ) {
776
+ $e->setProperty(
777
+ 'description',
778
+ $this->_sanitize_value(
779
+ strip_tags( strip_shortcodes( $content ) )
780
+ )
781
+ );
782
+ if ( ! empty( $content ) ) {
783
+ $html_content = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">\n' .
784
+ '<HTML>\n<HEAD>\n<TITLE></TITLE>\n</HEAD>\n<BODY>' . $content .
785
+ '</BODY></HTML>';
786
+ $e->setProperty(
787
+ 'X-ALT-DESC',
788
+ $this->_sanitize_value( $html_content ),
789
+ array(
790
+ 'FMTTYPE' => 'text/html',
791
+ )
792
+ );
793
+ unset( $html_content );
794
+ }
795
+ } else {
796
+ $e->setProperty( 'description', $this->_sanitize_value( $content ) );
797
+ }
798
+ $revision = (int)current(
799
+ array_keys(
800
+ wp_get_post_revisions( $event->get( 'post_id' ) )
801
+ )
802
+ );
803
+ $e->setProperty( 'sequence', $revision );
804
+
805
+ // =====================
806
+ // = Start & end times =
807
+ // =====================
808
+ $dtstartstring = '';
809
+ $dtstart = $dtend = array();
810
+ if ( $event->is_allday() ) {
811
+ $dtstart['VALUE'] = $dtend['VALUE'] = 'DATE';
812
+ // For exporting all day events, don't set a timezone
813
+ if ( $tz && ! $export ) {
814
+ $dtstart['TZID'] = $dtend['TZID'] = $tz;
815
+ }
816
+
817
+ // For exportin' all day events, only set the date not the time
818
+ if ( $export ) {
819
+ $e->setProperty(
820
+ 'dtstart',
821
+ $this->_sanitize_value(
822
+ $event->get( 'start' )->format( 'Ymd' )
823
+ ),
824
+ $dtstart
825
+ );
826
+ $e->setProperty(
827
+ 'dtend',
828
+ $this->_sanitize_value(
829
+ $event->get( 'end' )->format( 'Ymd' )
830
+ ),
831
+ $dtend
832
+ );
833
+ } else {
834
+ $e->setProperty(
835
+ 'dtstart',
836
+ $this->_sanitize_value(
837
+ $event->get( 'start' )->format( "Ymd\T" )
838
+ ),
839
+ $dtstart
840
+ );
841
+ $e->setProperty(
842
+ 'dtend',
843
+ $this->_sanitize_value(
844
+ $event->get( 'end' )->format( "Ymd\T" )
845
+ ),
846
+ $dtend
847
+ );
848
+ }
849
+ } else {
850
+ if ( $tz ) {
851
+ $dtstart['TZID'] = $dtend['TZID'] = $tz;
852
+ }
853
+ // This is used later.
854
+ $dtstartstring = $event->get( 'start' )->format( "Ymd\THis" );
855
+ $e->setProperty(
856
+ 'dtstart',
857
+ $this->_sanitize_value( $dtstartstring ),
858
+ $dtstart
859
+ );
860
+
861
+ if ( false === (bool)$event->get( 'instant_event' ) ) {
862
+ $e->setProperty(
863
+ 'dtend',
864
+ $this->_sanitize_value(
865
+ $event->get( 'end' )->format( "Ymd\THis" )
866
+ ),
867
+ $dtend
868
+ );
869
+ }
870
+ }
871
+
872
+ // ========================
873
+ // = Latitude & longitude =
874
+ // ========================
875
+ if (
876
+ floatval( $event->get( 'latitude' ) ) ||
877
+ floatval( $event->get( 'longitude' ) )
878
+ ) {
879
+ $e->setProperty(
880
+ 'geo',
881
+ $event->get( 'latitude' ),
882
+ $event->get( 'longitude' )
883
+ );
884
+ }
885
+
886
+ // ===================
887
+ // = Venue & address =
888
+ // ===================
889
+ if ( $event->get( 'venue' ) || $event->get( 'address' ) ) {
890
+ $location = array(
891
+ $event->get( 'venue' ),
892
+ $event->get( 'address' )
893
+ );
894
+ $location = array_filter( $location );
895
+ $location = implode( ' @ ', $location );
896
+ $e->setProperty( 'location', $this->_sanitize_value( $location ) );
897
+ }
898
+
899
+ $categories = array();
900
+ $language = get_bloginfo( 'language' );
901
+
902
+ foreach (
903
+ $this->_taxonomy_model->get_post_categories(
904
+ $event->get( 'post_id' )
905
+ )
906
+ as $cat
907
+ ) {
908
+ $categories[] = $cat->name;
909
+ }
910
+ $e->setProperty(
911
+ 'categories',
912
+ implode( ',', $categories ),
913
+ array( "LANGUAGE" => $language )
914
+ );
915
+ $tags = array();
916
+ foreach (
917
+ $this->_taxonomy_model->get_post_tags( $event->get( 'post_id' ) )
918
+ as $tag
919
+ ) {
920
+ $tags[] = $tag->name;
921
+ }
922
+ if( ! empty( $tags) ) {
923
+ $e->setProperty(
924
+ 'X-TAGS',
925
+ implode( ',', $tags ),
926
+ array( "LANGUAGE" => $language )
927
+ );
928
+ }
929
+ // ==================
930
+ // = Cost & tickets =
931
+ // ==================
932
+ if ( $event->get( 'cost' ) ) {
933
+ $e->setProperty(
934
+ 'X-COST',
935
+ $this->_sanitize_value( $event->get( 'cost' ) )
936
+ );
937
+ }
938
+ if ( $event->get( 'ticket_url' ) ) {
939
+ $e->setProperty(
940
+ 'X-TICKETS-URL',
941
+ $this->_sanitize_value(
942
+ $event->get( 'ticket_url' )
943
+ )
944
+ );
945
+ }
946
+ // =================
947
+ // = Instant Event =
948
+ // =================
949
+ if ( $event->is_instant() ) {
950
+ $e->setProperty(
951
+ 'X-INSTANT-EVENT',
952
+ $this->_sanitize_value( $event->is_instant() )
953
+ );
954
+ }
955
+
956
+ // ====================================
957
+ // = Contact name, phone, e-mail, URL =
958
+ // ====================================
959
+ $contact = array(
960
+ $event->get( 'contact_name' ),
961
+ $event->get( 'contact_phone' ),
962
+ $event->get( 'contact_email' ),
963
+ $event->get( 'contact_url' ),
964
+ );
965
+ $contact = array_filter( $contact );
966
+ $contact = implode( '; ', $contact );
967
+ $e->setProperty( 'contact', $this->_sanitize_value( $contact ) );
968
+
969
+ // ====================
970
+ // = Recurrence rules =
971
+ // ====================
972
+ $rrule = array();
973
+ $recurrence = $event->get( 'recurrence_rules' );
974
+ $recurrence = $this->_filter_rule( $recurrence );
975
+ if ( ! empty( $recurrence ) ) {
976
+ $rules = array();
977
+ foreach ( explode( ';', $recurrence ) as $v) {
978
+ if ( strpos( $v, '=' ) === false ) {
979
+ continue;
980
+ }
981
+
982
+ list( $k, $v ) = explode( '=', $v );
983
+ $k = strtoupper( $k );
984
+ // If $v is a comma-separated list, turn it into array for iCalcreator
985
+ switch ( $k ) {
986
+ case 'BYSECOND':
987
+ case 'BYMINUTE':
988
+ case 'BYHOUR':
989
+ case 'BYDAY':
990
+ case 'BYMONTHDAY':
991
+ case 'BYYEARDAY':
992
+ case 'BYWEEKNO':
993
+ case 'BYMONTH':
994
+ case 'BYSETPOS':
995
+ $exploded = explode( ',', $v );
996
+ break;
997
+ default:
998
+ $exploded = $v;
999
+ break;
1000
+ }
1001
+ // iCalcreator requires a more complex array structure for BYDAY...
1002
+ if ( $k == 'BYDAY' ) {
1003
+ $v = array();
1004
+ foreach ( $exploded as $day ) {
1005
+ $v[] = array( 'DAY' => $day );
1006
+ }
1007
+ } else {
1008
+ $v = $exploded;
1009
+ }
1010
+ $rrule[ $k ] = $v;
1011
+ }
1012
+ }
1013
+
1014
+ // ===================
1015
+ // = Exception rules =
1016
+ // ===================
1017
+ $exceptions = $event->get( 'exception_rules' );
1018
+ $exceptions = $this->_filter_rule( $exceptions );
1019
+ $exrule = array();
1020
+ if ( ! empty( $exceptions ) ) {
1021
+ $rules = array();
1022
+
1023
+ foreach ( explode( ';', $exceptions ) as $v) {
1024
+ if ( strpos( $v, '=' ) === false ) {
1025
+ continue;
1026
+ }
1027
+
1028
+ list($k, $v) = explode( '=', $v );
1029
+ $k = strtoupper( $k );
1030
+ // If $v is a comma-separated list, turn it into array for iCalcreator
1031
+ switch ( $k ) {
1032
+ case 'BYSECOND':
1033
+ case 'BYMINUTE':
1034
+ case 'BYHOUR':
1035
+ case 'BYDAY':
1036
+ case 'BYMONTHDAY':
1037
+ case 'BYYEARDAY':
1038
+ case 'BYWEEKNO':
1039
+ case 'BYMONTH':
1040
+ case 'BYSETPOS':
1041
+ $exploded = explode( ',', $v );
1042
+ break;
1043
+ default:
1044
+ $exploded = $v;
1045
+ break;
1046
+ }
1047
+ // iCalcreator requires a more complex array structure for BYDAY...
1048
+ if ( $k == 'BYDAY' ) {
1049
+ $v = array();
1050
+ foreach ( $exploded as $day ) {
1051
+ $v[] = array( 'DAY' => $day );
1052
+ }
1053
+ } else {
1054
+ $v = $exploded;
1055
+ }
1056
+ $exrule[ $k ] = $v;
1057
+ }
1058
+ }
1059
+
1060
+ // add rrule to exported calendar
1061
+ if ( ! empty( $rrule ) && ! isset( $rrule['RDATE'] ) ) {
1062
+ $e->setProperty( 'rrule', $this->_sanitize_value( $rrule ) );
1063
+ }
1064
+ // add exrule to exported calendar
1065
+ if ( ! empty( $exrule ) && ! isset( $exrule['EXDATE'] ) ) {
1066
+ $e->setProperty( 'exrule', $this->_sanitize_value( $exrule ) );
1067
+ }
1068
+
1069
+ // ===================
1070
+ // = Exception dates =
1071
+ // ===================
1072
+ // For all day events that use a date as DTSTART, date must be supplied
1073
+ // For other other events which use DATETIME, we must use that as well
1074
+ // We must also match the exact starting time
1075
+ $recurrence_dates = $event->get( 'recurrence_dates' );
1076
+ $recurrence_dates = $this->_filter_rule( $recurrence_dates );
1077
+ if ( ! empty( $recurrence_dates ) ) {
1078
+ $params = array(
1079
+ 'VALUE' => 'DATE-TIME',
1080
+ 'TZID' => $tz,
1081
+ );
1082
+ $dt_suffix = $event->get( 'start' )->format( '\THis' );
1083
+ foreach (
1084
+ explode( ',', $recurrence_dates )
1085
+ as $exdate
1086
+ ) {
1087
+ // date-time string in EXDATES is formatted as 'Ymd\THis\Z', that
1088
+ // means - in UTC timezone, thus we use `format_to_gmt` here.
1089
+ $exdate = $this->_registry->get( 'date.time', $exdate )
1090
+ ->format_to_gmt( 'Ymd' );
1091
+ $e->setProperty(
1092
+ 'rdate',
1093
+ array( $exdate . $dt_suffix ),
1094
+ $params
1095
+ );
1096
+ }
1097
+ }
1098
+ $exception_dates = $event->get( 'exception_dates' );
1099
+ $exception_dates = $this->_filter_rule( $exception_dates );
1100
+ if ( ! empty( $exception_dates ) ) {
1101
+ $params = array(
1102
+ 'VALUE' => 'DATE-TIME',
1103
+ 'TZID' => $tz,
1104
+ );
1105
+ $dt_suffix = $event->get( 'start' )->format( '\THis' );
1106
+ foreach (
1107
+ explode( ',', $exception_dates )
1108
+ as $exdate
1109
+ ) {
1110
+ // date-time string in EXDATES is formatted as 'Ymd\THis\Z', that
1111
+ // means - in UTC timezone, thus we use `format_to_gmt` here.
1112
+ $exdate = $this->_registry->get( 'date.time', $exdate )
1113
+ ->format_to_gmt( 'Ymd' );
1114
+ $e->setProperty(
1115
+ 'exdate',
1116
+ array( $exdate . $dt_suffix ),
1117
+ $params
1118
+ );
1119
+ }
1120
+ }
1121
+ return $calendar;
1122
+ }
1123
+
1124
+ /**
1125
+ * _sanitize_value method
1126
+ *
1127
+ * Convert value, so it be safe to use on ICS feed. Used before passing to
1128
+ * iCalcreator methods, for rendering.
1129
+ *
1130
+ * @param string $value Text to be sanitized
1131
+ *
1132
+ * @return string Safe value, for use in HTML
1133
+ */
1134
+ protected function _sanitize_value( $value ) {
1135
+ if ( ! is_scalar( $value ) ) {
1136
+ return $value;
1137
+ }
1138
+ $safe_eol = "\n";
1139
+ $value = strtr(
1140
+ trim( $value ),
1141
+ array(
1142
+ "\r\n" => $safe_eol,
1143
+ "\r" => $safe_eol,
1144
+ "\n" => $safe_eol,
1145
+ )
1146
+ );
1147
+ $value = addcslashes( $value, '\\' );
1148
+ return $value;
1149
+ }
1150
+
1151
+ /**
1152
+ * Takes a comma-separated list of tags or categories.
1153
+ * If they exist, reuses
1154
+ * the existing ones. If not, creates them.
1155
+ *
1156
+ * The $imported_terms array uses keys to store values rather than values to
1157
+ * speed up lookups (using isset() insted of in_array()).
1158
+ *
1159
+ * @param string $terms
1160
+ * @param array $imported_terms
1161
+ * @param boolean $is_tag
1162
+ * @param boolean $use_name
1163
+ *
1164
+ * @return array
1165
+ */
1166
+ public function add_categories_and_tags(
1167
+ $terms,
1168
+ array $imported_terms,
1169
+ $is_tag,
1170
+ $use_name
1171
+ ) {
1172
+ $taxonomy = $is_tag ? 'events_tags' : 'events_categories';
1173
+ $categories = explode( ',', $terms );
1174
+ $event_taxonomy = $this->_registry->get( 'model.event.taxonomy' );
1175
+
1176
+ foreach ( $categories as $cat_name ) {
1177
+ $cat_name = trim( $cat_name );
1178
+ if ( empty( $cat_name ) ) {
1179
+ continue;
1180
+ }
1181
+ $term = $event_taxonomy->initiate_term( $cat_name, $taxonomy, ! $use_name );
1182
+ if ( false !== $term ) {
1183
+ if ( ! isset( $imported_terms[$term['taxonomy']] ) ) {
1184
+ $imported_terms[$term['taxonomy']] = array();
1185
+ }
1186
+ $imported_terms[$term['taxonomy']][$term['term_id']] = true;
1187
+ }
1188
+ }
1189
+ return $imported_terms;
1190
+ }
1191
+
1192
+ /**
1193
+ * Returns modified ical uid for google recurring edited events.
1194
+ *
1195
+ * @param vevent $e Vevent object.
1196
+ *
1197
+ * @return string ICAL uid.
1198
+ */
1199
+ protected function _get_ical_uid( $e ) {
1200
+ $ical_uid = $e->getProperty( 'uid' );
1201
+ $recurrence_id = $e->getProperty( 'recurrence-id' );
1202
+ if ( false !== $recurrence_id ) {
1203
+ $ical_uid = implode( '', array_values( $recurrence_id ) ) . '-' .
1204
+ $ical_uid;
1205
+ }
1206
+
1207
+ return $ical_uid;
1208
+ }
1209
+
1210
+ /**
1211
+ * Returns modified exclusions structure for given event.
1212
+ *
1213
+ * @param vcalendar $e Vcalendar event object.
1214
+ * @param array $exclusions Exclusions.
1215
+ * @param Ai1ec_Date_Time $start Date time object.
1216
+ *
1217
+ * @return array Modified exclusions structure.
1218
+ */
1219
+ protected function _add_recurring_events_exclusions( $e, $exclusions, $start ) {
1220
+ $recurrence_id = $e->getProperty( 'recurrence-id' );
1221
+ if (
1222
+ false === $recurrence_id ||
1223
+ ! isset( $recurrence_id['year'] ) ||
1224
+ ! isset( $recurrence_id['month'] ) ||
1225
+ ! isset( $recurrence_id['day'] )
1226
+ ) {
1227
+ return $exclusions;
1228
+ }
1229
+ $year = $month = $day = $hour = $min = $sec = null;
1230
+ extract( $recurrence_id, EXTR_IF_EXISTS );
1231
+ $timezone = '';
1232
+ $exdate = sprintf( '%04d%02d%02d', $year, $month, $day );
1233
+ if (
1234
+ null === $hour ||
1235
+ null === $min ||
1236
+ null === $sec
1237
+ ) {
1238
+ $hour = $min = $sec = '00';
1239
+ $timezone = 'Z';
1240
+ }
1241
+ $exdate .= sprintf(
1242
+ 'T%02d%02d%02d%s',
1243
+ $hour,
1244
+ $min,
1245
+ $sec,
1246
+ $timezone
1247
+ );
1248
+ $exclusions[$e->getProperty( 'uid' )][] = $exdate;
1249
+ return $exclusions;
1250
+ }
1251
+
1252
+ /**
1253
+ * Filter recurrence / exclusion rule or dates. Avoid throwing exception for old, malformed values.
1254
+ *
1255
+ * @param string $rule Rule or dates value.
1256
+ *
1257
+ * @return string Fixed rule or dates value.
1258
+ */
1259
+ protected function _filter_rule( $rule ) {
1260
+ if ( null === $this->_rule_filter ) {
1261
+ $this->_rule_filter = $this->_registry->get( 'recurrence.rule' );
1262
+ }
1263
+ return $this->_rule_filter->filter_rule( $rule );
1264
+ }
1265
+
1266
+ /**
1267
+ * Remove the Ticket URL that maybe exists inside the field Description of the Event
1268
+ */
1269
+ protected function _remove_ticket_url( $description ) {
1270
+ return preg_replace( '/<p>[^<>]+<a[^<>]+class=[\'"]?ai1ec-ticket-url-exported[\'"]?[^<>]+>.[^<>]+<\/a>[\.\s]*<\/p>/'
1271
+ , ''
1272
+ , $description );
1273
+ }
1274
+
1275
+ }
lib/recurrence/rule.php CHANGED
@@ -287,6 +287,7 @@ class Ai1ec_Recurrence_Rule extends Ai1ec_Base {
287
  }
288
  } elseif( $rc->getByDay() ) {
289
  $_days = '';
 
290
  foreach( $rc->getByDay() as $d ) {
291
  if ( ! preg_match( '|^((-?)\d+)([A-Z]{2})$|', $d, $matches ) ) {
292
  continue;
287
  }
288
  } elseif( $rc->getByDay() ) {
289
  $_days = '';
290
+ $dnum = '';
291
  foreach( $rc->getByDay() as $d ) {
292
  if ( ! preg_match( '|^((-?)\d+)([A-Z]{2})$|', $d, $matches ) ) {
293
  continue;
lib/size/converter.php ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Size converter utility
5
+ *
6
+ * @author Time.ly Network, Inc.
7
+ * @since 2.0
8
+ * @package Ai1EC
9
+ * @subpackage Ai1EC.Size
10
+ */
11
+ class Ai1ec_Size_Converter_Utility extends Ai1ec_Base {
12
+
13
+ /**
14
+ * Returns number of bytes from human readable string
15
+ * Note: This is similar to wp_convert_hr_bytes(), but this one accepts values with decimals
16
+ *
17
+ * @param string $size Human readable size string
18
+ *
19
+ * @return string Converted number of bytes from human readable size string
20
+ */
21
+ public function convert_hr_to_bytes( $size ) {
22
+ $size = strtolower( $size );
23
+ $bytes = preg_replace( '/[^0-9\.]/', '', $size );
24
+
25
+ // Sanity check
26
+ if ( empty( $bytes ) ) {
27
+ $bytes = 0;
28
+ }
29
+
30
+ if ( strpos( $size, 'k' ) !== false ) {
31
+ $bytes = $bytes * 1024;
32
+ } elseif ( strpos( $size, 'm' ) !== false ) {
33
+ $bytes = $bytes * 1024 * 1024;
34
+ } elseif ( strpos( $size, 'g' ) !== false ) {
35
+ $bytes = $bytes * 1024 * 1024 * 1024;
36
+ }
37
+
38
+ return $bytes;
39
+ }
40
+ }
lib/upload/size-determiner.php ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Upload size determiner
5
+ *
6
+ * @author Time.ly Network, Inc.
7
+ * @since 2.0
8
+ * @package Ai1EC
9
+ * @subpackage Ai1EC.Upload
10
+ */
11
+ class Ai1ec_Upload_Size_Determiner_Utility extends Ai1ec_Base {
12
+
13
+ /**
14
+ * Returns the maximum upload file size in bytes
15
+ *
16
+ * @param string $size Human readable size
17
+ *
18
+ * @return int Maximum upload file size
19
+ */
20
+ public function get_maximum_upload_file_size_bytes( $size ) {
21
+ $converter_utility = $this->_registry->get( 'size.converter' );
22
+
23
+ $maximum_size = $converter_utility->convert_hr_to_bytes( $size );
24
+
25
+ if ( $maximum_size <= 0 || $maximum_size > wp_max_upload_size() ) {
26
+ $maximum_size = wp_max_upload_size();
27
+ }
28
+
29
+ return $maximum_size;
30
+ }
31
+
32
+ /**
33
+ * Returns human readable maximum upload file size
34
+ *
35
+ * @param string $size Human readable size
36
+ *
37
+ * @return string Human readable maximum upload file size
38
+ */
39
+ public function get_maximum_upload_file_size_string( $size ) {
40
+ $size_string = size_format( $this->get_maximum_upload_file_size_bytes( $size ), 2 );
41
+
42
+ return $size_string;
43
+ }
44
+ }
lib/validator/email.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Email validator.
5
+ *
6
+ * @author Time.ly Network Inc.
7
+ * @since 2.3
8
+ * @instantiator new
9
+ * @package AI1EC
10
+ * @subpackage AI1EC.Validator
11
+ */
12
+ class Ai1ec_Validator_Email extends Ai1ec_Validator {
13
+
14
+ /* (non-PHPdoc)
15
+ * @see Ai1ec_Validator::validate()
16
+ */
17
+ public function validate() {
18
+ if (
19
+ ! empty( $this->_value ) &&
20
+ ! is_email( $this->_value )
21
+ ) {
22
+ throw new Ai1ec_Value_Not_Valid_Exception();
23
+ }
24
+ return $this->_value;
25
+ }
26
+
27
+ }
lib/validator/human-readable-size.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Human readable size validator.
5
+ *
6
+ * @author Time.ly Network Inc.
7
+ * @since 2.0
8
+ * @instantiator new
9
+ * @package AI1EC
10
+ * @subpackage AI1EC.Validator
11
+ */
12
+ class Ai1ec_Validator_Human_Readable_Size extends Ai1ec_Validator {
13
+
14
+ /* (non-PHPdoc)
15
+ * @see Ai1ec_Validator::validate()
16
+ */
17
+ public function validate() {
18
+ $checked_string = trim( strtoupper( $this->_value ) );
19
+
20
+ // Bytes - Get the first number
21
+ $bytes = '0';
22
+ preg_match( '/^([0-9\.]+)/', $checked_string, $matches );
23
+ if ( count( $matches ) == 2 ) {
24
+ $bytes = $matches[1];
25
+ }
26
+
27
+ // Unit - Get the first letter
28
+ $unit = 'B';
29
+ preg_match( '/([KMGT]{1})/', $checked_string, $matches );
30
+ if ( count( $matches ) == 2 ) {
31
+ $unit = $matches[1];
32
+ }
33
+
34
+ return $bytes . $unit;
35
+ }
36
+ }
public/admin/font/fontawesome-webfont.eot CHANGED
File without changes
public/admin/font/fontawesome-webfont.svg CHANGED
File without changes
public/admin/font/fontawesome-webfont.ttf CHANGED
File without changes
public/admin/font/fontawesome-webfont.woff CHANGED
File without changes
public/admin/img/ajax-loader-small.gif CHANGED
File without changes
public/admin/less/bootstrap/alerts.less CHANGED
File without changes
public/admin/less/bootstrap/badges.less CHANGED
File without changes
public/admin/less/bootstrap/bootstrap.less CHANGED
File without changes
public/admin/less/bootstrap/breadcrumbs.less CHANGED
File without changes
public/admin/less/bootstrap/button-groups.less CHANGED
File without changes
public/admin/less/bootstrap/buttons.less CHANGED
File without changes
public/admin/less/bootstrap/carousel.less CHANGED
File without changes
public/admin/less/bootstrap/close.less CHANGED
File without changes
public/admin/less/bootstrap/code.less CHANGED
File without changes
public/admin/less/bootstrap/component-animations.less CHANGED
File without changes
public/admin/less/bootstrap/dropdowns.less CHANGED
File without changes
public/admin/less/bootstrap/forms.less CHANGED
File without changes
public/admin/less/bootstrap/glyphicons.less CHANGED
File without changes
public/admin/less/bootstrap/grid.less CHANGED
File without changes
public/admin/less/bootstrap/input-groups.less CHANGED
File without changes
public/admin/less/bootstrap/jumbotron.less CHANGED
File without changes
public/admin/less/bootstrap/labels.less CHANGED
File without changes
public/admin/less/bootstrap/list-group.less CHANGED
File without changes
public/admin/less/bootstrap/media.less CHANGED
File without changes
public/admin/less/bootstrap/mixins.less CHANGED
File without changes
public/admin/less/bootstrap/modals.less CHANGED
File without changes
public/admin/less/bootstrap/navbar.less CHANGED
File without changes
public/admin/less/bootstrap/navs.less CHANGED
File without changes
public/admin/less/bootstrap/normalize.less CHANGED
File without changes
public/admin/less/bootstrap/pager.less CHANGED
File without changes
public/admin/less/bootstrap/pagination.less CHANGED
File without changes
public/admin/less/bootstrap/panels.less CHANGED
File without changes
public/admin/less/bootstrap/popovers.less CHANGED
File without changes
public/admin/less/bootstrap/print.less CHANGED
File without changes
public/admin/less/bootstrap/progress-bars.less CHANGED
File without changes
public/admin/less/bootstrap/responsive-utilities.less CHANGED
File without changes
public/admin/less/bootstrap/scaffolding.less CHANGED
File without changes
public/admin/less/bootstrap/tables.less CHANGED
File without changes
public/admin/less/bootstrap/theme.less CHANGED
File without changes
public/admin/less/bootstrap/thumbnails.less CHANGED
File without changes
public/admin/less/bootstrap/tooltip.less CHANGED
File without changes
public/admin/less/bootstrap/type.less CHANGED
File without changes
public/admin/less/bootstrap/utilities.less CHANGED
File without changes
public/admin/less/bootstrap/variables.less CHANGED
File without changes
public/admin/less/bootstrap/wells.less CHANGED
File without changes
public/admin/less/build-css.sh CHANGED
File without changes
public/admin/less/plugins/datepicker3.less CHANGED
File without changes
public/admin/plugins/ics/display_feeds.php CHANGED
@@ -27,7 +27,7 @@
27
  <?php _e( 'iCalendar/.ics Feed URL:', AI1EC_PLUGIN_NAME ) ?>
28
  </label>
29
  <input type="text" name="ai1ec_feed_url" id="ai1ec_feed_url"
30
- class="ai1ec-form-control">
31
  </div>
32
  <div class="ai1ec-row">
33
  <div class="ai1ec-col-sm-6">
27
  <?php _e( 'iCalendar/.ics Feed URL:', AI1EC_PLUGIN_NAME ) ?>
28
  </label>
29
  <input type="text" name="ai1ec_feed_url" id="ai1ec_feed_url"
30
+ class="ai1ec-form-control" maxlength="255">
31
  </div>
32
  <div class="ai1ec-row">
33
  <div class="ai1ec-col-sm-6">
public/admin/twig/widget-creator/super-widget-contents.twig CHANGED
@@ -5,7 +5,7 @@
5
  {{ text_alternatives | raw }}
6
  </div>
7
  {% endif %}
8
- <div class="ai1ec-col-12">
9
  <ul class="ai1ec-nav ai1ec-nav-pills" role="tablist">
10
  {% for id, data in tabs %}
11
  <li>
@@ -45,5 +45,6 @@
45
  | raw }}
46
  </div>
47
  </div>
 
48
  <h2 id="widget-preview-title">{{ text_preview }}</h2>
49
  <div id="ai1ec-superwidget-preview" class="ai1ec-well ai1ec-hidden"></div>
5
  {{ text_alternatives | raw }}
6
  </div>
7
  {% endif %}
8
+ <div class="ai1ec-col-md-12">
9
  <ul class="ai1ec-nav ai1ec-nav-pills" role="tablist">
10
  {% for id, data in tabs %}
11
  <li>
45
  | raw }}
46
  </div>
47
  </div>
48
+ <br clear="all" />
49
  <h2 id="widget-preview-title">{{ text_preview }}</h2>
50
  <div id="ai1ec-superwidget-preview" class="ai1ec-well ai1ec-hidden"></div>
public/js/build.txt DELETED
@@ -1,342 +0,0 @@
1
-
2
- pages/calendar.js
3
- ----------------
4
- domReady.js
5
- scripts/calendar/print.js
6
- scripts/calendar/agenda_view.js
7
- external_libs/modernizr.js
8
- scripts/calendar/month_view.js
9
- libs/frontend_utils.js
10
- external_libs/bootstrap/tab.js
11
- libs/utils.js
12
- external_libs/bootstrap/affix.js
13
- scripts/common_scripts/frontend/common_event_handlers.js
14
- external_libs/bootstrap/tooltip.js
15
- external_libs/bootstrap/popover.js
16
- external_libs/constrained_popover.js
17
- external_libs/bootstrap/dropdown.js
18
- scripts/common_scripts/frontend/common_frontend.js
19
- external_libs/select2.js
20
- libs/select2_multiselect_helper.js
21
- external_libs/twig.js
22
- libs/twig.js
23
- agenda.js
24
- oneday.js
25
- month.js
26
- external_libs/jquery_history.js
27
- external_libs/jquery.tablescroller.js
28
- external_libs/jquery.scrollTo.js
29
- external_libs/locales/bootstrap-datepicker.bg.js
30
- external_libs/locales/bootstrap-datepicker.br.js
31
- external_libs/locales/bootstrap-datepicker.cs.js
32
- external_libs/locales/bootstrap-datepicker.da.js
33
- external_libs/locales/bootstrap-datepicker.de.js
34
- external_libs/locales/bootstrap-datepicker.es.js
35
- external_libs/locales/bootstrap-datepicker.fi.js
36
- external_libs/locales/bootstrap-datepicker.fr.js
37
- external_libs/locales/bootstrap-datepicker.id.js
38
- external_libs/locales/bootstrap-datepicker.is.js
39
- external_libs/locales/bootstrap-datepicker.it.js
40
- external_libs/locales/bootstrap-datepicker.ja.js
41
- external_libs/locales/bootstrap-datepicker.kr.js
42
- external_libs/locales/bootstrap-datepicker.lt.js
43
- external_libs/locales/bootstrap-datepicker.lv.js
44
- external_libs/locales/bootstrap-datepicker.ms.js
45
- external_libs/locales/bootstrap-datepicker.nb.js
46
- external_libs/locales/bootstrap-datepicker.nl.js
47
- external_libs/locales/bootstrap-datepicker.pl.js
48
- external_libs/locales/bootstrap-datepicker.pt-BR.js
49
- external_libs/locales/bootstrap-datepicker.pt.js
50
- external_libs/locales/bootstrap-datepicker.ru.js
51
- external_libs/locales/bootstrap-datepicker.sl.js
52
- external_libs/locales/bootstrap-datepicker.sv.js
53
- external_libs/locales/bootstrap-datepicker.th.js
54
- external_libs/locales/bootstrap-datepicker.tr.js
55
- external_libs/locales/bootstrap-datepicker.zh-CN.js
56
- external_libs/locales/bootstrap-datepicker.zh-TW.js
57
- external_libs/bootstrap_datepicker.js
58
- external_libs/bootstrap/alert.js
59
- external_libs/jquery_cookie.js
60
- scripts/calendar/load_views.js
61
- scripts/calendar/calendar-affix.js
62
- external_libs/bootstrap/transition.js
63
- external_libs/bootstrap/modal.js
64
- scripts/calendar.js
65
- pages/calendar.js
66
-
67
- pages/event.js
68
- ----------------
69
- domReady.js
70
- scripts/event/gmaps_helper.js
71
- scripts/event.js
72
- pages/event.js
73
-
74
- pages/admin_settings.js
75
- ----------------
76
- domReady.js
77
- external_libs/bootstrap/tab.js
78
- libs/utils.js
79
- scripts/setting/cache/cache_ajax_handlers.js
80
- scripts/setting/cache/cache_event_handlers.js
81
- external_libs/bootstrap/button.js
82
- external_libs/bootstrap/transition.js
83
- external_libs/bootstrap/collapse.js
84
- libs/collapse_helper.js
85
- external_libs/locales/bootstrap-datepicker.bg.js
86
- external_libs/locales/bootstrap-datepicker.br.js
87
- external_libs/locales/bootstrap-datepicker.cs.js
88
- external_libs/locales/bootstrap-datepicker.da.js
89
- external_libs/locales/bootstrap-datepicker.de.js
90
- external_libs/locales/bootstrap-datepicker.es.js
91
- external_libs/locales/bootstrap-datepicker.fi.js
92
- external_libs/locales/bootstrap-datepicker.fr.js
93
- external_libs/locales/bootstrap-datepicker.id.js
94
- external_libs/locales/bootstrap-datepicker.is.js
95
- external_libs/locales/bootstrap-datepicker.it.js
96
- external_libs/locales/bootstrap-datepicker.ja.js
97
- external_libs/locales/bootstrap-datepicker.kr.js
98
- external_libs/locales/bootstrap-datepicker.lt.js
99
- external_libs/locales/bootstrap-datepicker.lv.js
100
- external_libs/locales/bootstrap-datepicker.ms.js
101
- external_libs/locales/bootstrap-datepicker.nb.js
102
- external_libs/locales/bootstrap-datepicker.nl.js
103
- external_libs/locales/bootstrap-datepicker.pl.js
104
- external_libs/locales/bootstrap-datepicker.pt-BR.js
105
- external_libs/locales/bootstrap-datepicker.pt.js
106
- external_libs/locales/bootstrap-datepicker.ru.js
107
- external_libs/locales/bootstrap-datepicker.sl.js
108
- external_libs/locales/bootstrap-datepicker.sv.js
109
- external_libs/locales/bootstrap-datepicker.th.js
110
- external_libs/locales/bootstrap-datepicker.tr.js
111
- external_libs/locales/bootstrap-datepicker.zh-CN.js
112
- external_libs/locales/bootstrap-datepicker.zh-TW.js
113
- external_libs/bootstrap_datepicker.js
114
- external_libs/bootstrap/tooltip.js
115
- external_libs/jquery_cookie.js
116
- scripts/admin_settings.js
117
- pages/admin_settings.js
118
-
119
- pages/add_new_event.js
120
- ----------------
121
- domReady.js
122
- external_libs/bootstrap/tab.js
123
- libs/utils.js
124
- scripts/add_new_event/event_location/input_coordinates_utility_functions.js
125
- external_libs/jquery.autocomplete_geomod.js
126
- external_libs/geo_autocomplete.js
127
- scripts/add_new_event/event_location/gmaps_helper.js
128
- scripts/add_new_event/event_location/input_coordinates_event_handlers.js
129
- external_libs/jquery.calendrical_timespan.js
130
- scripts/add_new_event/event_date_time/date_time_utility_functions.js
131
- external_libs/bootstrap/button.js
132
- scripts/add_new_event/event_date_time/date_time_event_handlers.js
133
- scripts/add_new_event/event_cost_helper.js
134
- external_libs/jquery.inputdate.js
135
- external_libs/jquery.tools.js
136
- external_libs/locales/bootstrap-datepicker.bg.js
137
- external_libs/locales/bootstrap-datepicker.br.js
138
- external_libs/locales/bootstrap-datepicker.cs.js
139
- external_libs/locales/bootstrap-datepicker.da.js
140
- external_libs/locales/bootstrap-datepicker.de.js
141
- external_libs/locales/bootstrap-datepicker.es.js
142
- external_libs/locales/bootstrap-datepicker.fi.js
143
- external_libs/locales/bootstrap-datepicker.fr.js
144
- external_libs/locales/bootstrap-datepicker.id.js
145
- external_libs/locales/bootstrap-datepicker.is.js
146
- external_libs/locales/bootstrap-datepicker.it.js
147
- external_libs/locales/bootstrap-datepicker.ja.js
148
- external_libs/locales/bootstrap-datepicker.kr.js
149
- external_libs/locales/bootstrap-datepicker.lt.js
150
- external_libs/locales/bootstrap-datepicker.lv.js
151
- external_libs/locales/bootstrap-datepicker.ms.js
152
- external_libs/locales/bootstrap-datepicker.nb.js
153
- external_libs/locales/bootstrap-datepicker.nl.js
154
- external_libs/locales/bootstrap-datepicker.pl.js
155
- external_libs/locales/bootstrap-datepicker.pt-BR.js
156
- external_libs/locales/bootstrap-datepicker.pt.js
157
- external_libs/locales/bootstrap-datepicker.ru.js
158
- external_libs/locales/bootstrap-datepicker.sl.js
159
- external_libs/locales/bootstrap-datepicker.sv.js
160
- external_libs/locales/bootstrap-datepicker.th.js
161
- external_libs/locales/bootstrap-datepicker.tr.js
162
- external_libs/locales/bootstrap-datepicker.zh-CN.js
163
- external_libs/locales/bootstrap-datepicker.zh-TW.js
164
- external_libs/bootstrap_datepicker.js
165
- external_libs/bootstrap/transition.js
166
- external_libs/bootstrap/collapse.js
167
- external_libs/bootstrap/modal.js
168
- external_libs/bootstrap/alert.js
169
- external_libs/select2.js
170
- scripts/add_new_event.js
171
- pages/add_new_event.js
172
-
173
- pages/calendar_feeds.js
174
- ----------------
175
- domReady.js
176
- external_libs/bootstrap/tab.js
177
- libs/utils.js
178
- scripts/calendar_feeds/ics/ics_ajax_handlers.js
179
- scripts/calendar_feeds/ics/ics_event_handlers.js
180
- external_libs/select2.js
181
- libs/select2_multiselect_helper.js
182
- libs/tags_select.js
183
- external_libs/jquery_cookie.js
184
- external_libs/bootstrap/alert.js
185
- external_libs/bootstrap/modal.js
186
- external_libs/bootstrap/button.js
187
- scripts/calendar_feeds.js
188
- pages/calendar_feeds.js
189
-
190
- pages/event_category.js
191
- ----------------
192
- domReady.js
193
- external_libs/colorpicker.js
194
- scripts/event_category.js
195
- pages/event_category.js
196
-
197
- pages/common_backend.js
198
- ----------------
199
- domReady.js
200
- scripts/common_scripts/backend/common_ajax_handlers.js
201
- scripts/common_scripts/backend/common_event_handlers.js
202
- external_libs/Placeholders.js
203
- external_libs/bootstrap/tooltip.js
204
- external_libs/bootstrap/popover.js
205
- external_libs/bootstrap/modal.js
206
- external_libs/bootstrap/dropdown.js
207
- scripts/common_scripts/backend/common_backend.js
208
- pages/common_backend.js
209
-
210
- pages/less_variables_editing.js
211
- ----------------
212
- domReady.js
213
- external_libs/bootstrap/tab.js
214
- libs/utils.js
215
- external_libs/bootstrap_colorpicker.js
216
- external_libs/jquery_cookie.js
217
- scripts/less_variables_editing.js
218
- pages/less_variables_editing.js
219
-
220
- pages/common_frontend.js
221
- ----------------
222
- domReady.js
223
- external_libs/bootstrap/affix.js
224
- scripts/common_scripts/frontend/common_event_handlers.js
225
- external_libs/modernizr.js
226
- external_libs/bootstrap/tooltip.js
227
- external_libs/bootstrap/popover.js
228
- external_libs/constrained_popover.js
229
- external_libs/bootstrap/dropdown.js
230
- scripts/common_scripts/frontend/common_frontend.js
231
- pages/common_frontend.js
232
-
233
- scripts/calendar.js
234
- ----------------
235
- domReady.js
236
- scripts/calendar/print.js
237
- scripts/calendar/agenda_view.js
238
- external_libs/modernizr.js
239
- scripts/calendar/month_view.js
240
- libs/frontend_utils.js
241
- external_libs/bootstrap/tab.js
242
- libs/utils.js
243
- external_libs/bootstrap/affix.js
244
- scripts/common_scripts/frontend/common_event_handlers.js
245
- external_libs/bootstrap/tooltip.js
246
- external_libs/bootstrap/popover.js
247
- external_libs/constrained_popover.js
248
- external_libs/bootstrap/dropdown.js
249
- scripts/common_scripts/frontend/common_frontend.js
250
- external_libs/select2.js
251
- libs/select2_multiselect_helper.js
252
- external_libs/twig.js
253
- libs/twig.js
254
- agenda.js
255
- oneday.js
256
- month.js
257
- external_libs/jquery_history.js
258
- external_libs/jquery.tablescroller.js
259
- external_libs/jquery.scrollTo.js
260
- external_libs/locales/bootstrap-datepicker.bg.js
261
- external_libs/locales/bootstrap-datepicker.br.js
262
- external_libs/locales/bootstrap-datepicker.cs.js
263
- external_libs/locales/bootstrap-datepicker.da.js
264
- external_libs/locales/bootstrap-datepicker.de.js
265
- external_libs/locales/bootstrap-datepicker.es.js
266
- external_libs/locales/bootstrap-datepicker.fi.js
267
- external_libs/locales/bootstrap-datepicker.fr.js
268
- external_libs/locales/bootstrap-datepicker.id.js
269
- external_libs/locales/bootstrap-datepicker.is.js
270
- external_libs/locales/bootstrap-datepicker.it.js
271
- external_libs/locales/bootstrap-datepicker.ja.js
272
- external_libs/locales/bootstrap-datepicker.kr.js
273
- external_libs/locales/bootstrap-datepicker.lt.js
274
- external_libs/locales/bootstrap-datepicker.lv.js
275
- external_libs/locales/bootstrap-datepicker.ms.js
276
- external_libs/locales/bootstrap-datepicker.nb.js
277
- external_libs/locales/bootstrap-datepicker.nl.js
278
- external_libs/locales/bootstrap-datepicker.pl.js
279
- external_libs/locales/bootstrap-datepicker.pt-BR.js
280
- external_libs/locales/bootstrap-datepicker.pt.js
281
- external_libs/locales/bootstrap-datepicker.ru.js
282
- external_libs/locales/bootstrap-datepicker.sl.js
283
- external_libs/locales/bootstrap-datepicker.sv.js
284
- external_libs/locales/bootstrap-datepicker.th.js
285
- external_libs/locales/bootstrap-datepicker.tr.js
286
- external_libs/locales/bootstrap-datepicker.zh-CN.js
287
- external_libs/locales/bootstrap-datepicker.zh-TW.js
288
- external_libs/bootstrap_datepicker.js
289
- external_libs/bootstrap/alert.js
290
- external_libs/jquery_cookie.js
291
- scripts/calendar/load_views.js
292
- scripts/calendar/calendar-affix.js
293
- external_libs/bootstrap/transition.js
294
- external_libs/bootstrap/modal.js
295
- scripts/calendar.js
296
-
297
- scripts/common_scripts/frontend/common_frontend.js
298
- ----------------
299
- domReady.js
300
- external_libs/bootstrap/affix.js
301
- scripts/common_scripts/frontend/common_event_handlers.js
302
- external_libs/modernizr.js
303
- external_libs/bootstrap/tooltip.js
304
- external_libs/bootstrap/popover.js
305
- external_libs/constrained_popover.js
306
- external_libs/bootstrap/dropdown.js
307
- scripts/common_scripts/frontend/common_frontend.js
308
-
309
- scripts/calendar/event.js
310
- ----------------
311
- external_libs/bootstrap/tab.js
312
- libs/utils.js
313
- external_libs/jquery.scrollTo.js
314
- scripts/calendar/event.js
315
-
316
- domReady.js
317
- ----------------
318
- domReady.js
319
-
320
- scripts/common_scripts/page_ready.js
321
- ----------------
322
- domReady.js
323
- scripts/common_scripts/page_ready.js
324
-
325
- scripts/widget-creator.js
326
- ----------------
327
- domReady.js
328
- external_libs/bootstrap/tab.js
329
- libs/utils.js
330
- external_libs/jquery_cookie.js
331
- scripts/widget-creator.js
332
-
333
- external_libs/twig.js
334
- ----------------
335
- external_libs/twig.js
336
-
337
- libs/captcha.js
338
- ----------------
339
- libs/captcha/recaptcha.js
340
- libs/captcha/nocaptcha.js
341
- libs/captcha/void.js
342
- libs/captcha.js
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
public/js/oneday.js CHANGED
@@ -1 +1 @@
1
- timely.define(["libs/twig","oneday"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/oneday.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view-original">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <th class="ai1ec-weekday\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n '},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_reveal_button",match:["show_reveal_button"]},{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"last"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <div class="ai1ec-reveal-full-day">\n <button class="ai1ec-btn ai1ec-btn-info ai1ec-btn-xs\n ai1ec-tooltip-trigger"\n data-placement="left"\n title="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_full_day",match:["text_full_day"]},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-expand"></i>\n </button>\n </div>\n '}]}},{type:"raw",value:' <a class="ai1ec-load-view" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <span class="ai1ec-weekday-date">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</span>\n <span class="ai1ec-weekday-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</span>\n </a>\n </th>\n "}]}},{type:"raw",value:" </tr>\n <tr>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <td class="ai1ec-allday-events\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-allday-label">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_all_day",match:["text_all_day"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"allday"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n ai1ec-allday\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n\n </thead>\n <tbody>\n <tr class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-grid-container">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"h",value_var:"hour",expression:[{type:"Twig.expression.type.variable",value:"hours",match:["hours"]}],output:[{type:"raw",value:' <div class="ai1ec-hour-marker\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:8,match:["8",null]},{type:"Twig.expression.type.operator.binary",value:">=",precidence:8,associativity:"leftToRight",operator:">="},{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:18,match:["18",null]},{type:"Twig.expression.type.operator.binary",value:"<",precidence:8,associativity:"leftToRight",operator:"<"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:"ai1ec-business-hour"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"hour",match:["hour"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"quarter",expression:[{type:"Twig.expression.type.number",value:1,match:["1",null]},{type:"Twig.expression.type.number",value:3,match:["3",null]},{type:"Twig.expression.type.operator.binary",value:"..",precidence:20,associativity:"leftToRight",operator:".."}],output:[{type:"raw",value:' <div class="ai1ec-quarter-marker"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"quarter",match:["quarter"]},{type:"Twig.expression.type.number",value:15,match:["15",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:'px;"></div>\n '}]}},{type:"raw",value:" "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.variable",value:"show_now",match:["show_now"]},{type:"Twig.expression.type.operator.binary",value:"or",precidence:14,associativity:"leftToRight",operator:"or"}],output:[{type:"raw",value:' <div class="ai1ec-now-marker" style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_top",match:["now_top"]}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_now_label",match:["text_now_label"]}]},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_text",match:["now_text"]}]},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day_array",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"notallday"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"event",expression:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"event"}]}},{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:"ai1ec-start-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:"ai1ec-end-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"top"}]},{type:"raw",value:"px;\n height: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"height"}]},{type:"raw",value:"px;\n left: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"indent"},{type:"Twig.expression.type.variable",value:"indent_multiplier",match:["indent_multiplier"]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"indent_offset",match:["indent_offset"]},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:"px;\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"faded_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"faded_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"rgba_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba1",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.05"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba3",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.3"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" border: 1px solid "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}]},{type:"raw",value:";\n border-color: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.5"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:";\n background-image: -webkit-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -moz-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -ms-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -o-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n "}]}},{type:"raw",value:' ">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-start-truncator">◤</div>\n '}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-end-truncator">◢</div>\n '}]}},{type:"raw",value:'\n <div class="ai1ec-event">\n <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:'\n </span>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n </tbody>\n\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n});
1
+ timely.define(["libs/twig","oneday"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/oneday.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view-original">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <th class="ai1ec-weekday\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n '},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_reveal_button",match:["show_reveal_button"]},{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"last"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <div class="ai1ec-reveal-full-day">\n <button class="ai1ec-btn ai1ec-btn-info ai1ec-btn-xs\n ai1ec-tooltip-trigger"\n data-placement="left"\n title="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_full_day",match:["text_full_day"]},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-expand"></i>\n </button>\n </div>\n '}]}},{type:"raw",value:' <a class="ai1ec-load-view" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <span class="ai1ec-weekday-date">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</span>\n <span class="ai1ec-weekday-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</span>\n </a>\n </th>\n "}]}},{type:"raw",value:" </tr>\n <tr>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <td class="ai1ec-allday-events\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-allday-label">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_all_day",match:["text_all_day"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"allday"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n ai1ec-allday\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n\n </thead>\n <tbody>\n <tr class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-grid-container">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"h",value_var:"hour",expression:[{type:"Twig.expression.type.variable",value:"hours",match:["hours"]}],output:[{type:"raw",value:' <div class="ai1ec-hour-marker\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:8,match:["8",null]},{type:"Twig.expression.type.operator.binary",value:">=",precidence:8,associativity:"leftToRight",operator:">="},{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:18,match:["18",null]},{type:"Twig.expression.type.operator.binary",value:"<",precidence:8,associativity:"leftToRight",operator:"<"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:"ai1ec-business-hour"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"hour",match:["hour"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"quarter",expression:[{type:"Twig.expression.type.number",value:1,match:["1",null]},{type:"Twig.expression.type.number",value:3,match:["3",null]},{type:"Twig.expression.type.operator.binary",value:"..",precidence:20,associativity:"leftToRight",operator:".."}],output:[{type:"raw",value:' <div class="ai1ec-quarter-marker"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"quarter",match:["quarter"]},{type:"Twig.expression.type.number",value:15,match:["15",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:'px;"></div>\n '}]}},{type:"raw",value:" "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.variable",value:"show_now",match:["show_now"]},{type:"Twig.expression.type.operator.binary",value:"or",precidence:14,associativity:"leftToRight",operator:"or"}],output:[{type:"raw",value:' <div class="ai1ec-now-marker" style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_top",match:["now_top"]}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_now_label",match:["text_now_label"]}]},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_text",match:["now_text"]}]},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day_array",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"notallday"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"event",expression:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"event"}]}},{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:"ai1ec-start-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:"ai1ec-end-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"top"}]},{type:"raw",value:"px;\n height: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"height"}]},{type:"raw",value:"px;\n left: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"indent"},{type:"Twig.expression.type.variable",value:"indent_multiplier",match:["indent_multiplier"]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"indent_offset",match:["indent_offset"]},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:"px;\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"faded_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"faded_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"rgba_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba1",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.05"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba3",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.3"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" border: 1px solid "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}]},{type:"raw",value:";\n border-color: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.5"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:";\n background-image: -webkit-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -moz-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -ms-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -o-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n "}]}},{type:"raw",value:' ">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-start-truncator">◤</div>\n '}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-end-truncator">◢</div>\n '}]}},{type:"raw",value:'\n <div class="ai1ec-event">\n <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:'\n </span>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:" ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n </tbody>\n\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n});
public/js/pages/calendar.js CHANGED
@@ -358,4 +358,4 @@ OTHER DEALINGS IN THE SOFTWARE.
358
  * limitations under the License.
359
  * ======================================================================== */
360
 
361
- timely.define("domReady",[],function(){function u(e){var t;for(t=0;t<e.length;t++)e[t](n)}function a(){var e=r;t&&e.length&&(r=[],u(e))}function f(){t||(t=!0,o&&clearInterval(o),a())}function c(e){return t?e(n):r.push(e),c}var e=typeof window!="undefined"&&window.document,t=!e,n=e?document:null,r=[],i,s,o;if(e){if(document.addEventListener)document.addEventListener("DOMContentLoaded",f,!1),window.addEventListener("load",f,!1);else if(window.attachEvent){window.attachEvent("onload",f),s=document.createElement("div");try{i=window.frameElement===null}catch(l){}s.doScroll&&i&&window.external&&(o=setInterval(function(){try{s.doScroll(),f()}catch(e){}},30))}(document.readyState==="complete"||document.readyState==="interactive")&&f()}return c.version="2.0.0",c.load=function(e,t,n,r){r.isBuild?n(null):c(n)},c}),timely.define("scripts/calendar/print",["jquery_timely"],function(e){var t=function(t){t.preventDefault();var n=e("body"),r=e("html"),i=e(this).closest(".ai1ec-calendar").html(),s=n.html();s=s.replace(/<script.*?>([\s\S]*?)<\/script>/gmi,""),n.empty(),n.addClass("timely"),r.addClass("ai1ec-print"),n.html(i),e("span").click(function(){return!1}),e(".ai1ec-agenda-view a").each(function(){e(this).data("href",e(this).attr("href")),e(this).attr("href","#")}),window.print(),e(".ai1ec-agenda-view a").each(function(){e(this).attr("href",e(this).data("href")),e(this).data("href","")}),n.removeClass("timely"),r.removeClass("ai1ec-print"),n.html(s)};return{handle_click_on_print_button:t}}),timely.define("scripts/calendar/agenda_view",["jquery_timely"],function(e){var t=function(){e(this).closest(".ai1ec-event").toggleClass("ai1ec-expanded").find(".ai1ec-event-summary").slideToggle(300)},n=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-expanded .ai1ec-event-toggle").click()},r=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-event:not(.ai1ec-expanded) .ai1ec-event-toggle").click()};return{toggle_event:t,collapse_all:n,expand_all:r}}),timely.define("external_libs/modernizr",[],function(){var e=function(e,t,n){function S(e){f.cssText=e}function x(e,t){return S(h.join(e+";")+(t||""))}function T(e,t){return typeof e===t}function N(e,t){return!!~(""+e).indexOf(t)}function C(e,t,r){for(var i in e){var s=t[e[i]];if(s!==n)return r===!1?e[i]:T(s,"function")?s.bind(r||t):s}return!1}var r="2.5.3",i={},s=!0,o=t.documentElement,u="modernizr",a=t.createElement(u),f=a.style,l,c={}.toString,h=" -webkit- -moz- -o- -ms- ".split(" "),p={},d={},v={},m=[],g=m.slice,y,b=function(e,n,r,i){var s,a,f,l=t.createElement("div"),c=t.body,h=c?c:t.createElement("body");if(parseInt(r,10))while(r--)f=t.createElement("div"),f.id=i?i[r]:u+(r+1),l.appendChild(f);return s=["&#173;","<style>",e,"</style>"].join(""),l.id=u,(c?l:h).innerHTML+=s,h.appendChild(l),c||(h.style.background="",o.appendChild(h)),a=n(l,e),c?l.parentNode.removeChild(l):h.parentNode.removeChild(h),!!a},w={}.hasOwnProperty,E;!T(w,"undefined")&&!T(w.call,"undefined")?E=function(e,t){return w.call(e,t)}:E=function(e,t){return t in e&&T(e.constructor.prototype[t],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(t){var n=this;if(typeof n!="function")throw new TypeError;var r=g.call(arguments,1),i=function(){if(this instanceof i){var e=function(){};e.prototype=n.prototype;var s=new e,o=n.apply(s,r.concat(g.call(arguments)));return Object(o)===o?o:s}return n.apply(t,r.concat(g.call(arguments)))};return i});var k=function(n,r){var s=n.join(""),o=r.length;b(s,function(n,r){var s=t.styleSheets[t.styleSheets.length-1],u=s?s.cssRules&&s.cssRules[0]?s.cssRules[0].cssText:s.cssText||"":"",a=n.childNodes,f={};while(o--)f[a[o].id]=a[o];i.touch="ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch||(f.touch&&f.touch.offsetTop)===9},o,r)}([,["@media (",h.join("touch-enabled),("),u,")","{#touch{top:9px;position:absolute}}"].join("")],[,"touch"]);p.touch=function(){return i.touch};for(var L in p)E(p,L)&&(y=L.toLowerCase(),i[y]=p[L](),m.push((i[y]?"":"no-")+y));return S(""),a=l=null,i._version=r,i._prefixes=h,i.testStyles=b,o.className=o.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(s?" js "+m.join(" "):""),i}(window,window.document);return e}),timely.define("scripts/calendar/month_view",["jquery_timely","external_libs/modernizr"],function(e,t){var n=navigator.userAgent.match(/opera/i),r=navigator.userAgent.match(/webkit/i),i=function(t){var n=t.find(".ai1ec-day"),r=t.find(".ai1ec-week:first .ai1ec-day").length;t.find(".ai1ec-month-view .ai1ec-multiday").each(function(){var t=this.parentNode,r=e(this).outerHeight(!0),i=e(".ai1ec-date",t),u=parseInt(i.text(),10),a=e(this).data("endTruncated"),f=parseInt(a?e(n[n.length-1]).text():e(this).data("endDay"),10),l=e(this),c=e(".ai1ec-event",l)[0].style.backgroundColor,h=0,p=f-u+1,d=p,v,m=0;n.each(function(t){var n=e(".ai1ec-date",this),r=e(this.parentNode),i=r.index(),a=parseInt(n.text(),10);if(a>=u&&a<=f){a===u&&(v=parseInt(n.css("marginBottom"),10)+16),h===0&&m++;if(i===0&&a>u&&d!==0){var p=l.next(".ai1ec-popup").andSelf().clone(!1);n.parent().append(p);var g=p.first();g.addClass("ai1ec-multiday-bar ai1ec-multiday-clone"),g.css({position:"absolute",left:"1px",top:parseInt(n.css("marginBottom"),10)+13,backgroundColor:c});var y=d>7?7:d;g.css("width",s(y)),d>7&&g.append(o(1,c)),g.append(o(2,c))}h===0?n.css({marginBottom:v+"px"}):n.css({marginBottom:"+=16px"}),d--,d>0&&i===6&&h++}});if(a){var g=l.find("."+l[0].className.replace(/\s+/igm,".")).last();g.append(o(1,c))}e(this).css({position:"absolute",top:i.outerHeight(!0)-r-1+"px",left:"1px",width:s(m)}),h>0&&e(this).append(o(1,c)),e(this).data("startTruncated")&&e(this).append(o(2,c)).addClass("ai1ec-multiday-bar")}),n.each(function(){var t=e(".ai1ec-date",this),n=parseInt(t.text(),10),r=t.closest(".ai1ec-week"),i=e(this).find("a.ai1ec-event-container:not(.ai1ec-multiday)").length,s=null,o;if(0===i)return;o=r.find("a.ai1ec-multiday[data-end-day]").filter(function(){return e(this).data("startDay")<=n&&e(this).data("endDay")>=n}),o.each(function(){var t=e(this).prop("offsetTop");if(null===s||t>s)s=t}),null!==s&&(s+=3,t.css("marginBottom",s))})},s=function(e){var t;switch(e){case 1:t=97.5;break;case 2:t=198.7;break;case 3:t=300;break;case 4:t=401;break;case 5:r||n?t=507:t=503.4;break;case 6:r||n?t=608:t=603.5;break;case 7:r||n?t=709:t=705}return t+"%"},o=function(t,n){var r=e('<div class="ai1ec-multiday-arrow'+t+'"></div>');return t===1?r.css({borderLeftColor:n}):r.css({borderTopColor:n,borderRightColor:n,borderBottomColor:n}),r};return{extend_multiday_events:i}}),timely.define("libs/frontend_utils",[],function(){var e=function(e){var t,n;t=function(e){if(/&[^;]+;/.test(e)){var t=document.createElement("div");return t.innerHTML=e,t.firstChild?t.firstChild.nodeValue:e}return e};if(typeof e=="string")return t(e);if(typeof e=="object")for(n in e)typeof e[n]=="string"&&(e[n]=t(e[n]));return e},t=function(e,t,n){var r,i,s,o,u;if("#"===e.charAt(0)||"?"===e.charAt(0))e=e.substring(1);r={},e=e.split(t);for(i=0;i<e.length;i++)o=e[i].trim(),-1!==(u=o.indexOf(n))?(s=o.substring(0,u).trim(),o=o.substring(u+1).trim()):(s=o,o=!0),r[s]=o;return r},n=function(e){var n,r,i,s,o;e=t(e,"&","="),i=Object.keys(e),n={ai1ec:{},action:"month"};for(r=0;r<i.length;r++)if("ai1ec"===i[r]){var u=t(e[i[r]],"|",":");for(s in u)if(""!==u[s]){if("action"===s||"view"===s)n.action=u[s];n.ai1ec[s]=u[s]}}else"ai1ec_"===i[r].substring(0,6)?n.ai1ec[i[r].substring(6)]=e[i[r]]:n[i[r]]=e[i[r]];"ai1ec_"!==n.action.substring(0,6)&&(n.action="ai1ec_"+n.action),o="action="+n.action+"&ai1ec=";for(s in n.ai1ec)n.ai1ec.hasOwnProperty(s)&&(o+=escape(s)+":"+escape(n.ai1ec[s])+"|");o=o.substring(0,o.length-1);for(s in n)"ai1ec"!==s&&"action"!==s&&(o+="&"+s+"="+escape(n[s]));return o};return{ai1ec_convert_entities:e,ai1ec_map_internal_query:n,ai1ec_tokenize_uri:t}}),timely.define("external_libs/bootstrap/tab",["jquery_timely"],function(e){var t=function(t){this.element=e(t)};t.prototype.show=function(){var t=this.element,n=t.closest("ul:not(.ai1ec-dropdown-menu)"),r=t.data("target");r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("ai1ec-active"))return;var i=n.find(".ai1ec-active:last a")[0],s=e.Event("show.bs.tab",{relatedTarget:i});t.trigger(s);if(s.isDefaultPrevented())return;var o=e(r);this.activate(t.parent("li"),n),this.activate(o,o.parent(),function(){t.trigger({type:"shown.bs.tab",relatedTarget:i})})},t.prototype.activate=function(t,n,r){function o(){i.removeClass("ai1ec-active").find("> .ai1ec-dropdown-menu > .ai1ec-active").removeClass("ai1ec-active"),t.addClass("ai1ec-active"),s?(t[0].offsetWidth,t.addClass("ai1ec-in")):t.removeClass("ai1ec-fade"),t.parent(".ai1ec-dropdown-menu")&&t.closest("li.ai1ec-dropdown").addClass("ai1ec-active"),r&&r()}var i=n.find("> .ai1ec-active"),s=r&&e.support.transition&&i.hasClass("ai1ec-fade");s?i.one(e.support.transition.end,o).emulateTransitionEnd(150):o(),i.removeClass("ai1ec-in")};var n=e.fn.tab;e.fn.tab=function(n){return this.each(function(){var r=e(this),i=r.data("bs.tab");i||r.data("bs.tab",i=new t(this)),typeof n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e.fn.tab.noConflict=function(){return e.fn.tab=n,this},e(document).on("click.bs.tab.data-api",'[data-toggle="ai1ec-tab"], [data-toggle="ai1ec-pill"]',function(t){t.preventDefault(),e(this).tab("show")})}),timely.define("libs/utils",["jquery_timely","external_libs/bootstrap/tab"],function(e){var t=function(){return{is_float:function(e){return!isNaN(parseFloat(e))},is_valid_coordinate:function(e,t){var n=t?90:180;return this.is_float(e)&&Math.abs(e)<n},convert_comma_to_dot:function(e){return e.replace(",",".")},field_has_value:function(t){var n="#"+t,r=e(n),i=!1;return r.length===1&&(i=e.trim(r.val())!==""),i},make_alert:function(t,n,r){var i="";switch(n){case"error":i="ai1ec-alert ai1ec-alert-danger";break;case"success":i="ai1ec-alert ai1ec-alert-success";break;default:i="ai1ec-alert ai1ec-alert-info"}var s=e("<div />",{"class":i,html:t});if(!r){var o=e("<button>",{type:"button","class":"ai1ec-close","data-dismiss":"ai1ec-alert",text:"×"});s.prepend(o)}return s},get_ajax_url:function(){return typeof window.ajaxurl=="undefined"?"http://localhost/wordpress/wp-admin/admin-ajax.php":window.ajaxurl},isUrl:function(e){var t=/(http|https|webcal):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;return t.test(e)},isValidEmail:function(e){var t=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return t.test(e)},activate_saved_tab_on_page_load:function(t){null===t||undefined===t?e("ul.ai1ec-nav a:first").tab("show"):e("ul.ai1ec-nav a[href="+t+"]").tab("show")},add_query_arg:function(e,t){if("string"!=typeof e)return!1;var n=e.indexOf("?")===-1?"?":"&";return-1!==e.indexOf(n+t[0]+"=")?e:e+n+t[0]+"="+t[1]},create_ai1ec_to_send:function(t){var n=e(t),r=[],i=["action","cat_ids","auth_ids","tag_ids","exact_date","display_filters","no_navigation","events_limit"];return n.each(function(){e.each(this.attributes,function(){this.specified&&this.value&&this.name.match(/^data-/)&&(-1<e.inArray(this.name.replace(/^data\-/,""),i)||this.name.match(/_ids$/))&&r.push(this.name.replace(/^data\-/,"")+"~"+this.value)})}),r.join("|")},init_autoselect:function(){e(document).on("click",".ai1ec-autoselect",function(t){if(e(this).data("clicked")&&t.originalEvent.detail<2)return;e(this).data("clicked",!0);var n;document.body.createTextRange?(n=document.body.createTextRange(),n.moveToElementText(this),n.select()):window.getSelection&&(selection=window.getSelection(),n=document.createRange(),n.selectNodeContents(this),selection.removeAllRanges(),selection.addRange(n))})}}}();return t}),timely.define("external_libs/bootstrap/affix",["jquery_timely"],function(e){var t=function(n,r){this.options=e.extend({},t.DEFAULTS,r),this.$window=e(window).on("scroll.bs.affix.data-api",e.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",e.proxy(this.checkPositionWithEventLoop,this)),this.$element=e(n),this.affixed=this.unpin=this.pinnedOffset=null,this.checkPosition()};t.RESET="ai1ec-affix ai1ec-affix-top ai1ec-affix-bottom",t.DEFAULTS={offset:0},t.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(t.RESET).addClass("ai1ec-affix");var e=this.$window.scrollTop(),n=this.$element.offset();return this.pinnedOffset=n.top-e},t.prototype.checkPositionWithEventLoop=function(){setTimeout(e.proxy(this.checkPosition,this),1)},t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var n=e(document).height(),r=this.$window.scrollTop(),i=this.$element.offset(),s=this.options.offset,o=s.top,u=s.bottom;this.affixed=="top"&&(i.top+=r),typeof s!="object"&&(u=o=s),typeof o=="function"&&(o=s.top(this.$element)),typeof u=="function"&&(u=s.bottom(this.$element));var a=this.unpin!=null&&r+this.unpin<=i.top?!1:u!=null&&i.top+this.$element.height()>=n-u?"bottom":o!=null&&r<=o?"top":!1;if(this.affixed===a)return;this.unpin&&this.$element.css("top","");var f="ai1ec-affix"+(a?"-"+a:""),l=e.Event(f+".bs.affix");this.$element.trigger(l);if(l.isDefaultPrevented())return;this.affixed=a,this.unpin=a=="bottom"?this.getPinnedOffset():null,this.$element.removeClass(t.RESET).addClass(f).trigger(e.Event(f.replace("affix","affixed"))),a=="bottom"&&this.$element.offset({top:n-u-this.$element.height()})};var n=e.fn.affix;e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("bs.affix"),s=typeof n=="object"&&n;i||r.data("bs.affix",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.noConflict=function(){return e.fn.affix=n,this},e(window).on("load",function(){e('[data-spy="ai1ec-affix"]').each(function(){var t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}),timely.define("scripts/common_scripts/frontend/common_event_handlers",["jquery_timely","external_libs/bootstrap/affix"],function(e){var t=function(t){var n=e(this),r=n.next(".ai1ec-popup"),i,s,o;if(r.length===0)return;i=r.html(),s=r.attr("class");var u=n.closest("#ai1ec-calendar-view");u.length===0&&(u=e("body")),n.offset().left-u.offset().left>182?o="left":o="right",n.constrained_popover({content:i,title:"",placement:o,trigger:"manual",html:!0,template:'<div class="timely ai1ec-popover '+s+'">'+'<div class="ai1ec-arrow"></div>'+'<div class="ai1ec-popover-inner">'+'<div class="ai1ec-popover-content"><div></div></div>'+"</div>"+"</div>",container:"body"}).constrained_popover("show")},n=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-popup").length===0&&e(this).constrained_popover("hide")},r=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-tooltip").length===0&&(e(this).remove(),e("body > .ai1ec-tooltip").remove())},i=function(t){if("ontouchstart"in document.documentElement){t.preventDefault();return}var n=e(this),r={template:'<div class="timely ai1ec-tooltip"><div class="ai1ec-tooltip-arrow"></div><div class="ai1ec-tooltip-inner"></div></div>',trigger:"manual",container:"body"};if(n.is(".ai1ec-category .ai1ec-color-swatch")||n.is(".ai1ec-custom-filter .ai1ec-color-swatch"))return;n.is(".ai1ec-tooltip-auto")&&(r.placement=u(250)),n.tooltip(r),n.tooltip("show")},s=function(t){e(this).tooltip("hide")},o=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-tooltip-trigger").length===0&&e(this).remove(),n.closest(".ai1ec-popup").length===0&&e("body > .ai1ec-popup").remove()},u=function(t){return function(n,r){var i,s,o=e(r),u=o.attr("data-placement"),a=e.extend({},o.offset(),{width:r.offsetWidth,height:r.offsetHeight}),f=function(){return!1===i?!1:(i=a.left-t>=0,i?"left":!1)},l=function(){return!1===s?!1:(s=a.left+t<=e(window).width(),s?"right":!1)};switch(u){case"top":return"top";case"bottom":return"bottom";case"left":if(f())return"left";case"right":if(l())return"right";default:if(f())return"left";if(l())return"right";return u}}};return{handle_popover_over:t,handle_popover_out:n,handle_popover_self_out:r,handle_tooltip_over:i,handle_tooltip_out:s,handle_tooltip_self_out:o}}),timely.define("external_libs/bootstrap/tooltip",["jquery_timely"],function(e){var t=function(e,t){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",e,t)};t.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="ai1ec-tooltip"><div class="ai1ec-tooltip-arrow"></div><div class="ai1ec-tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},t.prototype.init=function(t,n,r){this.enabled=!0,this.type=t,this.$element=e(n),this.options=this.getOptions(r);var i=this.options.trigger.split(" ");for(var s=i.length;s--;){var o=i[s];if(o=="click")this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this));else if(o!="manual"){var u=o=="hover"?"mouseenter":"focus",a=o=="hover"?"mouseleave":"blur";this.$element.on(u+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(a+"."+this.type,this.options.selector,e.proxy(this.leave,this))}}this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.getOptions=function(t){return t=e.extend({},this.getDefaults(),this.$element.data(),t),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},t.prototype.getDelegateOptions=function(){var t={},n=this.getDefaults();return this._options&&e.each(this._options,function(e,r){n[e]!=r&&(t[e]=r)}),t},t.prototype.enter=function(t){var n=t instanceof this.constructor?t:e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);clearTimeout(n.timeout),n.hoverState="in";if(!n.options.delay||!n.options.delay.show)return n.show();n.timeout=setTimeout(function(){n.hoverState=="in"&&n.show()},n.options.delay.show)},t.prototype.leave=function(t){var n=t instanceof this.constructor?t:e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);clearTimeout(n.timeout),n.hoverState="out";if(!n.options.delay||!n.options.delay.hide)return n.hide();n.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},t.prototype.show=function(){var t=e.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(t);if(t.isDefaultPrevented())return;var n=this.tip();this.setContent(),this.options.animation&&n.addClass("ai1ec-fade");var r=typeof this.options.placement=="function"?this.options.placement.call(this,n[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,s=i.test(r);s&&(r=r.replace(i,"")||"top"),n.detach().css({top:0,left:0,display:"block"}).addClass("ai1ec-"+r),this.options.container?n.appendTo(this.options.container):n.insertAfter(this.$element);var o=this.getPosition(),u=n[0].offsetWidth,a=n[0].offsetHeight;if(s){var f=this.$element.parent(),l=r,c=document.documentElement.scrollTop||document.body.scrollTop,h=this.options.container=="body"?window.innerWidth:f.outerWidth(),p=this.options.container=="body"?window.innerHeight:f.outerHeight(),d=this.options.container=="body"?0:f.offset().left;r=r=="bottom"&&o.top+o.height+a-c>p?"top":r=="top"&&o.top-c-a<0?"bottom":r=="right"&&o.right+u>h?"left":r=="left"&&o.left-u<d?"right":r,n.removeClass("ai1ec-"+l).addClass("ai1ec-"+r)}var v=this.getCalculatedOffset(r,o,u,a);this.applyPlacement(v,r),this.$element.trigger("shown.bs."+this.type)}},t.prototype.applyPlacement=function(e,t){var n,r=this.tip(),i=r[0].offsetWidth,s=r[0].offsetHeight,o=parseInt(r.css("margin-top"),10),u=parseInt(r.css("margin-left"),10);isNaN(o)&&(o=0),isNaN(u)&&(u=0),e.top=e.top+o,e.left=e.left+u,r.offset(e).addClass("ai1ec-in");var a=r[0].offsetWidth,f=r[0].offsetHeight;t=="top"&&f!=s&&(n=!0,e.top=e.top+s-f);if(/bottom|top/.test(t)){var l=0;e.left<0&&(l=e.left*-2,e.left=0,r.offset(e),a=r[0].offsetWidth,f=r[0].offsetHeight),this.replaceArrow(l-i+a,a,"left")}else this.replaceArrow(f-s,f,"top");n&&r.offset(e)},t.prototype.replaceArrow=function(e,t,n){this.arrow().css(n,e?50*(1-e/t)+"%":"")},t.prototype.setContent=function(){var e=this.tip(),t=this.getTitle();e.find(".ai1ec-tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("ai1ec-fade ai1ec-in ai1ec-top ai1ec-bottom ai1ec-left ai1ec-right")},t.prototype.hide=function(){function i(){t.hoverState!="in"&&n.detach()}var t=this,n=this.tip(),r=e.Event("hide.bs."+this.type);this.$element.trigger(r);if(r.isDefaultPrevented())return;return n.removeClass("ai1ec-in"),e.support.transition&&this.$tip.hasClass("ai1ec-fade")?n.one(e.support.transition.end,i).emulateTransitionEnd(150):i(),this.$element.trigger("hidden.bs."+this.type),this},t.prototype.fixTitle=function(){var e=this.$element;(e.attr("title")||typeof e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").attr("title","")},t.prototype.hasContent=function(){return this.getTitle()},t.prototype.getPosition=function(){var t=this.$element[0];return e.extend({},typeof t.getBoundingClientRect=="function"?t.getBoundingClientRect():{width:t.offsetWidth,height:t.offsetHeight},this.$element.offset())},t.prototype.getCalculatedOffset=function(e,t,n,r){return e=="bottom"?{top:t.top+t.height,left:t.left+t.width/2-n/2}:e=="top"?{top:t.top-r,left:t.left+t.width/2-n/2}:e=="left"?{top:t.top+t.height/2-r/2,left:t.left-n}:{top:t.top+t.height/2-r/2,left:t.left+t.width}},t.prototype.getTitle=function(){var e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title),e},t.prototype.tip=function(){return this.$tip=this.$tip||e(this.options.template)},t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".ai1ec-tooltip-arrow")},t.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},t.prototype.enable=function(){this.enabled=!0},t.prototype.disable=function(){this.enabled=!1},t.prototype.toggleEnabled=function(){this.enabled=!this.enabled},t.prototype.toggle=function(t){var n=t?e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;n.tip().hasClass("ai1ec-in")?n.leave(n):n.enter(n)},t.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var n=e.fn.tooltip;e.fn.tooltip=function(n){return this.each(function(){var r=e(this),i=r.data("bs.tooltip"),s=typeof n=="object"&&n;i||r.data("bs.tooltip",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.noConflict=function(){return e.fn.tooltip=n,this}}),timely.define("external_libs/bootstrap/popover",["jquery_timely","external_libs/bootstrap/tooltip"],function(e){var t=function(e,t){this.init("popover",e,t)};if(!e.fn.tooltip)throw new Error("Popover requires tooltip.js");t.DEFAULTS=e.extend({},e.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="ai1ec-popover"><div class="ai1ec-arrow"></div><h3 class="ai1ec-popover-title"></h3><div class="ai1ec-popover-content"></div></div>'}),t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype),t.prototype.constructor=t,t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.setContent=function(){var e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".ai1ec-popover-title")[this.options.html?"html":"text"](t),e.find(".ai1ec-popover-content")[this.options.html?"html":"text"](n),e.removeClass("ai1ec-fade ai1ec-top ai1ec-bottom ai1ec-left ai1ec-right ai1ec-in"),e.find(".ai1ec-popover-title").html()||e.find(".ai1ec-popover-title").hide()},t.prototype.hasContent=function(){return this.getTitle()||this.getContent()},t.prototype.getContent=function(){var e=this.$element,t=this.options;return e.attr("data-content")||(typeof t.content=="function"?t.content.call(e[0]):t.content)},t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".ai1ec-arrow")},t.prototype.tip=function(){return this.$tip||(this.$tip=e(this.options.template)),this.$tip};var n=e.fn.popover;e.fn.popover=function(n){return this.each(function(){var r=e(this),i=r.data("bs.popover"),s=typeof n=="object"&&n;i||r.data("bs.popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.noConflict=function(){return e.fn.popover=n,this}}),timely.define("external_libs/constrained_popover",["jquery_timely","external_libs/bootstrap/popover"],function(e){var t=function(e,t){this.init("constrained_popover",e,t)};t.DEFAULTS=e.extend({},e.fn.popover.Constructor.DEFAULTS,{container:"",content:this.options}),t.prototype=e.extend({},e.fn.popover.Constructor.prototype),t.prototype.constructor=t,t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.applyPlacement=function(t,n){e.fn.popover.Constructor.prototype.applyPlacement.call(this,t,n);var r=this.tip(),i=r[0].offsetWidth,s=r[0].offsetHeight,o=this.getPosition(),u={};switch(n){case"left":newPos=this.defineBounds(o),typeof newPos.top=="undefined"?u.top=o.top+o.height/2-s/2:u.top=newPos.top-s/2,typeof newPos.left=="undefined"?u.left=o.left-i:u.left=newPos.left-i,r.offset(u);break;case"right":newPos=this.defineBounds(o),typeof newPos.top=="undefined"?u.top=o.top+o.height/2-s/2:u.top=newPos.top-s/2,typeof newPos.left=="undefined"?u.left=o.left+o.width:u.left=newPos.left+o.width,r.offset(u)}},t.prototype.defineBounds=function(t){var n,r,i,s,o,u={},a=e("body"===this.options.container?document:this.options.container);return a.length?(n=a.offset()||{top:0,left:0},r=n.top,i=n.left,s=r+a.height(),o=i+a.width(),t.top+t.height/2<r&&(u.top=r),t.top+t.height/2>s&&(u.top=s),t.left-t.width/2<i&&(u.left=i),t.left-t.width/2>o&&(u.left=o),u):!1};var n=e.fn.popover;e.fn.constrained_popover=function(n){return this.each(function(){var r=e(this),i=r.data("ai1ec.constrained_popover"),s=typeof n=="object"&&n;i||r.data("ai1ec.constrained_popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.constrained_popover.Constructor=t,e.fn.constrained_popover.noConflict=function(){return e.fn.constrained_popover=n,this}}),timely.define("external_libs/bootstrap/dropdown",["jquery_timely"],function(e){function i(){e(t).remove(),e(n).each(function(t){var n=s(e(this));if(!n.hasClass("ai1ec-open"))return;n.trigger(t=e.Event("hide.bs.dropdown"));if(t.isDefaultPrevented())return;n.removeClass("ai1ec-open").trigger("hidden.bs.dropdown")})}function s(t){var n=t.attr("data-target");n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,""));var r=n&&e(n);return r&&r.length?r:t.parent()}var t=".ai1ec-dropdown-backdrop",n="[data-toggle=ai1ec-dropdown]",r=function(t){e(t).on("click.bs.dropdown",this.toggle)};r.prototype.toggle=function(t){var n=e(this);if(n.is(".ai1ec-disabled, :disabled"))return;var r=s(n),o=r.hasClass("ai1ec-open");i();if(!o){"ontouchstart"in document.documentElement&&!r.closest(".ai1ec-navbar-nav").length&&e('<div class="ai1ec-dropdown-backdrop"/>').insertAfter(e(this)).on("click",i),r.trigger(t=e.Event("show.bs.dropdown"));if(t.isDefaultPrevented())return;r.toggleClass("ai1ec-open").trigger("shown.bs.dropdown"),n.focus()}return!1},r.prototype.keydown=function(t){if(!/(38|40|27)/.test(t.keyCode))return;var r=e(this);t.preventDefault(),t.stopPropagation();if(r.is(".ai1ec-disabled, :disabled"))return;var i=s(r),o=i.hasClass("ai1ec-open");if(!o||o&&t.keyCode==27)return t.which==27&&i.find(n).focus(),r.click();var u=e("[role=menu] li:not(.ai1ec-divider):visible a",i);if(!u.length)return;var a=u.index(u.filter(":focus"));t.keyCode==38&&a>0&&a--,t.keyCode==40&&a<u.length-1&&a++,~a||(a=0),u.eq(a).focus()};var o=e.fn.dropdown;e.fn.dropdown=function(t){return this.each(function(){var n=e(this),i=n.data("bs.dropdown");i||n.data("bs.dropdown",i=new r(this)),typeof t=="string"&&i[t].call(n)})},e.fn.dropdown.Constructor=r,e.fn.dropdown.noConflict=function(){return e.fn.dropdown=o,this},e(document).on("click.bs.dropdown.data-api",i).on("click.bs.dropdown.data-api",".ai1ec-dropdown form",function(e){e.stopPropagation()}).on("click.bs.dropdown.data-api",n,r.prototype.toggle).on("keydown.bs.dropdown.data-api",n+", [role=menu]",r.prototype.keydown)}),timely.define("scripts/common_scripts/frontend/common_frontend",["jquery_timely","domReady","scripts/common_scripts/frontend/common_event_handlers","ai1ec_calendar","external_libs/modernizr","external_libs/bootstrap/tooltip","external_libs/constrained_popover","external_libs/bootstrap/dropdown"],function(e,t,n,r,i){var s=!1,o=function(){s=!0,e(document).on("mouseenter",".ai1ec-popup-trigger",n.handle_popover_over),e(document).on("mouseleave",".ai1ec-popup-trigger",n.handle_popover_out),e(document).on("mouseleave",".ai1ec-popup",n.handle_popover_self_out),e(document).on("mouseenter",".ai1ec-tooltip-trigger",n.handle_tooltip_over),e(document).on("mouseleave",".ai1ec-tooltip-trigger",n.handle_tooltip_out),e(document).on("mouseleave",".ai1ec-tooltip",n.handle_tooltip_self_out)},u=function(){t(function(){o()})},a=function(){return s};return{start:u,are_event_listeners_attached:a}}),timely.define("external_libs/select2",["jquery_timely"],function(e){(function(e){typeof e.fn.each2=="undefined"&&e.fn.extend({each2:function(t){var n=e([0]),r=-1,i=this.length;while(++r<i&&(n.context=n[0]=this[r])&&t.call(n[0],r,n)!==!1);return this}})})(e),function(e,t){function l(e,t){var n=0,r=t.length;for(;n<r;n+=1)if(c(e,t[n]))return n;return-1}function c(e,n){return e===n?!0:e===t||n===t?!1:e===null||n===null?!1:e.constructor===String?e===n+"":n.constructor===String?n===e+"":!1}function h(t,n){var r,i,s;if(t===null||t.length<1)return[];r=t.split(n);for(i=0,s=r.length;i<s;i+=1)r[i]=e.trim(r[i]);return r}function p(e){return e.outerWidth(!1)-e.width()}function d(n){var r="keyup-change-value";n.bind("keydown",function(){e.data(n,r)===t&&e.data(n,r,n.val())}),n.bind("keyup",function(){var i=e.data(n,r);i!==t&&n.val()!==i&&(e.removeData(n,r),n.trigger("keyup-change"))})}function v(n){n.bind("mousemove",function(n){var r=a;(r===t||r.x!==n.pageX||r.y!==n.pageY)&&e(n.target).trigger("mousemove-filtered",n)})}function m(e,n,r){r=r||t;var i;return function(){var t=arguments;window.clearTimeout(i),i=window.setTimeout(function(){n.apply(r,t)},e)}}function g(e){var t=!1,n;return function(){return t===!1&&(n=e(),t=!0),n}}function y(e,t){var n=m(e,function(e){t.trigger("scroll-debounced",e)});t.bind("scroll",function(e){l(e.target,t.get())>=0&&n(e)})}function b(e){if(e[0]===document.activeElement)return;window.setTimeout(function(){var t=e[0],n=e.val().length,r;e.focus(),t.setSelectionRange?t.setSelectionRange(n,n):t.createTextRange&&(r=t.createTextRange(),r.collapse(!0),r.moveEnd("character",n),r.moveStart("character",n),r.select())},0)}function w(e){e.preventDefault(),e.stopPropagation()}function E(e){e.preventDefault(),e.stopImmediatePropagation()}function S(t){if(!u){var n=t[0].currentStyle||window.getComputedStyle(t[0],null);u=e(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:n.fontSize,fontFamily:n.fontFamily,fontStyle:n.fontStyle,fontWeight:n.fontWeight,letterSpacing:n.letterSpacing,textTransform:n.textTransform,whiteSpace:"nowrap"}),u.attr("class","select2-sizer"),e("body").append(u)}return u.text(t.val()),u.width()}function x(t,n,r){var i,s=[],o;i=t.attr("class"),typeof i=="string"&&e(i.split(" ")).each2(function(){this.indexOf("select2-")===0&&s.push(this)}),i=n.attr("class"),typeof i=="string"&&e(i.split(" ")).each2(function(){this.indexOf("select2-")!==0&&(o=r(this),typeof o=="string"&&o.length>0&&s.push(this))}),t.attr("class",s.join(" "))}function T(e,t,n,r){var i=e.toUpperCase().indexOf(t.toUpperCase()),s=t.length;if(i<0){n.push(r(e));return}n.push(r(e.substring(0,i))),n.push("<span class='select2-match'>"),n.push(r(e.substring(i,i+s))),n.push("</span>"),n.push(r(e.substring(i+s,e.length)))}function N(t){var n,r=0,i=null,s=t.quietMillis||100,o=t.url,u=this;return function(a){window.clearTimeout(n),n=window.setTimeout(function(){r+=1;var n=r,s=t.data,f=o,l=t.transport||e.ajax,c=t.type||"GET",h={};s=s?s.call(u,a.term,a.page,a.context):null,f=typeof f=="function"?f.call(u,a.term,a.page,a.context):f,null!==i&&i.abort(),t.params&&(e.isFunction(t.params)?e.extend(h,t.params.call(u)):e.extend(h,t.params)),e.extend(h,{url:f,dataType:t.dataType,data:s,type:c,cache:!1,success:function(e){if(n<r)return;var i=t.results(e,a.page);a.callback(i)}}),i=l.call(u,h)},s)}}function C(t){var n=t,r,i,s=function(e){return""+e.text};e.isArray(n)&&(i=n,n={results:i}),e.isFunction(n)===!1&&(i=n,n=function(){return i});var o=n();return o.text&&(s=o.text,e.isFunction(s)||(r=n.text,s=function(e){return e[r]})),function(t){var r=t.term,i={results:[]},o;if(r===""){t.callback(n());return}o=function(n,i){var u,a;n=n[0];if(n.children){u={};for(a in n)n.hasOwnProperty(a)&&(u[a]=n[a]);u.children=[],e(n.children).each2(function(e,t){o(t,u.children)}),(u.children.length||t.matcher(r,s(u),n))&&i.push(u)}else t.matcher(r,s(n),n)&&i.push(n)},e(n().results).each2(function(e,t){o(t,i.results)}),t.callback(i)}}function k(n){var r=e.isFunction(n);return function(i){var s=i.term,o={results:[]};e(r?n():n).each(function(){var e=this.text!==t,n=e?this.text:this;(s===""||i.matcher(s,n))&&o.results.push(e?this:{id:this,text:this})}),i.callback(o)}}function L(t,n){if(e.isFunction(t))return!0;if(!t)return!1;throw new Error("formatterName must be a function or a falsy value")}function A(t){return e.isFunction(t)?t():t}function O(t){var n=0;return e.each(t,function(e,t){t.children?n+=O(t.children):n++}),n}function M(e,n,r,i){var s=e,o=!1,u,a,f,l,h;if(!i.createSearchChoice||!i.tokenSeparators||i.tokenSeparators.length<1)return t;for(;;){a=-1;for(f=0,l=i.tokenSeparators.length;f<l;f++){h=i.tokenSeparators[f],a=e.indexOf(h);if(a>=0)break}if(a<0)break;u=e.substring(0,a),e=e.substring(a+h.length);if(u.length>0){u=i.createSearchChoice(u,n);if(u!==t&&u!==null&&i.id(u)!==t&&i.id(u)!==null){o=!1;for(f=0,l=n.length;f<l;f++)if(c(i.id(u),i.id(n[f]))){o=!0;break}o||r(u)}}}if(s!==e)return e}function _(t,n){var r=function(){};return r.prototype=new t,r.prototype.constructor=r,r.prototype.parent=t.prototype,r.prototype=e.extend(r.prototype,n),r}var n,r,i,s,o,u,a,f;n={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(e){e=e.which?e.which:e;switch(e){case n.LEFT:case n.RIGHT:case n.UP:case n.DOWN:return!0}return!1},isControl:function(e){var t=e.which;switch(t){case n.SHIFT:case n.CTRL:case n.ALT:return!0}return e.metaKey?!0:!1},isFunctionKey:function(e){return e=e.which?e.which:e,e>=112&&e<=123}},f=e(document),o=function(){var e=1;return function(){return e++}}(),f.bind("mousemove",function(e){a={x:e.pageX,y:e.pageY}}),r=_(Object,{bind:function(e){var t=this;return function(){e.apply(t,arguments)}},init:function(n){var r,i,s=".select2-results",u;this.opts=n=this.prepareOpts(n),this.id=n.id,n.element.data("select2")!==t&&n.element.data("select2")!==null&&this.destroy(),this.enabled=!0,this.container=this.createContainer(),this.containerId="s2id_"+(n.element.attr("id")||"autogen"+o()),this.containerSelector="#"+this.containerId.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.body=g(function(){return n.element.closest("body")}),x(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.css(A(n.containerCss)),this.container.addClass(A(n.containerCssClass)),this.elementTabIndex=this.opts.element.attr("tabIndex"),this.opts.element.data("select2",this).addClass("select2-offscreen").bind("focus.select2",function(){e(this).select2("focus")}).attr("tabIndex","-1").before(this.container),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),this.dropdown.addClass(A(n.dropdownCssClass)),this.dropdown.data("select2",this),this.results=r=this.container.find(s),this.search=i=this.container.find("input.select2-input"),i.attr("tabIndex",this.elementTabIndex),this.resultsPage=0,this.context=null,this.initContainer(),v(this.results),this.dropdown.delegate(s,"mousemove-filtered touchstart touchmove touchend",this.bind(this.highlightUnderEvent)),y(80,this.results),this.dropdown.delegate(s,"scroll-debounced",this.bind(this.loadMoreIfNeeded)),e.fn.mousewheel&&r.mousewheel(function(e,t,n,i){var s=r.scrollTop(),o;i>0&&s-i<=0?(r.scrollTop(0),w(e)):i<0&&r.get(0).scrollHeight-r.scrollTop()+i<=r.height()&&(r.scrollTop(r.get(0).scrollHeight-r.height()),w(e))}),d(i),i.bind("keyup-change input paste",this.bind(this.updateResults)),i.bind("focus",function(){i.addClass("select2-focused")}),i.bind("blur",function(){i.removeClass("select2-focused")}),this.dropdown.delegate(s,"mouseup",this.bind(function(t){e(t.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(t),this.selectHighlighted(t))})),this.dropdown.bind("click mouseup mousedown",function(e){e.stopPropagation()}),e.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),(n.element.is(":disabled")||n.element.is("[readonly='readonly']"))&&this.disable()},destroy:function(){var e=this.opts.element.data("select2");this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),e!==t&&(e.container.remove(),e.dropdown.remove(),e.opts.element.removeClass("select2-offscreen").removeData("select2").unbind(".select2").attr({tabIndex:this.elementTabIndex}).show())},prepareOpts:function(n){var r,i,s,o;r=n.element,r.get(0).tagName.toLowerCase()==="select"&&(this.select=i=n.element),i&&e.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in n)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.")}),n=e.extend({},{populateResults:function(r,i,s){var o,u,a,f,l=this.opts.id,c=this;o=function(r,i,u){var a,f,h,p,d,v,m,g,y,b;r=n.sortResults(r,i,s);for(a=0,f=r.length;a<f;a+=1)h=r[a],d=h.disabled===!0,p=!d&&l(h)!==t,v=h.children&&h.children.length>0,m=e("<li></li>"),m.addClass("select2-results-dept-"+u),m.addClass("select2-result"),m.addClass(p?"select2-result-selectable":"select2-result-unselectable"),d&&m.addClass("select2-disabled"),v&&m.addClass("select2-result-with-children"),m.addClass(c.opts.formatResultCssClass(h)),g=e(document.createElement("div")),g.addClass("select2-result-label"),b=n.formatResult(h,g,s,c.opts.escapeMarkup),b!==t&&g.html(b),m.append(g),v&&(y=e("<ul></ul>"),y.addClass("select2-result-sub"),o(h.children,y,u+1),m.append(y)),m.data("select2-data",h),i.append(m)},o(i,r,0)}},e.fn.select2.defaults,n),typeof n.id!="function"&&(s=n.id,n.id=function(e){return e[s]});if(e.isArray(n.element.data("select2Tags"))){if("tags"in n)throw"tags specified as both an attribute 'data-select2-tags' and in options of Select2 "+n.element.attr("id");n.tags=n.element.attr("data-select2-tags")}i?(n.query=this.bind(function(n){var i={results:[],more:!1},s=n.term,o,u,a;a=function(e,t){var r;e.is("option")?n.matcher(s,e.text(),e)&&t.push({id:e.attr("value"),text:e.text(),element:e.get(),css:e.attr("class"),disabled:c(e.attr("disabled"),"disabled")}):e.is("optgroup")&&(r={text:e.attr("label"),children:[],element:e.get(),css:e.attr("class")},e.children().each2(function(e,t){a(t,r.children)}),r.children.length>0&&t.push(r))},o=r.children(),this.getPlaceholder()!==t&&o.length>0&&(u=o[0],e(u).text()===""&&(o=o.not(u))),o.each2(function(e,t){a(t,i.results)}),n.callback(i)}),n.id=function(e){return e.id},n.formatResultCssClass=function(e){return e.css}):"query"in n||("ajax"in n?(o=n.element.data("ajax-url"),o&&o.length>0&&(n.ajax.url=o),n.query=N.call(n.element,n.ajax)):"data"in n?n.query=C(n.data):"tags"in n&&(n.query=k(n.tags),n.createSearchChoice===t&&(n.createSearchChoice=function(e){return{id:e,text:e}}),n.initSelection===t&&(n.initSelection=function(t,r){var i=[];e(h(t.val(),n.separator)).each(function(){var t=this,r=this,s=n.tags;e.isFunction(s)&&(s=s()),e(s).each(function(){if(c(this.id,t))return r=this.text,!1}),i.push({id:t,text:r})}),r(i)})));if(typeof n.query!="function")throw"query function not defined for Select2 "+n.element.attr("id");return n},monitorSource:function(){var e=this.opts.element,t;e.bind("change.select2",this.bind(function(e){this.opts.element.data("select2-change-triggered")!==!0&&this.initSelection()})),t=this.bind(function(){var e,t,n=this;e=this.opts.element.attr("disabled")!=="disabled",t=this.opts.element.attr("readonly")==="readonly",e=e&&!t,this.enabled!==e&&(e?this.enable():this.disable()),x(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.addClass(A(this.opts.containerCssClass)),x(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(A(this.opts.dropdownCssClass))}),e.bind("propertychange.select2 DOMAttrModified.select2",t),typeof WebKitMutationObserver!="undefined"&&(this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),this.propertyObserver=new WebKitMutationObserver(function(e){e.forEach(t)}),this.propertyObserver.observe(e.get(0),{attributes:!0,subtree:!1}))},triggerChange:function(t){t=t||{},t=e.extend({},t,{type:"change",val:this.val()}),this.opts.element.data("select2-change-triggered",!0),this.opts.element.trigger(t),this.opts.element.data("select2-change-triggered",!1),this.opts.element.click(),this.opts.blurOnChange&&this.opts.element.blur()},enable:function(){if(this.enabled)return;this.enabled=!0,this.container.removeClass("select2-container-disabled"),this.opts.element.removeAttr("disabled")},disable:function(){if(!this.enabled)return;this.close(),this.enabled=!1,this.container.addClass("select2-container-disabled"),this.opts.element.attr("disabled","disabled")},opened:function(){return this.container.hasClass("select2-dropdown-open")},positionDropdown:function(){var t=this.container.offset(),n=this.container.outerHeight(!1),r=this.container.outerWidth(!1),i=this.dropdown.outerHeight(!1),s=e(window).scrollLeft()+e(window).width(),o=e(window).scrollTop()+e(window).height(),u=t.top+n,a=t.left,f=u+i<=o,l=t.top-i>=this.body().scrollTop(),c=this.dropdown.outerWidth(!1),h=a+c<=s,p=this.dropdown.hasClass("select2-drop-above"),d,v,m;this.body().css("position")!=="static"&&(d=this.body().offset(),u-=d.top,a-=d.left),p?(v=!0,!l&&f&&(v=!1)):(v=!1,!f&&l&&(v=!0)),h||(a=t.left+r-c),v?(u=t.top-i,this.container.addClass("select2-drop-above"),this.dropdown.addClass("select2-drop-above")):(this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")),m=e.extend({top:u,left:a,width:r},A(this.opts.dropdownCss)),this.dropdown.css(m)},shouldOpen:function(){var t;return this.opened()?!1:(t=e.Event("opening"),this.opts.element.trigger(t),!t.isDefaultPrevented())},clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")},open:function(){return this.shouldOpen()?(window.setTimeout(this.bind(this.opening),1),!0):!1},opening:function(){var t=this.containerId,n="scroll."+t,r="resize."+t,i="orientationchange."+t,s;this.clearDropdownAlignmentPreference(),this.container.addClass("select2-dropdown-open").addClass("select2-container-active"),this.dropdown[0]!==this.body().children().last()[0]&&this.dropdown.detach().appendTo(this.body()),this.updateResults(!0),s=e("#select2-drop-mask"),s.length==0&&(s=e(document.createElement("div")),s.attr("id","select2-drop-mask").attr("class","select2-drop-mask"),s.hide(),s.appendTo(this.body()),s.bind("mousedown touchstart",function(t){var n=e("#select2-drop"),r;n.length>0&&(r=n.data("select2"),r.opts.selectOnBlur&&r.selectHighlighted({noFocus:!0}),r.close())})),this.dropdown.prev()[0]!==s[0]&&this.dropdown.before(s),e("#select2-drop").removeAttr("id"),this.dropdown.attr("id","select2-drop"),s.css({width:document.documentElement.scrollWidth,height:document.documentElement.scrollHeight}),s.show(),this.dropdown.show(),this.positionDropdown(),this.dropdown.addClass("select2-drop-active"),this.ensureHighlightVisible();var o=this;this.container.parents().add(window).each(function(){e(this).bind(r+" "+n+" "+i,function(t){e("#select2-drop-mask").css({width:document.documentElement.scrollWidth,height:document.documentElement.scrollHeight}),o.positionDropdown()})}),this.focusSearch()},close:function(){if(!this.opened())return;var t=this.containerId,n="scroll."+t,r="resize."+t,i="orientationchange."+t;this.container.parents().add(window).each(function(){e(this).unbind(n).unbind(r).unbind(i)}),this.clearDropdownAlignmentPreference(),e("#select2-drop-mask").hide(),this.dropdown.removeAttr("id"),this.dropdown.hide(),this.container.removeClass("select2-dropdown-open"),this.results.empty(),this.clearSearch(),this.opts.element.trigger(e.Event("close"))},clearSearch:function(){},getMaximumSelectionSize:function(){return A(this.opts.maximumSelectionSize)},ensureHighlightVisible:function(){var t=this.results,n,r,i,s,o,u,a;r=this.highlight();if(r<0)return;if(r==0){t.scrollTop(0);return}n=this.findHighlightableChoices(),i=e(n[r]),s=i.offset().top+i.outerHeight(!0),r===n.length-1&&(a=t.find("li.select2-more-results"),a.length>0&&(s=a.offset().top+a.outerHeight(!0))),o=t.offset().top+t.outerHeight(!0),s>o&&t.scrollTop(t.scrollTop()+(s-o)),u=i.offset().top-t.offset().top,u<0&&i.css("display")!="none"&&t.scrollTop(t.scrollTop()+u)},findHighlightableChoices:function(){var e=this.results.find(".select2-result-selectable:not(.select2-selected):not(.select2-disabled)");return this.results.find(".select2-result-selectable:not(.select2-selected):not(.select2-disabled)")},moveHighlight:function(t){var n=this.findHighlightableChoices(),r=this.highlight();while(r>-1&&r<n.length){r+=t;var i=e(n[r]);if(i.hasClass("select2-result-selectable")&&!i.hasClass("select2-disabled")&&!i.hasClass("select2-selected")){this.highlight(r);break}}},highlight:function(t){var n=this.findHighlightableChoices(),r,i;if(arguments.length===0)return l(n.filter(".select2-highlighted")[0],n.get());t>=n.length&&(t=n.length-1),t<0&&(t=0),this.results.find(".select2-highlighted").removeClass("select2-highlighted"),r=e(n[t]),r.addClass("select2-highlighted"),this.ensureHighlightVisible(),i=r.data("select2-data"),i&&this.opts.element.trigger({type:"highlight",val:this.id(i),choice:i})},countSelectableResults:function(){return this.findHighlightableChoices().length},highlightUnderEvent:function(t){var n=e(t.target).closest(".select2-result-selectable");if(n.length>0&&!n.is(".select2-highlighted")){var r=this.findHighlightableChoices();this.highlight(r.index(n))}else n.length==0&&this.results.find(".select2-highlighted").removeClass("select2-highlighted")},loadMoreIfNeeded:function(){var e=this.results,t=e.find("li.select2-more-results"),n,r=-1,i=this.resultsPage+1,s=this,o=this.search.val(),u=this.context;if(t.length===0)return;n=t.offset().top-e.offset().top-e.height(),n<=this.opts.loadMorePadding&&(t.addClass("select2-active"),this.opts.query({element:this.opts.element,term:o,page:i,context:u,matcher:this.opts.matcher,callback:this.bind(function(n){if(!s.opened())return;s.opts.populateResults.call(this,e,n.results,{term:o,page:i,context:u}),n.more===!0?(t.detach().appendTo(e).text(s.opts.formatLoadMore(i+1)),window.setTimeout(function(){s.loadMoreIfNeeded()},10)):t.remove(),s.positionDropdown(),s.resultsPage=i,s.context=n.context})}))},tokenize:function(){},updateResults:function(n){function f(){i.scrollTop(0),r.removeClass("select2-active"),u.positionDropdown()}function l(e){i.html(e),f()}var r=this.search,i=this.results,s=this.opts,o,u=this,a;if(n!==!0&&(this.showSearchInput===!1||!this.opened()))return;r.addClass("select2-active");var h=this.getMaximumSelectionSize();if(h>=1){o=this.data();if(e.isArray(o)&&o.length>=h&&L(s.formatSelectionTooBig,"formatSelectionTooBig")){l("<li class='select2-selection-limit'>"+s.formatSelectionTooBig(h)+"</li>");return}}if(r.val().length<s.minimumInputLength){L(s.formatInputTooShort,"formatInputTooShort")?l("<li class='select2-no-results'>"+s.formatInputTooShort(r.val(),s.minimumInputLength)+"</li>"):l("");return}s.formatSearching()&&n===!0&&l("<li class='select2-searching'>"+s.formatSearching()+"</li>");if(s.maximumInputLength&&r.val().length>s.maximumInputLength){L(s.formatInputTooLong,"formatInputTooLong")?l("<li class='select2-no-results'>"+s.formatInputTooLong(r.val(),s.maximumInputLength)+"</li>"):l("");return}a=this.tokenize(),a!=t&&a!=null&&r.val(a),this.resultsPage=1,s.query({element:s.element,term:r.val(),page:this.resultsPage,context:null,matcher:s.matcher,callback:this.bind(function(o){var a;if(!this.opened())return;this.context=o.context===t?null:o.context,this.opts.createSearchChoice&&r.val()!==""&&(a=this.opts.createSearchChoice.call(null,r.val(),o.results),a!==t&&a!==null&&u.id(a)!==t&&u.id(a)!==null&&e(o.results).filter(function(){return c(u.id(this),u.id(a))}).length===0&&o.results.unshift(a));if(o.results.length===0&&L(s.formatNoMatches,"formatNoMatches")){l("<li class='select2-no-results'>"+s.formatNoMatches(r.val())+"</li>");return}i.empty(),u.opts.populateResults.call(this,i,o.results,{term:r.val(),page:this.resultsPage,context:null}),o.more===!0&&L(s.formatLoadMore,"formatLoadMore")&&(i.append("<li class='select2-more-results'>"+u.opts.escapeMarkup(s.formatLoadMore(this.resultsPage))+"</li>"),window.setTimeout(function(){u.loadMoreIfNeeded()},10)),this.postprocessResults(o,n),f()})})},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0}),this.close(),this.container.removeClass("select2-container-active"),this.search[0]===document.activeElement&&this.search.blur(),this.clearSearch(),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){b(this.search)},selectHighlighted:function(e){var t=this.highlight(),n=this.results.find(".select2-highlighted"),r=n.closest(".select2-result").data("select2-data");r&&(this.highlight(t),this.onSelect(r,e))},getPlaceholder:function(){return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder},initContainerWidth:function(){function n(){var n,r,i,s,o;if(this.opts.width==="off")return null;if(this.opts.width==="element")return this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px";if(this.opts.width==="copy"||this.opts.width==="resolve"){n=this.opts.element.attr("style");if(n!==t){r=n.split(";");for(s=0,o=r.length;s<o;s+=1){i=r[s].replace(/\s/g,"").match(/width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/);if(i!==null&&i.length>=1)return i[1]}}return this.opts.width==="resolve"?(n=this.opts.element.css("width"),n.indexOf("%")>0?n:this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px"):null}return e.isFunction(this.opts.width)?this.opts.width():this.opts.width}var r=n.call(this);r!==null&&this.container.css("width",r)}}),i=_(r,{createContainer:function(){var t=e(document.createElement("div")).attr({"class":"select2-container"}).html(["<a href='javascript:void(0)' onclick='return false;' class='select2-choice' tabindex='-1'>"," <span></span><abbr class='select2-search-choice-close' style='display:none;'></abbr>"," <div><b></b></div>","</a>","<input class='select2-focusser select2-offscreen' type='text'/>","<div class='select2-drop' style='display:none'>"," <div class='select2-search'>"," <input type='text' autocomplete='off' class='select2-input'/>"," </div>"," <ul class='select2-results'>"," </ul>","</div>"].join(""));return t},disable:function(){if(!this.enabled)return;this.parent.disable.apply(this,arguments),this.focusser.attr("disabled","disabled")},enable:function(){if(this.enabled)return;this.parent.enable.apply(this,arguments),this.focusser.removeAttr("disabled")},opening:function(){this.parent.opening.apply(this,arguments),this.focusser.attr("disabled","disabled"),this.opts.element.trigger(e.Event("open"))},close:function(){if(!this.opened())return;this.parent.close.apply(this,arguments),this.focusser.removeAttr("disabled"),b(this.focusser)},focus:function(){this.opened()?this.close():(this.focusser.removeAttr("disabled"),this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.removeAttr("disabled"),this.focusser.focus()},initContainer:function(){var e,t=this.container,r=this.dropdown,i=!1;this.showSearch(this.opts.minimumResultsForSearch>=0),this.selection=e=t.find(".select2-choice"),this.focusser=t.find(".select2-focusser"),this.search.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.PAGE_UP||e.which===n.PAGE_DOWN){w(e);return}switch(e.which){case n.UP:case n.DOWN:this.moveHighlight(e.which===n.UP?-1:1),w(e);return;case n.TAB:case n.ENTER:this.selectHighlighted(),w(e);return;case n.ESC:this.cancel(e),w(e);return}})),this.focusser.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.TAB||n.isControl(e)||n.isFunctionKey(e)||e.which===n.ESC)return;if(this.opts.openOnEnter===!1&&e.which===n.ENTER){w(e);return}if(e.which==n.DOWN||e.which==n.UP||e.which==n.ENTER&&this.opts.openOnEnter){this.open(),w(e);return}if(e.which==n.DELETE||e.which==n.BACKSPACE){this.opts.allowClear&&this.clear(),w(e);return}})),d(this.focusser),this.focusser.bind("keyup-change input",this.bind(function(e){if(this.opened())return;this.open(),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.focusser.val(""),w(e)})),e.delegate("abbr","mousedown",this.bind(function(e){if(!this.enabled)return;this.clear(),E(e),this.close(),this.selection.focus()})),e.bind("mousedown",this.bind(function(e){i=!0,this.opened()?this.close():this.enabled&&this.open(),w(e),i=!1})),r.bind("mousedown",this.bind(function(){this.search.focus()})),e.bind("focus",this.bind(function(e){w(e)})),this.focusser.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})).bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active")})),this.search.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.setPlaceholder()},clear:function(){var e=this.selection.data("select2-data");this.opts.element.val(""),this.selection.find("span").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),this.opts.element.trigger({type:"removed",val:this.id(e),choice:e}),this.triggerChange({removed:e})},initSelection:function(){var e;if(this.opts.element.val()===""&&this.opts.element.text()==="")this.close(),this.setPlaceholder();else{var n=this;this.opts.initSelection.call(null,this.opts.element,function(e){e!==t&&e!==null&&(n.updateSelection(e),n.close(),n.setPlaceholder())})}},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments);return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(t,n){var r=t.find(":selected");e.isFunction(n)&&n({id:r.attr("value"),text:r.text(),element:r})}:"data"in t&&(t.initSelection=t.initSelection||function(n,r){var i=n.val();t.query({matcher:function(e,n,r){return c(i,t.id(r))},callback:e.isFunction(r)?function(e){r(e.results.length?e.results[0]:null)}:e.noop})}),t},getPlaceholder:function(){return this.select&&this.select.find("option").first().text()!==""?t:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var e=this.getPlaceholder();if(this.opts.element.val()===""&&e!==t){if(this.select&&this.select.find("option:first").text()!=="")return;this.selection.find("span").html(this.opts.escapeMarkup(e)),this.selection.addClass("select2-default"),this.selection.find("abbr").hide()}},postprocessResults:function(e,t){var n=0,r=this,i=!0;this.findHighlightableChoices().each2(function(e,t){if(c(r.id(t.data("select2-data")),r.opts.element.val()))return n=e,!1}),this.highlight(n);if(t===!0){var s=this.opts.minimumResultsForSearch;i=s<0?!1:O(e.results)>=s,this.showSearch(i)}},showSearch:function(t){this.showSearchInput=t,this.dropdown.find(".select2-search")[t?"removeClass":"addClass"]("select2-search-hidden"),e(this.dropdown,this.container)[t?"addClass":"removeClass"]("select2-with-searchbox")},onSelect:function(e,t){var n=this.opts.element.val();this.opts.element.val(this.id(e)),this.updateSelection(e),this.opts.element.trigger({type:"selected",val:this.id(e),choice:e}),this.close(),(!t||!t.noFocus)&&this.selection.focus(),c(n,this.id(e))||this.triggerChange()},updateSelection:function(e){var n=this.selection.find("span"),r;this.selection.data("select2-data",e),n.empty(),r=this.opts.formatSelection(e,n),r!==t&&n.append(this.opts.escapeMarkup(r)),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==t&&this.selection.find("abbr").show()},val:function(){var e,n=!1,r=null,i=this;if(arguments.length===0)return this.opts.element.val();e=arguments[0],arguments.length>1&&(n=arguments[1]);if(this.select)this.select.val(e).find(":selected").each2(function(e,t){return r={id:t.attr("value"),text:t.text()},!1}),this.updateSelection(r),this.setPlaceholder(),n&&this.triggerChange();else{if(this.opts.initSelection===t)throw new Error("cannot call val() if initSelection() is not defined");if(!e&&e!==0){this.clear(),n&&this.triggerChange();return}this.opts.element.val(e),this.opts.initSelection(this.opts.element,function(e){i.opts.element.val(e?i.id(e):""),i.updateSelection(e),i.setPlaceholder(),n&&i.triggerChange()})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(e){var n;if(arguments.length===0)return n=this.selection.data("select2-data"),n==t&&(n=null),n;!e||e===""?this.clear():(this.opts.element.val(e?this.id(e):""),this.updateSelection(e))}}),s=_(r,{createContainer:function(){var t=e(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html([" <ul class='select2-choices'>"," <li class='select2-search-field'>"," <input type='text' autocomplete='off' class='select2-input'>"," </li>","</ul>","<div class='select2-drop select2-drop-multi' style='display:none;'>"," <ul class='select2-results'>"," </ul>","</div>"].join(""));return t},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments);return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(e,t){var n=[];e.find(":selected").each2(function(e,t){n.push({id:t.attr("value"),text:t.text(),element:t[0]})}),t(n)}:"data"in t&&(t.initSelection=t.initSelection||function(n,r){var i=h(n.val(),t.separator);t.query({matcher:function(n,r,s){return e.grep(i,function(e){return c(e,t.id(s))}).length},callback:e.isFunction(r)?function(e){r(e.results)}:e.noop})}),t},initContainer:function(){var t=".select2-choices",r;this.searchContainer=this.container.find(".select2-search-field"),this.selection=r=this.container.find(t),this.search.bind("input paste",this.bind(function(){if(!this.enabled)return;this.opened()||this.open()})),this.search.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.BACKSPACE&&this.search.val()===""){this.close();var t,i=r.find(".select2-search-choice-focus");if(i.length>0){this.unselect(i.first()),this.search.width(10),w(e);return}t=r.find(".select2-search-choice:not(.select2-locked)"),t.length>0&&t.last().addClass("select2-search-choice-focus")}else r.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");if(this.opened())switch(e.which){case n.UP:case n.DOWN:this.moveHighlight(e.which===n.UP?-1:1),w(e);return;case n.ENTER:case n.TAB:this.selectHighlighted(),w(e);return;case n.ESC:this.cancel(e),w(e);return}if(e.which===n.TAB||n.isControl(e)||n.isFunctionKey(e)||e.which===n.BACKSPACE||e.which===n.ESC)return;if(e.which===n.ENTER){if(this.opts.openOnEnter===!1)return;if(e.altKey||e.ctrlKey||e.shiftKey||e.metaKey)return}this.open(),(e.which===n.PAGE_UP||e.which===n.PAGE_DOWN)&&w(e)})),this.search.bind("keyup",this.bind(this.resizeSearch)),this.search.bind("blur",this.bind(function(e){this.container.removeClass("select2-container-active"),this.search.removeClass("select2-focused"),this.opened()||this.clearSearch(),e.stopImmediatePropagation()})),this.container.delegate(t,"mousedown",this.bind(function(t){if(!this.enabled)return;if(e(t.target).closest(".select2-search-choice").length>0)return;this.clearPlaceholder(),this.open(),this.focusSearch(),t.preventDefault()})),this.container.delegate(t,"focus",this.bind(function(){if(!this.enabled)return;this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder()})),this.initContainerWidth(),this.clearSearch()},enable:function(){if(this.enabled)return;this.parent.enable.apply(this,arguments),this.search.removeAttr("disabled")},disable:function(){if(!this.enabled)return;this.parent.disable.apply(this,arguments),this.search.attr("disabled",!0)},initSelection:function(){var e;this.opts.element.val()===""&&this.opts.element.text()===""&&(this.updateSelection([]),this.close(),this.clearSearch());if(this.select||this.opts.element.val()!==""){var n=this;this.opts.initSelection.call(null,this.opts.element,function(e){e!==t&&e!==null&&(n.updateSelection(e),n.close(),n.clearSearch())})}},clearSearch:function(){var e=this.getPlaceholder();e!==t&&this.getVal().length===0&&this.search.hasClass("select2-focused")===!1?(this.search.val(e).addClass("select2-default"),this.resizeSearch()):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.parent.opening.apply(this,arguments),this.clearPlaceholder(),this.resizeSearch(),this.focusSearch(),this.opts.element.trigger(e.Event("open"))},close:function(){if(!this.opened())return;this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus(),this.opts.element.triggerHandler("focus")},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(t){var n=[],r=[],i=this;e(t).each(function(){l(i.id(this),n)<0&&(n.push(i.id(this)),r.push(this))}),t=r,this.selection.find(".select2-search-choice").remove(),e(t).each(function(){i.addSelectedChoice(this)}),i.postprocessResults()},tokenize:function(){var e=this.search.val();e=this.opts.tokenizer(e,this.data(),this.bind(this.onSelect),this.opts),e!=null&&e!=t&&(this.search.val(e),e.length>0&&this.open())},onSelect:function(e,t){this.addSelectedChoice(e),this.opts.element.trigger({type:"selected",val:this.id(e),choice:e}),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.val().length>=this.getMaximumSelectionSize()&&this.updateResults(!0),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:e}),(!t||!t.noFocus)&&this.focusSearch()},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(n){var r=!n.locked,i=e("<li class='select2-search-choice'> <div></div> <a href='#' onclick='return false;' class='select2-search-choice-close' tabindex='-1'></a></li>"),s=e("<li class='select2-search-choice select2-locked'><div></div></li>"),o=r?i:s,u=this.id(n),a=this.getVal(),f;f=this.opts.formatSelection(n,o.find("div")),f!=t&&o.find("div").replaceWith("<div>"+this.opts.escapeMarkup(f)+"</div>"),r&&o.find(".select2-search-choice-close").bind("mousedown",w).bind("click dblclick",this.bind(function(t){if(!this.enabled)return;e(t.target).closest(".select2-search-choice").fadeOut("fast",this.bind(function(){this.unselect(e(t.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),this.close(),this.focusSearch()})).dequeue(),w(t)})).bind("focus",this.bind(function(){if(!this.enabled)return;this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active")})),o.data("select2-data",n),o.insertBefore(this.searchContainer),a.push(u),this.setVal(a)},unselect:function(e){var t=this.getVal(),n,r;e=e.closest(".select2-search-choice");if(e.length===0)throw"Invalid argument: "+e+". Must be .select2-search-choice";n=e.data("select2-data");if(!n)return;r=l(this.id(n).toString(),t),r>=0&&(t.splice(r,1),this.setVal(t),this.select&&this.postprocessResults()),e.remove(),this.opts.element.trigger({type:"removed",val:this.id(n),choice:n}),this.triggerChange({removed:n})},postprocessResults:function(){var e=this.getVal(),t=this.results.find(".select2-result"),n=this.results.find(".select2-result-with-children"),r=this;t.each2(function(t,n){var i=r.id(n.data("select2-data"));l(i,e)>=0&&(n.addClass("select2-selected"),n.find(".select2-result-selectable").addClass("select2-selected"))}),n.each2(function(e,t){!t.is(".select2-result-selectable")&&t.find(".select2-result-selectable:not(.select2-selected)").length===0&&t.addClass("select2-selected")}),this.highlight()==-1&&r.highlight(0)},resizeSearch:function(){var e,t,n,r,i,s=p(this.search);e=S(this.search)+10,t=this.search.offset().left,n=this.selection.width(),r=this.selection.offset().left,i=n-(t-r)-s,i<e&&(i=n-s),i<40&&(i=n-s),i<=0&&(i=e),this.search.width(i)},getVal:function(){var e;return this.select?(e=this.select.val(),e===null?[]:e):(e=this.opts.element.val(),h(e,this.opts.separator))},setVal:function(t){var n;this.select?this.select.val(t):(n=[],e(t).each(function(){l(this,n)<0&&n.push(this)}),this.opts.element.val(n.length===0?"":n.join(this.opts.separator)))},val:function(){var n,r=!1,i=[],s=this;if(arguments.length===0)return this.getVal();n=arguments[0],arguments.length>1&&(r=arguments[1]);if(!n&&n!==0){this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),r&&this.triggerChange();return}this.setVal(n);if(this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),r&&this.triggerChange();else{if(this.opts.initSelection===t)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(t){var n=e(t).map(s.id);s.setVal(n),s.updateSelection(t),s.clearSearch(),r&&s.triggerChange()})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var t=[],n=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){t.push(n.opts.id(e(this).data("select2-data")))}),this.setVal(t),this.triggerChange()},data:function(t){var n=this,r;if(arguments.length===0)return this.selection.find(".select2-search-choice").map(function(){return e(this).data("select2-data")}).get();t||(t=[]),r=e.map(t,function(e){return n.opts.id(e)}),this.setVal(r),this.updateSelection(t),this.clearSearch()}}),e.fn.select2=function(){var n=Array.prototype.slice.call(arguments,0),r,o,u,a,f=["val","destroy","opened","open","close","focus","isFocused","container","onSortStart","onSortEnd","enable","disable","positionDropdown","data"];return this.each(function(){if(n.length===0||typeof n[0]=="object")r=n.length===0?{}:e.extend({},n[0]),r.element=e(this),r.element.get(0).tagName.toLowerCase()==="select"?a=r.element.attr("multiple"):(a=r.multiple||!1,"tags"in r&&(r.multiple=a=!0)),o=a?new s:new i,o.init(r);else{if(typeof n[0]!="string")throw"Invalid arguments to select2 plugin: "+n;if(l(n[0],f)<0)throw"Unknown method: "+n[0];u=t,o=e(this).data("select2");if(o===t)return;n[0]==="container"?u=o.container:u=o[n[0]].apply(o,n.slice(1));if(u!==t)return!1}}),u===t?this:u},e.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(e,t,n,r){var i=[];return T(e.text,n.term,i,r),i.join("")},formatSelection:function(e,n){return e?e.text:t},sortResults:function(e,t,n){return e},formatResultCssClass:function(e){return t},formatNoMatches:function(){return"No matches found"},formatInputTooShort:function(e,t){var n=t-e.length;return"Please enter "+n+" more character"+(n==1?"":"s")},formatInputTooLong:function(e,t){var n=e.length-t;return"Please enter "+n+" less character"+(n==1?"":"s")},formatSelectionTooBig:function(e){return"You can only select "+e+" item"+(e==1?"":"s")},formatLoadMore:function(e){return"Loading more results..."},formatSearching:function(){return"Searching..."},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(e){return e.id},matcher:function(e,t){return t.toUpperCase().indexOf(e.toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:M,escapeMarkup:function(e){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&apos;","/":"&#47;"};return String(e).replace(/[&<>"'/\\]/g,function(e){return t[e[0]]})},blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(e){return e},adaptDropdownCssClass:function(e){return null}}}(e)}),timely.define("libs/select2_multiselect_helper",["jquery_timely","external_libs/select2"],function(e){var t=function(t){var n=e(t.element),r=n.data("color"),i=n.data("description"),s="";return typeof r!="undefined"&&r!==""&&(s+='<span class="ai1ec-color-swatch" style="background: '+n.data("color")+'"></span> '),s+=t.text,s='<span title="'+i+'">'+s+"</span>",s},n=function(t){var n=e(t.element),r=n.data("color"),i=n.data("description"),s="";return typeof r!="undefined"&&r!==""?s+='<span class="ai1ec-color-swatch" style="background: '+n.data("color")+'"></span> ':s+='<span class="ai1ec-color-swatch-empty"></span> ',s+=t.text,s='<span title="'+i+'">'+s+"</span>",s},r=function(r){typeof r=="undefined"&&(r=e(document)),e(".ai1ec-select2-multiselect-selector",r).select2({allowClear:!0,formatResult:n,formatSelection:t,escapeMarkup:function(e){return e}})},i=function(t){e(".ai1ec-select2-multiselect-selector.select2-container",t).each(function(){e(this).data("select2").resizeSearch()})};return{init:r,refresh:i}});var Twig=function(e){return e.VERSION="0.7.2",e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}function n(t,n){var r,i,s="/",o=[],u;if(t.url)typeof t.base!="undefined"?r=t.base+(t.base.charAt(t.base.length-1)==="/"?"":"/"):r=t.url;else{if(!t.path)throw new e.Error("Cannot extend an inline template.");var a=require("path"),f=a.sep||s,l=new RegExp("^\\.{1,2}"+f.replace("\\","\\\\"));n=n.replace(/\//g,f),t.base!==undefined&&n.match(l)==null?(n=n.replace(t.base,""),r=t.base+f):r=t.path,r=r.replace(f+f,f),s=f}i=r.split(s),i.pop(),i=i.concat(n.split(s));while(i.length>0)u=i.shift(),u!="."&&(u==".."&&o.length>0&&o[o.length-1]!=".."?o.pop():o.push(u));return o.join(s)}return e.trace=!1,e.debug=!1,e.cache=!0,e.placeholders={parent:"{{|PARENT|}}"},e.indexOf=function(e,t){if(Array.prototype.hasOwnProperty("indexOf"))return e.indexOf(t);if(e===void 0||e===null)throw new TypeError;var n=Object(e),r=n.length>>>0;if(r===0)return-1;var i=0;arguments.length>0&&(i=Number(arguments[1]),i!==i?i=0:i!==0&&i!==Infinity&&i!==-Infinity&&(i=(i>0||-1)*Math.floor(Math.abs(i))));if(i>=r)return-1;var s=i>=0?i:Math.max(r-Math.abs(i),0);for(;s<r;s++)if(s in n&&n[s]===t)return s;return e==t?0:-1},e.forEach=function(e,t,n){if(Array.prototype.forEach)return e.forEach(t,n);var r,i;if(e==null)throw new TypeError(" this is null or not defined");var s=Object(e),o=s.length>>>0;if({}.toString.call(t)!="[object Function]")throw new TypeError(t+" is not a function");n&&(r=n),i=0;while(i<o){var u;i in s&&(u=s[i],t.call(r,u,i,s)),i++}},e.Error=function(e){this.message=e,this.name="TwigException",this.type="TwigException"},e.Error.prototype.toString=function(){var e=this.name+": "+this.message;return e},e.log={trace:function(){e.trace&&console&&console.log(Array.prototype.slice.call(arguments))},debug:function(){e.debug&&console&&console.log(Array.prototype.slice.call(arguments))}},typeof console!="undefined"&&typeof console.log!="undefined"?e.log.error=function(){console.log.apply(console,arguments)}:e.log.error=function(){},e.token={},e.token.type={output:"output",logic:"logic",comment:"comment",raw:"raw"},e.token.definitions=[{type:e.token.type.raw,open:"{% raw %}",close:"{% endraw %}"},{type:e.token.type.output,open:"{{",close:"}}"},{type:e.token.type.logic,open:"{%",close:"%}"},{type:e.token.type.comment,open:"{#",close:"#}"}],e.token.strings=['"',"'"],e.token.findStart=function(t){var n={position:null,def:null},r,i,s;for(r=0;r<e.token.definitions.length;r++)i=e.token.definitions[r],s=t.indexOf(i.open),e.log.trace("Twig.token.findStart: ","Searching for ",i.open," found at ",s),s>=0&&(n.position===null||s<n.position)&&(n.position=s,n.def=i);return n},e.token.findEnd=function(t,n,r){var i=null,s=!1,o=0,u=null,a=null,f=null,l=null,c=null,h=null,p,d;while(!s){u=null,a=null,f=t.indexOf(n.close,o);if(!(f>=0))throw new e.Error("Unable to find closing bracket '"+n.close+"'"+" opened near template position "+r);i=f,s=!0;if(n.type===e.token.type.comment)break;d=e.token.strings.length;for(p=0;p<d;p+=1)c=t.indexOf(e.token.strings[p],o),c>0&&c<f&&(u===null||c<u)&&(u=c,a=e.token.strings[p]);if(u!==null){l=u+1,i=null,s=!1;for(;;){h=t.indexOf(a,l);if(h<0)throw"Unclosed string in template";if(t.substr(h-1,1)!=="\\"){o=h+1;break}l=h+1}}}return i},e.tokenize=function(t){var n=[],r=0,i=null,s=null;while(t.length>0)i=e.token.findStart(t),e.log.trace("Twig.tokenize: ","Found token: ",i),i.position!==null?(i.position>0&&n.push({type:e.token.type.raw,value:t.substring(0,i.position)}),t=t.substr(i.position+i.def.open.length),r+=i.position+i.def.open.length,s=e.token.findEnd(t,i.def,r),e.log.trace("Twig.tokenize: ","Token ends at ",s),n.push({type:i.def.type,value:t.substring(0,s).trim()}),i.def.type==="logic"&&t.substr(s+i.def.close.length,1)==="\n"&&(s+=1),t=t.substr(s+i.def.close.length),r+=s+i.def.close.length):(n.push({type:e.token.type.raw,value:t}),t="");return n},e.compile=function(t){try{var n=[],r=[],i=[],s=null,o=null,u=null,a=null,f=null,l=null,c=null,h=null,p=null;while(t.length>0){s=t.shift(),e.log.trace("Compiling token ",s);switch(s.type){case e.token.type.raw:r.length>0?i.push(s):n.push(s);break;case e.token.type.logic:o=e.logic.compile.apply(this,[s]),c=o.type,h=e.logic.handler[c].open,p=e.logic.handler[c].next,e.log.trace("Twig.compile: ","Compiled logic token to ",o," next is: ",p," open is : ",h);if(h!==undefined&&!h){a=r.pop(),f=e.logic.handler[a.type];if(e.indexOf(f.next,c)<0)throw new Error(c+" not expected after a "+a.type);a.output=a.output||[],a.output=a.output.concat(i),i=[],l={type:e.token.type.logic,token:a},r.length>0?i.push(l):n.push(l)}p!==undefined&&p.length>0?(e.log.trace("Twig.compile: ","Pushing ",o," to logic stack."),r.length>0&&(a=r.pop(),a.output=a.output||[],a.output=a.output.concat(i),r.push(a),i=[]),r.push(o)):h!==undefined&&h&&(l={type:e.token.type.logic,token:o},r.length>0?i.push(l):n.push(l));break;case e.token.type.comment:break;case e.token.type.output:e.expression.compile.apply(this,[s]),r.length>0?i.push(s):n.push(s)}e.log.trace("Twig.compile: "," Output: ",n," Logic Stack: ",r," Pending Output: ",i)}if(r.length>0)throw u=r.pop(),new Error("Unable to find an end tag for "+u.type+", expecting one of "+u.next);return n}catch(d){e.log.error("Error compiling twig template "+this.id+": "),d.stack?e.log.error(d.stack):e.log.error(d.toString());if(this.options.rethrow)throw d}},e.parse=function(t,n){try{var r=[],i=!0,s=this;return n=n||{},e.forEach(t,function(o){e.log.debug("Twig.parse: ","Parsing token: ",o);switch(o.type){case e.token.type.raw:r.push(o.value);break;case e.token.type.logic:var u=o.token,a=e.logic.parse.apply(s,[u,n,i]);a.chain!==undefined&&(i=a.chain),a.context!==undefined&&(n=a.context),a.output!==undefined&&r.push(a.output);break;case e.token.type.comment:break;case e.token.type.output:e.log.debug("Twig.parse: ","Output token: ",o.stack),r.push(e.expression.parse.apply(s,[o.stack,n]))}}),r.join("")}catch(o){e.log.error("Error parsing twig template "+this.id+": "),o.stack?e.log.error(o.stack):e.log.error(o.toString());if(this.options.rethrow)throw o;if(e.debug)return o.toString()}},e.prepare=function(t){var n,r;return e.log.debug("Twig.prepare: ","Tokenizing ",t),r=e.tokenize.apply(this,[t]),e.log.debug("Twig.prepare: ","Compiling ",r),n=e.compile.apply(this,[r]),e.log.debug("Twig.prepare: ","Compiled ",n),n},e.Templates={registry:{}},e.validateId=function(t){if(t==="prototype")throw new e.Error(t+" is not a valid twig identifier");if(e.Templates.registry.hasOwnProperty(t))throw new e.Error("There is already a template with the ID "+t);return!0},e.Templates.save=function(t){if(t.id===undefined)throw new e.Error("Unable to save template with no id");e.Templates.registry[t.id]=t},e.Templates.load=function(t){return e.Templates.registry.hasOwnProperty(t)?e.Templates.registry[t]:null},e.Templates.loadRemote=function(t,n,r,i){var s=n.id,o=n.method,u=n.async,a=n.precompiled,f=null;u===undefined&&(u=!0),s===undefined&&(s=t),n.id=s;if(e.cache&&e.Templates.registry.hasOwnProperty(s))return r&&r(e.Templates.registry[s]),e.Templates.registry[s];if(o=="ajax"){if(typeof XMLHttpRequest=="undefined")throw new e.Error("Unsupported platform: Unable to do remote requests because there is no XMLHTTPRequest implementation");var l=new XMLHttpRequest;l.onreadystatechange=function(){var s=null;l.readyState==4&&(l.status==200?(e.log.debug("Got template ",l.responseText),a===!0?s=JSON.parse(l.responseText):s=l.responseText,n.url=t,n.data=s,f=new e.Template(n),r&&r(f)):i&&i(l))},l.open("GET",t,u),l.send()}else(function(){var s=require("fs"),o=require("path"),l=null,c=function(s,o){if(s){i&&i(s);return}a===!0&&(o=JSON.parse(o)),n.data=o,n.path=t,f=new e.Template(n),r&&r(f)};if(u===!0)s.stat(t,function(n,r){if(n||!r.isFile())throw new e.Error("Unable to find template file "+t);s.readFile(t,"utf8",c)});else{if(!s.statSync(t).isFile())throw new e.Error("Unable to find template file "+t);l=s.readFileSync(t,"utf8"),c(undefined,l)}})();return u===!1?f:!0},e.Template=function(n){var r=n.data,i=n.id,s=n.blocks,o=n.macros||{},u=n.base,a=n.path,f=n.url,l=n.options;this.id=i,this.base=u,this.path=a,this.url=f,this.macros=o,this.options=l,this.reset(s),t("String",r)?this.tokens=e.prepare.apply(this,[r]):this.tokens=r,i!==undefined&&e.Templates.save(this)},e.Template.prototype.reset=function(t){e.log.debug("Twig.Template.reset","Reseting template "+this.id),this.blocks={},this.child={blocks:t||{}},this.extend=null},e.Template.prototype.render=function(t,r){r=r||{};var i,s;this.context=t||{},this.reset(),r.blocks&&(this.blocks=r.blocks),r.macros&&(this.macros=r.macros),i=e.parse.apply(this,[this.tokens,this.context]);if(this.extend){var o;return this.options.allowInlineIncludes&&(o=e.Templates.load(this.extend),o&&(o.options=this.options)),o||(s=n(this,this.extend),o=e.Templates.loadRemote(s,{method:this.url?"ajax":"fs",base:this.base,async:!1,id:s,options:this.options})),this.parent=o,this.parent.render(this.context,{blocks:this.blocks})}return r.output=="blocks"?this.blocks:r.output=="macros"?this.macros:i},e.Template.prototype.importFile=function(t){var r,i;if(!this.url&&!this.path&&this.options.allowInlineIncludes){i=e.Templates.load(t),i.options=this.options;if(i)return i;throw new e.Error("Didn't find the inline template by id")}return r=n(this,t),i=e.Templates.loadRemote(r,{method:this.url?"ajax":"fs",base:this.base,async:!1,options:this.options,id:r}),i},e.Template.prototype.importBlocks=function(t,n){var r=this.importFile(t),i=this.context,s=this,o;n=n||!1,r.render(i),e.forEach(Object.keys(r.blocks),function(e){if(n||s.blocks[e]===undefined)s.blocks[e]=r.blocks[e]})},e.Template.prototype.importMacros=function(t){var r=n(this,t),i=e.Templates.loadRemote(r,{method:this.url?"ajax":"fs",async:!1,id:r});return i},e.Template.prototype.compile=function(t){return e.compiler.compile(this,t)},e}(Twig||{});(function(){String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Object.keys||(Object.keys=function(e){if(e!==Object(e))throw new TypeError("Object.keys called on non-object");var t=[],n;for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t})})();var Twig=function(e){e.lib={};var t=function(){function e(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function n(e,t){for(var n=[];t>0;n[--t]=e);return n.join("")}var r=function(){return r.cache.hasOwnProperty(arguments[0])||(r.cache[arguments[0]]=r.parse(arguments[0])),r.format.call(null,r.cache[arguments[0]],arguments)};return r.format=function(r,i){var s=1,o=r.length,u="",a,f=[],l,c,h,p,d,v;for(l=0;l<o;l++){u=e(r[l]);if(u==="string")f.push(r[l]);else if(u==="array"){h=r[l];if(h[2]){a=i[s];for(c=0;c<h[2].length;c++){if(!a.hasOwnProperty(h[2][c]))throw t('[sprintf] property "%s" does not exist',h[2][c]);a=a[h[2][c]]}}else h[1]?a=i[h[1]]:a=i[s++];if(/[^s]/.test(h[8])&&e(a)!="number")throw t("[sprintf] expecting number but found %s",e(a));switch(h[8]){case"b":a=a.toString(2);break;case"c":a=String.fromCharCode(a);break;case"d":a=parseInt(a,10);break;case"e":a=h[7]?a.toExponential(h[7]):a.toExponential();break;case"f":a=h[7]?parseFloat(a).toFixed(h[7]):parseFloat(a);break;case"o":a=a.toString(8);break;case"s":a=(a=String(a))&&h[7]?a.substring(0,h[7]):a;break;case"u":a=Math.abs(a);break;case"x":a=a.toString(16);break;case"X":a=a.toString(16).toUpperCase()}a=/[def]/.test(h[8])&&h[3]&&a>=0?"+"+a:a,d=h[4]?h[4]=="0"?"0":h[4].charAt(1):" ",v=h[6]-String(a).length,p=h[6]?n(d,v):"",f.push(h[5]?a+p:p+a)}}return f.join("")},r.cache={},r.parse=function(e){var t=e,n=[],r=[],i=0;while(t){if((n=/^[^\x25]+/.exec(t))!==null)r.push(n[0]);else if((n=/^\x25{2}/.exec(t))!==null)r.push("%");else{if((n=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(t))===null)throw"[sprintf] huh?";if(n[2]){i|=1;var s=[],o=n[2],u=[];if((u=/^([a-z_][a-z_\d]*)/i.exec(o))===null)throw"[sprintf] huh?";s.push(u[1]);while((o=o.substring(u[0].length))!=="")if((u=/^\.([a-z_][a-z_\d]*)/i.exec(o))!==null)s.push(u[1]);else{if((u=/^\[(\d+)\]/.exec(o))===null)throw"[sprintf] huh?";s.push(u[1])}n[2]=s}else i|=2;if(i===3)throw"[sprintf] mixing positional and named placeholders is not (yet) supported";r.push(n)}t=t.substring(n[0].length)}return r},r}(),n=function(e,n){return n.unshift(e),t.apply(null,n)};return e.lib.sprintf=t,e.lib.vsprintf=n,function(){function s(e){return(e=Math.abs(e)%100)%10==1&&e!=11?"st":e%10==2&&e!=12?"nd":e%10==3&&e!=13?"rd":"th"}function o(e){var t=new Date(e.getFullYear()+1,0,4);return(t-e)/864e5<7&&(e.getDay()+6)%7<(t.getDay()+6)%7?t.getFullYear():e.getMonth()>0||e.getDate()>=4?e.getFullYear():e.getFullYear()-((e.getDay()+6)%7-e.getDate()>2?1:0)}function u(e){var t=new Date(o(e),0,4);return t.setDate(t.getDate()-(t.getDay()+6)%7),parseInt((e-t)/6048e5)+1}var t="Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),n="Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),r="Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),i="January,February,March,April,May,June,July,August,September,October,November,December".split(",");e.lib.formatDate=function(e,a){if(typeof a!="string"||/^\s*$/.test(a))return e+"";var f=new Date(e.getFullYear(),0,1),l=e;return a.replace(/[dDjlNSwzWFmMntLoYyaABgGhHisuU]/g,function(e){switch(e){case"d":return("0"+l.getDate()).replace(/^.+(..)$/,"$1");case"D":return t[l.getDay()];case"j":return l.getDate();case"l":return n[l.getDay()];case"N":return(l.getDay()+6)%7+1;case"S":return s(l.getDate());case"w":return l.getDay();case"z":return Math.ceil((f-l)/864e5);case"W":return("0"+u(l)).replace(/^.(..)$/,"$1");case"F":return i[l.getMonth()];case"m":return("0"+(l.getMonth()+1)).replace(/^.+(..)$/,"$1");case"M":return r[l.getMonth()];case"n":return l.getMonth()+1;case"t":return(new Date(l.getFullYear(),l.getMonth()+1,-1)).getDate();case"L":return(new Date(l.getFullYear(),1,29)).getDate()==29?1:0;case"o":return o(l);case"Y":return l.getFullYear();case"y":return(l.getFullYear()+"").replace(/^.+(..)$/,"$1");case"a":return l.getHours()<12?"am":"pm";case"A":return l.getHours()<12?"AM":"PM";case"B":return Math.floor(((l.getUTCHours()+1)%24+l.getUTCMinutes()/60+l.getUTCSeconds()/3600)*1e3/24);case"g":return l.getHours()%12!=0?l.getHours()%12:12;case"G":return l.getHours();case"h":return("0"+(l.getHours()%12!=0?l.getHours()%12:12)).replace(/^.+(..)$/,"$1");case"H":return("0"+l.getHours()).replace(/^.+(..)$/,"$1");case"i":return("0"+l.getMinutes()).replace(/^.+(..)$/,"$1");case"s":return("0"+l.getSeconds()).replace(/^.+(..)$/,"$1");case"u":return l.getMilliseconds();case"U":return l.getTime()/1e3}})}}(),e.lib.strip_tags=function(e,t){t=(((t||"")+"").toLowerCase().match(/<[a-z][a-z0-9]*>/g)||[]).join("");var n=/<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,r=/<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;return e.replace(r,"").replace(n,function(e,n){return t.indexOf("<"+n.toLowerCase()+">")>-1?e:""})},e.lib.parseISO8601Date=function(e){var t=/(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d)(\.\d+)?(Z|([+-])(\d\d):(\d\d))/,n=[];n=e.match(t);if(!n)throw"Couldn't parse ISO 8601 date string '"+e+"'";var r=[1,2,3,4,5,6,10,11];for(var i in r)n[r[i]]=parseInt(n[r[i]],10);n[7]=parseFloat(n[7]);var s=Date.UTC(n[1],n[2]-1,n[3],n[4],n[5],n[6]);n[7]>0&&(s+=Math.round(n[7]*1e3));if(n[8]!="Z"&&n[10]){var o=n[10]*60*60*1e3;n[11]&&(o+=n[11]*60*1e3),n[9]=="-"?s-=o:s+=o}return new Date(s)},e.lib.strtotime=function(t,n){var r,i,s,o,u="";t=t.replace(/\s{2,}|^\s|\s$/g," "),t=t.replace(/[\t\r\n]/g,"");if(t==="now")return n===null||isNaN(n)?(new Date).getTime()/1e3|0:n|0;if(!isNaN(u=Date.parse(t)))return u/1e3|0;n?n=new Date(n*1e3):n=new Date;var a=t;t=t.toLowerCase();var f={day:{sun:0,mon:1,tue:2,wed:3,thu:4,fri:5,sat:6},mon:["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"]},l=function(e){var t=e[2]&&e[2]==="ago",r=(r=e[0]==="last"?-1:1)*(t?-1:1);switch(e[0]){case"last":case"next":switch(e[1].substring(0,3)){case"yea":n.setFullYear(n.getFullYear()+r);break;case"wee":n.setDate(n.getDate()+r*7);break;case"day":n.setDate(n.getDate()+r);break;case"hou":n.setHours(n.getHours()+r);break;case"min":n.setMinutes(n.getMinutes()+r);break;case"sec":n.setSeconds(n.getSeconds()+r);break;case"mon":if(e[1]==="month"){n.setMonth(n.getMonth()+r);break};default:var i=f.day[e[1].substring(0,3)];if(typeof i!="undefined"){var s=i-n.getDay();s===0?s=7*r:s>0?e[0]==="last"&&(s-=7):e[0]==="next"&&(s+=7),n.setDate(n.getDate()+s),n.setHours(0,0,0,0)}}break;default:if(!/\d+/.test(e[0]))return!1;r*=parseInt(e[0],10);switch(e[1].substring(0,3)){case"yea":n.setFullYear(n.getFullYear()+r);break;case"mon":n.setMonth(n.getMonth()+r);break;case"wee":n.setDate(n.getDate()+r*7);break;case"day":n.setDate(n.getDate()+r);break;case"hou":n.setHours(n.getHours()+r);break;case"min":n.setMinutes(n.getMinutes()+r);break;case"sec":n.setSeconds(n.getSeconds()+r)}}return!0};s=t.match(/^(\d{2,4}-\d{2}-\d{2})(?:\s(\d{1,2}:\d{2}(:\d{2})?)?(?:\.(\d+))?)?$/);if(s!==null)return s[2]?s[3]||(s[2]+=":00"):s[2]="00:00:00",o=s[1].split(/-/g),o[1]=f.mon[o[1]-1]||o[1],o[0]=+o[0],o[0]=o[0]>=0&&o[0]<=69?"20"+(o[0]<10?"0"+o[0]:o[0]+""):o[0]>=70&&o[0]<=99?"19"+o[0]:o[0]+"",parseInt(this.strtotime(o[2]+" "+o[1]+" "+o[0]+" "+s[2])+(s[4]?s[4]/1e3:""),10);var c="([+-]?\\d+\\s(years?|months?|weeks?|days?|hours?|min|minutes?|sec|seconds?|sun\\.?|sunday|mon\\.?|monday|tue\\.?|tuesday|wed\\.?|wednesday|thu\\.?|thursday|fri\\.?|friday|sat\\.?|saturday)|(last|next)\\s(years?|months?|weeks?|days?|hours?|min|minutes?|sec|seconds?|sun\\.?|sunday|mon\\.?|monday|tue\\.?|tuesday|wed\\.?|wednesday|thu\\.?|thursday|fri\\.?|friday|sat\\.?|saturday))(\\sago)?";s=t.match(new RegExp(c,"gi"));if(s===null){try{num=e.lib.parseISO8601Date(a);if(num)return num/1e3|0}catch(h){return!1}return!1}for(r=0,i=s.length;r<i;r++)if(!l(s[r].split(" ")))return!1;return n.getTime()/1e3|0},e.lib.is=function(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e},e.lib.copy=function(e){var t={},n;for(n in e)t[n]=e[n];return t},e.lib.replaceAll=function(e,t,n){return e.split(t).join(n)},e.lib.chunkArray=function(t,n){var r=[],i=0,s=t.length;if(n<1||!e.lib.is("Array",t))return[];while(i<s)r.push(t.slice(i,i+=n));return r},e.lib.round=function(t,n,r){var i,s,o,u;n|=0,i=Math.pow(10,n),t*=i,u=t>0|-(t<0),o=t%1===.5*u,s=Math.floor(t);if(o)switch(r){case"PHP_ROUND_HALF_DOWN":t=s+(u<0);break;case"PHP_ROUND_HALF_EVEN":t=s+s%2*u;break;case"PHP_ROUND_HALF_ODD":t=s+!(s%2);break;default:t=s+(u>0)}return(o?t:Math.round(t))/i},e}(Twig||{}),Twig=function(e){e.logic={},e.logic.type={if_:"Twig.logic.type.if",endif:"Twig.logic.type.endif",for_:"Twig.logic.type.for",endfor:"Twig.logic.type.endfor",else_:"Twig.logic.type.else",elseif:"Twig.logic.type.elseif",set:"Twig.logic.type.set",setcapture:"Twig.logic.type.setcapture",endset:"Twig.logic.type.endset",filter:"Twig.logic.type.filter",endfilter:"Twig.logic.type.endfilter",block:"Twig.logic.type.block",endblock:"Twig.logic.type.endblock",extends_:"Twig.logic.type.extends",use:"Twig.logic.type.use",include:"Twig.logic.type.include",spaceless:"Twig.logic.type.spaceless",endspaceless:"Twig.logic.type.endspaceless",macro:"Twig.logic.type.macro",endmacro:"Twig.logic.type.endmacro",import_:"Twig.logic.type.import",from:"Twig.logic.type.from"},e.logic.definitions=[{type:e.logic.type.if_,regex:/^if\s+([^\s].+)$/,next:[e.logic.type.else_,e.logic.type.elseif,e.logic.type.endif],open:!0,compile:function(t){var n=t.match[1];return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i="",s=e.expression.parse.apply(this,[t.stack,n]);return r=!0,s&&(r=!1,i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.elseif,regex:/^elseif\s+([^\s].*)$/,next:[e.logic.type.else_,e.logic.type.elseif,e.logic.type.endif],open:!1,compile:function(t){var n=t.match[1];return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i="";return r&&e.expression.parse.apply(this,[t.stack,n])===!0&&(r=!1,i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.else_,regex:/^else$/,next:[e.logic.type.endif,e.logic.type.endfor],open:!1,parse:function(t,n,r){var i="";return r&&(i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.endif,regex:/^endif$/,next:[],open:!1},{type:e.logic.type.for_,regex:/^for\s+([a-zA-Z0-9_,\s]+)\s+in\s+([^\s].*?)(?:\s+if\s+([^\s].*))?$/,next:[e.logic.type.else_,e.logic.type.endfor],open:!0,compile:function(t){var n=t.match[1],r=t.match[2],i=t.match[3],s=null;t.key_var=null,t.value_var=null;if(n.indexOf(",")>=0){s=n.split(",");if(s.length!==2)throw new e.Error("Invalid expression in for loop: "+n);t.key_var=s[0].trim(),t.value_var=s[1].trim()}else t.value_var=n;return t.expression=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:r}]).stack,i&&(t.conditional=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:i}]).stack),delete t.match,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.expression,n]),s=[],o,u=0,a,f=this,l=t.conditional,c=function(e,t){var r=l!==undefined;return{index:e+1,index0:e,revindex:r?undefined:t-e,revindex0:r?undefined:t-e-1,first:e===0,last:r?undefined:e===t-1,length:r?undefined:t,parent:n}},h=function(r,i){var a=e.lib.copy(n);a[t.value_var]=i,t.key_var&&(a[t.key_var]=r),a.loop=c(u,o);if(l===undefined||e.expression.parse.apply(f,[l,a]))s.push(e.parse.apply(f,[t.output,a])),u+=1};return i instanceof Array?(o=i.length,e.forEach(i,function(e){var t=u;h(t,e)})):i instanceof Object&&(i._keys!==undefined?a=i._keys:a=Object.keys(i),o=a.length,e.forEach(a,function(e){if(e==="_keys")return;h(e,i[e])})),r=s.length===0,{chain:r,output:s.join("")}}},{type:e.logic.type.endfor,regex:/^endfor$/,next:[],open:!1},{type:e.logic.type.set,regex:/^set\s+([a-zA-Z0-9_,\s]+)\s*=\s*(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2],i=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:r}]).stack;return t.key=n,t.expression=i,delete t.match,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.expression,n]),s=t.key;return this.context[s]=i,n[s]=i,{chain:r,context:n}}},{type:e.logic.type.setcapture,regex:/^set\s+([a-zA-Z0-9_,\s]+)$/,next:[e.logic.type.endset],open:!0,compile:function(e){var t=e.match[1].trim();return e.key=t,delete e.match,e},parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=t.key;return this.context[s]=i,n[s]=i,{chain:r,context:n}}},{type:e.logic.type.endset,regex:/^endset$/,next:[],open:!1},{type:e.logic.type.filter,regex:/^filter\s+(.+)$/,next:[e.logic.type.endfilter],open:!0,compile:function(t){var n="|"+t.match[1].trim();return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=[{type:e.expression.type.string,value:i}].concat(t.stack),o=e.expression.parse.apply(this,[s,n]);return{chain:r,output:o}}},{type:e.logic.type.endfilter,regex:/^endfilter$/,next:[],open:!1},{type:e.logic.type.block,regex:/^block\s+([a-zA-Z0-9_]+)$/,next:[e.logic.type.endblock],open:!0,compile:function(e){return e.block=e.match[1].trim(),delete e.match,e},parse:function(t,n,r){var i="",s="",o=this.blocks[t.block]&&this.blocks[t.block].indexOf(e.placeholders.parent)>-1;if(this.blocks[t.block]===undefined||o||n.loop)i=e.expression.parse.apply(this,[{type:e.expression.type.string,value:e.parse.apply(this,[t.output,n])},n]),o?this.blocks[t.block]=this.blocks[t.block].replace(e.placeholders.parent,i):this.blocks[t.block]=i;return this.child.blocks[t.block]?s=this.child.blocks[t.block]:s=this.blocks[t.block],{chain:r,output:s}}},{type:e.logic.type.endblock,regex:/^endblock(?:\s+([a-zA-Z0-9_]+))?$/,next:[],open:!1},{type:e.logic.type.extends_,regex:/^extends\s+(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim();return delete t.match,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.stack,n]);return this.extend=i,{chain:r,output:""}}},{type:e.logic.type.use,regex:/^use\s+(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim();return delete t.match,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.stack,n]);return this.importBlocks(i),{chain:r,output:""}}},{type:e.logic.type.include,regex:/^include\s+(ignore missing\s+)?(.+?)\s*(?:with\s+(.+?))?\s*(only)?$/,next:[],open:!0,compile:function(t){var n=t.match,r=n[1]!==undefined,i=n[2].trim(),s=n[3],o=n[4]!==undefined&&n[4].length;return delete t.match,t.only=o,t.includeMissing=r,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:i}]).stack,s!==undefined&&(t.withStack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:s.trim()}]).stack),t},parse:function(t,n,r){var i={},s,o,u;if(!t.only)for(o in n)n.hasOwnProperty(o)&&(i[o]=n[o]);if(t.withStack!==undefined){s=e.expression.parse.apply(this,[t.withStack,n]);for(o in s)s.hasOwnProperty(o)&&(i[o]=s[o])}var a=e.expression.parse.apply(this,[t.stack,i]);return u=this.importFile(a),{chain:r,output:u.render(i)}}},{type:e.logic.type.spaceless,regex:/^spaceless$/,next:[e.logic.type.endspaceless],open:!0,parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=/>\s+</g,o=i.replace(s,"><").trim();return{chain:r,output:o}}},{type:e.logic.type.endspaceless,regex:/^endspaceless$/,next:[],open:!1},{type:e.logic.type.macro,regex:/^macro\s+([a-zA-Z0-9_]+)\s?\((([a-zA-Z0-9_]+(,\s?)?)*)\)$/,next:[e.logic.type.endmacro],open:!0,compile:function(t){var n=t.match[1],r=t.match[2].split(/[ ,]+/);for(var i=0;i<r.length;i++)for(var s=0;s<r.length;s++)if(r[i]===r[s]&&i!==s)throw new e.Error("Duplicate arguments for parameter: "+r[i]);return t.macroName=n,t.parameters=r,delete t.match,t},parse:function(t,n,r){var i=this;return this.macros[t.macroName]=function(){var n={_self:i.macros};for(var r=0;r<t.parameters.length;r++){var s=t.parameters[r];typeof arguments[r]!="undefined"?n[s]=arguments[r]:n[s]=undefined}return e.parse.apply(i,[t.output,n])},{chain:r,output:""}}},{type:e.logic.type.endmacro,regex:/^endmacro$/,next:[],open:!1},{type:e.logic.type.import_,regex:/^import\s+(.+)\s+as\s+([a-zA-Z0-9_]+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2].trim();return delete t.match,t.expression=n,t.contextName=r,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){if(t.expression!=="_self"){var i=e.expression.parse.apply(this,[t.stack,n]),s=this.importMacros(i||t.expression);n[t.contextName]=s.render({},{output:"macros"})}else n[t.contextName]=this.macros;return{chain:r,output:""}}},{type:e.logic.type.from,regex:/^from\s+(.+)\s+import\s+([a-zA-Z0-9_, ]+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2].trim().split(/[ ,]+/),i={};for(var s=0;s<r.length;s++){var o=r[s],u=o.match(/^([a-zA-Z0-9_]+)\s+(.+)\s+as\s+([a-zA-Z0-9_]+)$/);u?i[u[1].trim()]=u[2].trim():o.match(/^([a-zA-Z0-9_]+)$/)&&(i[o]=o)}return delete t.match,t.expression=n,t.macroNames=i,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i;if(t.expression!=="_self"){var s=e.expression.parse.apply(this,[t.stack,n]),o=this.importMacros(s||t.expression);i=o.render({},{output:"macros"})}else i=this.macros;for(var u in t.macroNames)i.hasOwnProperty(u)&&(n[t.macroNames[u]]=i[u]);return{chain:r,output:""}}}],e.logic.handler={},e.logic.extendType=function(t,n){n=n||"Twig.logic.type"+t,e.logic.type[t]=n},e.logic.extend=function(t){if(!t.type)throw new e.Error("Unable to extend logic definition. No type provided for "+t);if(e.logic.type[t.type])throw new e.Error("Unable to extend logic definitions. Type "+t.type+" is already defined.");e.logic.extendType(t.type),e.logic.handler[t.type]=t};while(e.logic.definitions.length>0)e.logic.extend(e.logic.definitions.shift());return e.logic.compile=function(t){var n=t.value.trim(),r=e.logic.tokenize.apply(this,[n]),i=e.logic.handler[r.type];return i.compile&&(r=i.compile.apply(this,[r]),e.log.trace("Twig.logic.compile: ","Compiled logic token to ",r)),r},e.logic.tokenize=function(t){var n={},r=null,i=null,s=null,o=null,u=null,a=null;t=t.trim();for(r in e.logic.handler)if(e.logic.handler.hasOwnProperty(r)){i=e.logic.handler[r].type,s=e.logic.handler[r].regex,o=[],s instanceof Array?o=s:o.push(s);while(o.length>0){u=o.shift(),a=u.exec(t.trim());if(a!==null)return n.type=i,n.match=a,e.log.trace("Twig.logic.tokenize: ","Matched a ",i," regular expression of ",a),n}}throw new e.Error("Unable to parse '"+t.trim()+"'")},e.logic.parse=function(t,n,r){var i="",s;return n=n||{},e.log.debug("Twig.logic.parse: ","Parsing logic token ",t),s=e.logic.handler[t.type],s.parse&&(i=s.parse.apply(this,[t,n,r])),i},e}(Twig||{}),Twig=function(e){e.expression={},e.expression.reservedWords=["true","false","null","_context"],e.expression.type={comma:"Twig.expression.type.comma",operator:{unary:"Twig.expression.type.operator.unary",binary:"Twig.expression.type.operator.binary"},string:"Twig.expression.type.string",bool:"Twig.expression.type.bool",array:{start:"Twig.expression.type.array.start",end:"Twig.expression.type.array.end"},object:{start:"Twig.expression.type.object.start",end:"Twig.expression.type.object.end"},parameter:{start:"Twig.expression.type.parameter.start",end:"Twig.expression.type.parameter.end"},key:{period:"Twig.expression.type.key.period",brackets:"Twig.expression.type.key.brackets"},filter:"Twig.expression.type.filter",_function:"Twig.expression.type._function",variable:"Twig.expression.type.variable",number:"Twig.expression.type.number",_null:"Twig.expression.type.null",context:"Twig.expression.type.context",test:"Twig.expression.type.test"},e.expression.set={operations:[e.expression.type.filter,e.expression.type.operator.unary,e.expression.type.operator.binary,e.expression.type.array.end,e.expression.type.object.end,e.expression.type.parameter.end,e.expression.type.comma,e.expression.type.test],expressions:[e.expression.type._function,e.expression.type.bool,e.expression.type.string,e.expression.type.variable,e.expression.type.number,e.expression.type._null,e.expression.type.context,e.expression.type.parameter.start,e.expression.type.array.start,e.expression.type.object.start]},e.expression.set.operations_extended=e.expression.set.operations.concat([e.expression.type.key.period,e.expression.type.key.brackets]),e.expression.fn={compile:{push:function(e,t,n){n.push(e)},push_both:function(e,t,n){n.push(e),t.push(e)}},parse:{push:function(e,t,n){t.push(e)},push_value:function(e,t,n){t.push(e.value)}}},e.expression.definitions=[{type:e.expression.type.test,regex:/^is\s+(not)?\s*([a-zA-Z_][a-zA-Z0-9_]*)/,next:e.expression.set.operations.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.filter=e.match[2],e.modifier=e.match[1],delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=n.pop(),s=t.params&&e.expression.parse.apply(this,[t.params,r]),o=e.test(t.filter,i,s);t.modifier=="not"?n.push(!o):n.push(o)}},{type:e.expression.type.comma,regex:/^,/,next:e.expression.set.expressions.concat([e.expression.type.array.end,e.expression.type.object.end]),compile:function(t,n,r){var i=n.length-1,s;delete t.match,delete t.value;for(;i>=0;i--){s=n.pop();if(s.type===e.expression.type.object.start||s.type===e.expression.type.parameter.start||s.type===e.expression.type.array.start){n.push(s);break}r.push(s)}r.push(t)}},{type:e.expression.type.operator.binary,regex:/(^[\+\-~%\?\:]|^[!=]==?|^[!<>]=?|^\*\*?|^\/\/?|^and\s+|^or\s+|^in\s+|^not in\s+|^\.\.)/,next:e.expression.set.expressions.concat([e.expression.type.operator.unary]),compile:function(t,n,r){delete t.match,t.value=t.value.trim();var i=t.value,s=e.expression.operator.lookup(i,t);e.log.trace("Twig.expression.compile: ","Operator: ",s," from ",i);while(n.length>0&&(n[n.length-1].type==e.expression.type.operator.unary||n[n.length-1].type==e.expression.type.operator.binary)&&(s.associativity===e.expression.operator.leftToRight&&s.precidence>=n[n.length-1].precidence||s.associativity===e.expression.operator.rightToLeft&&s.precidence>n[n.length-1].precidence)){var o=n.pop();r.push(o)}if(i===":"){if(!n[n.length-1]||n[n.length-1].value!=="?"){var u=r.pop();if(u.type!==e.expression.type.string&&u.type!==e.expression.type.variable&&u.type!==e.expression.type.number)throw new e.Error("Unexpected value before ':' of "+u.type+" = "+u.value);t.key=u.value,r.push(t);return}}else n.push(s)},parse:function(t,n,r){t.key?n.push(t):e.expression.operator.parse(t.value,n)}},{type:e.expression.type.operator.unary,regex:/(^not\s+)/,next:e.expression.set.expressions,compile:function(t,n,r){delete t.match,t.value=t.value.trim();var i=t.value,s=e.expression.operator.lookup(i,t);e.log.trace("Twig.expression.compile: ","Operator: ",s," from ",i);while(n.length>0&&(n[n.length-1].type==e.expression.type.operator.unary||n[n.length-1].type==e.expression.type.operator.binary)&&(s.associativity===e.expression.operator.leftToRight&&s.precidence>=n[n.length-1].precidence||s.associativity===e.expression.operator.rightToLeft&&s.precidence>n[n.length-1].precidence)){var o=n.pop();r.push(o)}n.push(s)},parse:function(t,n,r){e.expression.operator.parse(t.value,n)}},{type:e.expression.type.string,regex:/^(["'])(?:(?=(\\?))\2.)*?\1/,next:e.expression.set.operations,compile:function(t,n,r){var i=t.value;delete t.match,i.substring(0,1)==='"'?i=i.replace('\\"','"'):i=i.replace("\\'","'"),t.value=i.substring(1,i.length-1).replace(/\\n/g,"\n").replace(/\\r/g,"\r"),e.log.trace("Twig.expression.compile: ","String value: ",t.value),r.push(t)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.parameter.start,regex:/^\(/,next:e.expression.set.expressions.concat([e.expression.type.parameter.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.parameter.end,regex:/^\)/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i,s=t;i=n.pop();while(n.length>0&&i.type!=e.expression.type.parameter.start)r.push(i),i=n.pop();var o=[];while(t.type!==e.expression.type.parameter.start)o.unshift(t),t=r.pop();o.unshift(t);var u=!1;t=r[r.length-1],t===undefined||t.type!==e.expression.type._function&&t.type!==e.expression.type.filter&&t.type!==e.expression.type.test&&t.type!==e.expression.type.key.brackets&&t.type!==e.expression.type.key.period?(s.expression=!0,o.pop(),o.shift(),s.params=o,r.push(s)):(s.expression=!1,t.params=o)},parse:function(t,n,r){var i=[],s=!1,o=null;if(t.expression)o=e.expression.parse.apply(this,[t.params,r]),n.push(o);else{while(n.length>0){o=n.pop();if(o&&o.type&&o.type==e.expression.type.parameter.start){s=!0;break}i.unshift(o)}if(!s)throw new e.Error("Expected end of parameter set.");n.push(i)}}},{type:e.expression.type.array.start,regex:/^\[/,next:e.expression.set.expressions.concat([e.expression.type.array.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.array.end,regex:/^\]/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i=n.length-1,s;for(;i>=0;i--){s=n.pop();if(s.type===e.expression.type.array.start)break;r.push(s)}r.push(t)},parse:function(t,n,r){var i=[],s=!1,o=null;while(n.length>0){o=n.pop();if(o.type&&o.type==e.expression.type.array.start){s=!0;break}i.unshift(o)}if(!s)throw new e.Error("Expected end of array.");n.push(i)}},{type:e.expression.type.object.start,regex:/^\{/,next:e.expression.set.expressions.concat([e.expression.type.object.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.object.end,regex:/^\}/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i=n.length-1,s;for(;i>=0;i--){s=n.pop();if(s&&s.type===e.expression.type.object.start)break;r.push(s)}r.push(t)},parse:function(t,n,r){var i={},s=!1,o=null,u=null,a=!1,f=null;while(n.length>0){o=n.pop();if(o&&o.type&&o.type===e.expression.type.object.start){s=!0;break}if(o&&o.type&&(o.type===e.expression.type.operator.binary||o.type===e.expression.type.operator.unary)&&o.key){if(!a)throw new e.Error("Missing value for key '"+o.key+"' in object definition.");i[o.key]=f,i._keys===undefined&&(i._keys=[]),i._keys.unshift(o.key),f=null,a=!1}else a=!0,f=o}if(!s)throw new e.Error("Unexpected end of object.");n.push(i)}},{type:e.expression.type.filter,regex:/^\|\s?([a-zA-Z_][a-zA-Z0-9_\-]*)/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.value=e.match[1],n.push(e)},parse:function(t,n,r){var i=n.pop(),s=t.params&&e.expression.parse.apply(this,[t.params,r]);n.push(e.filter.apply(this,[t.value,i,s]))}},{type:e.expression.type._function,regex:/^([a-zA-Z_][a-zA-Z0-9_]*)\s*\(/,next:e.expression.type.parameter.start,transform:function(e,t){return"("},compile:function(e,t,n){var r=e.match[1];e.fn=r,delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=t.fn,o;if(e.functions[s])o=e.functions[s].apply(this,i);else{if(typeof r[s]!="function")throw new e.Error(s+" function does not exist and is not defined in the context");o=r[s].apply(r,i)}n.push(o)}},{type:e.expression.type.variable,regex:/^[a-zA-Z_][a-zA-Z0-9_]*/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:e.expression.fn.compile.push,validate:function(t,n){return e.indexOf(e.expression.reservedWords,t[0])<0},parse:function(t,n,r){var i=e.expression.resolve(r[t.value],r);n.push(i)}},{type:e.expression.type.key.period,regex:/^\.([a-zA-Z0-9_]+)/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.key=e.match[1],delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=t.key,o=n.pop(),u;if(o===null||o===undefined){if(this.options.strict_variables)throw new e.Error("Can't access a key "+s+" on an null or undefined object.");return null}var a=function(e){return e.substr(0,1).toUpperCase()+e.substr(1)};typeof o=="object"&&s in o?u=o[s]:o["get"+a(s)]!==undefined?u=o["get"+a(s)]:o["is"+a(s)]!==undefined?u=o["is"+a(s)]:u=null,n.push(e.expression.resolve(u,o,i))}},{type:e.expression.type.key.brackets,regex:/^\[([^\]]*)\]/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(t,n,r){var i=t.match[1];delete t.value,delete t.match,t.stack=e.expression.compile({value:i}).stack,r.push(t)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=e.expression.parse.apply(this,[t.stack,r]),o=n.pop(),u;if(o===null||o===undefined){if(this.options.strict_variables)throw new e.Error("Can't access a key "+s+" on an null or undefined object.");return null}typeof o=="object"&&s in o?u=o[s]:u=null,n.push(e.expression.resolve(u,o,i))}},{type:e.expression.type._null,regex:/^null/,next:e.expression.set.operations,compile:function(e,t,n){delete e.match,e.value=null,n.push(e)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.context,regex:/^_context/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:e.expression.fn.compile.push,parse:function(e,t,n){t.push(n)}},{type:e.expression.type.number,regex:/^\-?\d+(\.\d+)?/,next:e.expression.set.operations,compile:function(e,t,n){e.value=Number(e.value),n.push(e)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.bool,regex:/^(true|false)/,next:e.expression.set.operations,compile:function(e,t,n){e.value=e.match[0]=="true",delete e.match,n.push(e)},parse:e.expression.fn.parse.push_value}],e.expression.resolve=function(e,t,n){return typeof e=="function"?e.apply(t,n||[]):e},e.expression.handler={},e.expression.extendType=function(t){e.expression.type[t]="Twig.expression.type."+t},e.expression.extend=function(t){if(!t.type)throw new e.Error("Unable to extend logic definition. No type provided for "+t);e.expression.handler[t.type]=t};while(e.expression.definitions.length>0)e.expression.extend(e.expression.definitions.shift());return e.expression.tokenize=function(t){var n=[],r=0,i=null,s,o,u,a,f,l=[],c;c=function(){var t=Array.prototype.slice.apply(arguments),o=t.pop(),u=t.pop();return e.log.trace("Twig.expression.tokenize","Matched a ",s," regular expression of ",t),i&&e.indexOf(i,s)<0?(l.push(s+" cannot follow a "+n[n.length-1].type+" at template:"+r+" near '"+t[0].substring(0,20)+"...'"),t[0]):e.expression.handler[s].validate&&!e.expression.handler[s].validate(t,n)?t[0]:(l=[],n.push({type:s,value:t[0],match:t}),f=!0,i=a,r+=t[0].length,e.expression.handler[s].transform?e.expression.handler[s].transform(t,n):"")},e.log.debug("Twig.expression.tokenize","Tokenizing expression ",t);while(t.length>0){t=t.trim();for(s in e.expression.handler)if(e.expression.handler.hasOwnProperty(s)){a=e.expression.handler[s].next,o=e.expression.handler[s].regex,o instanceof Array?u=o:u=[o],f=!1;while(u.length>0)o=u.pop(),t=t.replace(o,c);if(f)break}if(!f)throw l.length>0?new e.Error(l.join(" OR ")):new e.Error("Unable to parse '"+t+"' at template position"+r)}return e.log.trace("Twig.expression.tokenize","Tokenized to ",n),n},e.expression.compile=function(t){var n=t.value,r=e.expression.tokenize(n),i=null,s=[],o=[],u=null;e.log.trace("Twig.expression.compile: ","Compiling ",n);while(r.length>0)i=r.shift(),u=e.expression.handler[i.type],e.log.trace("Twig.expression.compile: ","Compiling ",i),u.compile&&u.compile(i,o,s),e.log.trace("Twig.expression.compile: ","Stack is",o),e.log.trace("Twig.expression.compile: ","Output is",s);while(o.length>0)s.push(o.pop());return e.log.trace("Twig.expression.compile: ","Final output is",s),t.stack=s,delete t.value,t},e.expression.parse=function(t,n){var r=this;t instanceof Array||(t=[t]);var i=[],s=null;return e.forEach(t,function(t){s=e.expression.handler[t.type],s.parse&&s.parse.apply(r,[t,i,n])}),i.pop()},e}(Twig||{}),Twig=function(e){e.expression.operator={leftToRight:"leftToRight",rightToLeft:"rightToLeft"};var t=function(e,t){if(t.indexOf!==undefined)return e===t||e!==""&&t.indexOf(e)>-1;var n;for(n in t)if(t.hasOwnProperty(n)&&t[n]===e)return!0;return!1};return e.expression.operator.lookup=function(t,n){switch(t){case"..":case"not in":case"in":n.precidence=20,n.associativity=e.expression.operator.leftToRight;break;case",":n.precidence=18,n.associativity=e.expression.operator.leftToRight;break;case"?":case":":n.precidence=16,n.associativity=e.expression.operator.rightToLeft;break;case"or":n.precidence=14,n.associativity=e.expression.operator.leftToRight;break;case"and":n.precidence=13,n.associativity=e.expression.operator.leftToRight;break;case"==":case"!=":n.precidence=9,n.associativity=e.expression.operator.leftToRight;break;case"<":case"<=":case">":case">=":n.precidence=8,n.associativity=e.expression.operator.leftToRight;break;case"~":case"+":case"-":n.precidence=6,n.associativity=e.expression.operator.leftToRight;break;case"//":case"**":case"*":case"/":case"%":n.precidence=5,n.associativity=e.expression.operator.leftToRight;break;case"not":n.precidence=3,n.associativity=e.expression.operator.rightToLeft;break;default:throw new e.Error(t+" is an unknown operator.")}return n.operator=t,n},e.expression.operator.parse=function(n,r){e.log.trace("Twig.expression.operator.parse: ","Handling ",n);var i,s,o;switch(n){case":":break;case"?":o=r.pop(),s=r.pop(),i=r.pop(),i?r.push(s):r.push(o);break;case"+":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i+s);break;case"-":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i-s);break;case"*":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i*s);break;case"/":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i/s);break;case"//":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(parseInt(i/s));break;case"%":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i%s);break;case"~":s=r.pop(),i=r.pop(),r.push((i!==undefined?i.toString():"")+(s!==undefined?s.toString():""));break;case"not":case"!":r.push(!r.pop());break;case"<":s=r.pop(),i=r.pop(),r.push(i<s);break;case"<=":s=r.pop(),i=r.pop(),r.push(i<=s);break;case">":s=r.pop(),i=r.pop(),r.push(i>s);break;case">=":s=r.pop(),i=r.pop(),r.push(i>=s);break;case"===":s=r.pop(),i=r.pop(),r.push(i===s);break;case"==":s=r.pop(),i=r.pop(),r.push(i==s);break;case"!==":s=r.pop(),i=r.pop(),r.push(i!==s);break;case"!=":s=r.pop(),i=r.pop(),r.push(i!=s);break;case"or":s=r.pop(),i=r.pop(),r.push(i||s);break;case"and":s=r.pop(),i=r.pop(),r.push(i&&s);break;case"**":s=r.pop(),i=r.pop(),r.push(Math.pow(i,s));break;case"not in":s=r.pop(),i=r.pop(),r.push(!t(i,s));break;case"in":s=r.pop(),i=r.pop(),r.push(t(i,s));break;case"..":s=r.pop(),i=r.pop(),r.push(e.functions.range(i,s));break;default:throw new e.Error(n+" is an unknown operator.")}},e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}return e.filters={upper:function(e){return typeof e!="string"?e:e.toUpperCase()},lower:function(e){return typeof e!="string"?e:e.toLowerCase()},capitalize:function(e){return typeof e!="string"?e:e.substr(0,1).toUpperCase()+e.toLowerCase().substr(1)},title:function(e){return typeof e!="string"?e:e.toLowerCase().replace(/(^|\s)([a-z])/g,function(e,t,n){return t+n.toUpperCase()})},length:function(t){return e.lib.is("Array",t)||typeof t=="string"?t.length:e.lib.is("Object",t)?t._keys===undefined?Object.keys(t).length:t._keys.length:0},reverse:function(e){if(t("Array",e))return e.reverse();if(t("String",e))return e.split("").reverse().join("");if(e instanceof Object){var n=e._keys||Object.keys(e).reverse();return e._keys=n,e}},sort:function(e){if(t("Array",e))return e.sort();if(e instanceof Object){delete e._keys;var n=Object.keys(e),r=n.sort(function(t,n){return e[t]>e[n]});return e._keys=r,e}},keys:function(t){if(t===undefined||t===null)return;var n=t._keys||Object.keys(t),r=[];return e.forEach(n,function(e){if(e==="_keys")return;t.hasOwnProperty(e)&&r.push(e)}),r},url_encode:function(e){if(e===undefined||e===null)return;return encodeURIComponent(e)},join:function(t,n){if(t===undefined||t===null)return;var r="",i=[],s=null;return n&&n[0]&&(r=n[0]),t instanceof Array?i=t:(s=t._keys||Object.keys(t),e.forEach(s,function(e){if(e==="_keys")return;t.hasOwnProperty(e)&&i.push(t[e])})),i.join(r)},"default":function(t,n){if(n===undefined||n.length!==1)throw new e.Error("default filter expects one argument");return t===undefined||t===null||t===""?n[0]:t},json_encode:function(e){return e&&e.hasOwnProperty("_keys")&&delete e._keys,e===undefined||e===null?"null":JSON.stringify(e)},merge:function(t,n){var r=[],i=0,s=[];t instanceof Array?e.forEach(n,function(e){e instanceof Array||(r={})}):r={},r instanceof Array||(r._keys=[]),t instanceof Array?e.forEach(t,function(e){r._keys&&r._keys.push(i),r[i]=e,i++}):(s=t._keys||Object.keys(t),e.forEach(s,function(e){r[e]=t[e],r._keys.push(e);var n=parseInt(e,10);!isNaN(n)&&n>=i&&(i=n+1)})),e.forEach(n,function(t){t instanceof Array?e.forEach(t,function(e){r._keys&&r._keys.push(i),r[i]=e,i++}):(s=t._keys||Object.keys(t),e.forEach(s,function(e){r[e]||r._keys.push(e),r[e]=t[e];var n=parseInt(e,10);!isNaN(n)&&n>=i&&(i=n+1)}))});if(n.length===0)throw new e.Error("Filter merge expects at least one parameter");return r},date:function(t,n){if(t===undefined||t===null)return;var r=e.functions.date(t);return e.lib.formatDate(r,n[0])},date_modify:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length!==1)throw new e.Error("date_modify filter expects 1 argument");var r=n[0],i;return e.lib.is("Date",t)&&(i=e.lib.strtotime(r,t.getTime()/1e3)),e.lib.is("String",t)&&(i=e.lib.strtotime(r,e.lib.strtotime(t))),e.lib.is("Number",t)&&(i=e.lib.strtotime(r,t)),new Date(i*1e3)},replace:function(t,n){if(t===undefined||t===null)return;var r=n[0],i;for(i in r)r.hasOwnProperty(i)&&i!=="_keys"&&(t=e.lib.replaceAll(t,i,r[i]));return t},format:function(t,n){if(t===undefined||t===null)return;return e.lib.vsprintf(t,n)},striptags:function(t){if(t===undefined||t===null)return;return e.lib.strip_tags(t)},escape:function(e){if(e===undefined||e===null)return;return e.toString().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")},e:function(t){return e.filters.escape(t)},nl2br:function(t){if(t===undefined||t===null)return;var n="BACKSLASH_n_replace",r="<br />"+n;return t=e.filters.escape(t).replace(/\r\n/g,r).replace(/\r/g,r).replace(/\n/g,r),e.lib.replaceAll(t,n,"\n")},number_format:function(e,t){var n=e,r=t&&t[0]?t[0]:undefined,i=t&&t[1]!==undefined?t[1]:".",s=t&&t[2]!==undefined?t[2]:",";n=(n+"").replace(/[^0-9+\-Ee.]/g,"");var o=isFinite(+n)?+n:0,u=isFinite(+r)?Math.abs(r):0,a="",f=function(e,t){var n=Math.pow(10,t);return""+Math.round(e*n)/n};return a=(u?f(o,u):""+Math.round(o)).split("."),a[0].length>3&&(a[0]=a[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(a[1]||"").length<u&&(a[1]=a[1]||"",a[1]+=(new Array(u-a[1].length+1)).join("0")),a.join(i)},trim:function(t,n){if(t===undefined||t===null)return;var r=e.filters.escape(""+t),i;n&&n[0]?i=""+n[0]:i=" \n\r \f            ​\u2028\u2029 ";for(var s=0;s<r.length;s++)if(i.indexOf(r.charAt(s))===-1){r=r.substring(s);break}for(s=r.length-1;s>=0;s--)if(i.indexOf(r.charAt(s))===-1){r=r.substring(0,s+1);break}return i.indexOf(r.charAt(0))===-1?r:""},slice:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length<1)throw new e.Error("slice filter expects at least 1 argument");var r=n[0]||0,i=n.length>1?n[1]:t.length,s=r>=0?r:Math.max(t.length+r,0);if(e.lib.is("Array",t)){var o=[];for(var u=s;u<s+i&&u<t.length;u++)o.push(t[u]);return o}if(e.lib.is("String",t))return t.substr(s,i);throw new e.Error("slice filter expects value to be an array or string")},abs:function(e){if(e===undefined||e===null)return;return Math.abs(e)},first:function(e){if(e instanceof Array)return e[0];if(e instanceof Object){if("_keys"in e)return e[e._keys[0]]}else if(typeof e=="string")return e.substr(0,1);return},split:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length<1||n.length>2)throw new e.Error("split filter expects 1 or 2 argument");if(e.lib.is("String",t)){var r=n[0],i=n[1],s=t.split(r);if(i===undefined)return s;if(i<0)return t.split(r,s.length+i);var o=[];if(r=="")while(s.length>0){var u="";for(var a=0;a<i&&s.length>0;a++)u+=s.shift();o.push(u)}else{for(var a=0;a<i-1&&s.length>0;a++)o.push(s.shift());s.length>0&&o.push(s.join(r))}return o}throw new e.Error("split filter expects value to be a string")},last:function(t){if(e.lib.is("Object",t)){var n;return t._keys===undefined?n=Object.keys(t):n=t._keys,t[n[n.length-1]]}return t[t.length-1]},raw:function(e){return e},batch:function(t,n){var r=n.shift(),i=n.shift(),s,o,u;if(!e.lib.is("Array",t))throw new e.Error("batch filter expects items to be an array");if(!e.lib.is("Number",r))throw new e.Error("batch filter expects size to be a number");r=Math.ceil(r),s=e.lib.chunkArray(t,r);if(i&&t.length%r!=0){o=s.pop(),u=r-o.length;while(u--)o.push(i);s.push(o)}return s},round:function(t,n){n=n||[];var r=n.length>0?n[0]:0,i=n.length>1?n[1]:"common";t=parseFloat(t);if(r&&!e.lib.is("Number",r))throw new e.Error("round filter expects precision to be a number");if(i==="common")return e.lib.round(t,r);if(!e.lib.is("Function",Math[i]))throw new e.Error("round filter expects method to be 'floor', 'ceil', or 'common'");return Math[i](t*Math.pow(10,r))/Math.pow(10,r)}},e.filter=function(t,n,r){if(!e.filters[t])throw"Unable to find filter "+t;return e.filters[t].apply(this,[n,r])},e.filter.extend=function(t,n){e.filters[t]=n},e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}return e.functions={range:function(e,t,n){var r=[],i,s,o,u=n||1,a=!1;!isNaN(e)&&!isNaN(t)?(i=parseInt(e,10),s=parseInt(t,10)):isNaN(e)&&isNaN(t)?(a=!0,i=e.charCodeAt(0),s=t.charCodeAt(0)):(i=isNaN(e)?0:e,s=isNaN(t)?0:t),o=i>s?!1:!0;if(o)while(i<=s)r.push(a?String.fromCharCode(i):i),i+=u;else while(i>=s)r.push(a?String.fromCharCode(i):i),i-=u;return r},cycle:function(e,t){var n=t%e.length;return e[n]},dump:function(){var t="\n",n=" ",r=0,i="",s=Array.prototype.slice.call(arguments),o=function(e){var t="";while(e>0)e--,t+=n;return t},u=function(e){i+=o(r),typeof e=="object"?a(e):typeof e=="function"?i+="function()"+t:typeof e=="string"?i+="string("+e.length+') "'+e+'"'+t:typeof e=="number"?i+="number("+e+")"+t:typeof e=="boolean"&&(i+="bool("+e+")"+t)},a=function(e){var n;if(e===null)i+="NULL"+t;else if(e===undefined)i+="undefined"+t;else if(typeof e=="object"){i+=o(r)+typeof e,r++,i+="("+function(e){var t=0,n;for(n in e)e.hasOwnProperty(n)&&t++;return t}(e)+") {"+t;for(n in e)i+=o(r)+"["+n+"]=> "+t,u(e[n]);r--,i+=o(r)+"}"+t}else u(e)};return s.length==0&&s.push(this.context),e.forEach(s,function(e){a(e)}),i},date:function(t,n){var r;if(t===undefined)r=new Date;else if(e.lib.is("Date",t))r=t;else if(e.lib.is("String",t))r=new Date(e.lib.strtotime(t)*1e3);else{if(!e.lib.is("Number",t))throw new e.Error("Unable to parse date "+t);r=new Date(t*1e3)}return r},block:function(e){return this.blocks[e]},parent:function(){return e.placeholders.parent},attribute:function(e,t,n){return e instanceof Object&&e.hasOwnProperty(t)?typeof e[t]=="function"?e[t].apply(undefined,n):e[t]:e[t]||undefined}},e._function=function(t,n,r){if(!e.functions[t])throw"Unable to find function "+t;return e.functions[t](n,r)},e._function.extend=function(t,n){e.functions[t]=n},e}(Twig||{}),Twig=function(e){return e.tests={empty:function(e){if(e===null||e===undefined)return!0;if(typeof e=="number")return!1;if(e.length&&e.length>0)return!1;for(var t in e)if(e.hasOwnProperty(t))return!1;return!0},odd:function(e){return e%2===1},even:function(e){return e%2===0},divisibleby:function(e,t){return e%t[0]===0},defined:function(e){return e!==undefined},none:function(e){return e===null},"null":function(e){return this.none(e)},sameas:function(e,t){return e===t[0]}},e.test=function(t,n,r){if(!e.tests[t])throw"Test "+t+" is not defined.";return e.tests[t](n,r)},e.test.extend=function(t,n){e.tests[t]=n},e}(Twig||{}),Twig=function(e){return e.exports={VERSION:e.VERSION},e.exports.twig=function(n){var r=n.id,i={strict_variables:n.strict_variables||!1,allowInlineIncludes:n.allowInlineIncludes||!1,rethrow:n.rethrow||!1};r&&e.validateId(r),n.debug!==undefined&&(e.debug=n.debug),n.trace!==undefined&&(e.trace=n.trace);if(n.data!==undefined)return new e.Template({data:n.data,module:n.module,id:r,options:i});if(n.ref!==undefined){if(n.id!==undefined)throw new e.Error("Both ref and id cannot be set on a twig.js template.");return e.Templates.load(n.ref)}if(n.href!==undefined)return e.Templates.loadRemote(n.href,{id:r,method:"ajax",base:n.base,module:n.module,precompiled:n.precompiled,async:n.async,options:i},n.load,n.error);if(n.path!==undefined)return e.Templates.loadRemote(n.path,{id:r,method:"fs",base:n.base,module:n.module,precompiled:n.precompiled,async:n.async,options:i},n.load,n.error)},e.exports.extendFilter=function(t,n){e.filter.extend(t,n)},e.exports.extendFunction=function(t,n){e._function.extend(t,n)},e.exports.extendTest=function(t,n){e.test.extend(t,n)},e.exports.extendTag=function(t){e.logic.extend(t)},e.exports.extend=function(t){t(e)},e.exports.compile=function(t,n){var r=n.filename,i=n.filename,s;return s=new e.Template({data:t,path:i,id:r,options:n.settings["twig options"]}),function(e){return s.render(e)}},e.exports.renderFile=function(t,n,r){"function"==typeof n&&(r=n,n={}),n=n||{};var i={path:t,base:n.settings.views,load:function(e){r(null,e.render(n))}},s=n.settings["twig options"];if(s)for(var o in s)s.hasOwnProperty(o)&&(i[o]=s[o]);e.exports.twig(i)},e.exports.__express=e.exports.renderFile,e.exports.cache=function(t){e.cache=t},e}(Twig||{}),Twig=function(e){return e.compiler={module:{}},e.compiler.compile=function(t,n){var r=JSON.stringify(t.tokens),i=t.id,s;if(n.module){if(e.compiler.module[n.module]===undefined)throw new e.Error("Unable to find module type "+n.module);s=e.compiler.module[n.module](i,r,n.twig)}else s=e.compiler.wrap(i,r);return s},e.compiler.module={amd:function(t,n,r){return'define(["'+r+'"], function (Twig) {\n var twig, templates;\ntwig = Twig.twig;\ntemplates = '+e.compiler.wrap(t,n)+"\n return templates;\n});"},node:function(t,n){return'var twig = require("twig").twig;\nexports.template = '+e.compiler.wrap(t,n)},cjs2:function(t,n,r){return'module.declare([{ twig: "'+r+'" }], function (require, exports, module) {\n'+' var twig = require("twig").twig;\n'+" exports.template = "+e.compiler.wrap(t,n)+"\n});"}},e.compiler.wrap=function(e,t){return'twig({id:"'+e.replace('"','\\"')+'", data:'+t+", precompiled: true});\n"},e}(Twig||{});typeof module!="undefined"&&module.declare?module.declare([],function(e,t,n){for(key in Twig.exports)Twig.exports.hasOwnProperty(key)&&(t[key]=Twig.exports[key])}):typeof define=="function"&&define.amd||1?timely.define("external_libs/twig",[],function(){return Twig.exports}):typeof module!="undefined"&&module.exports?module.exports=Twig.exports:(window.twig=Twig.exports.twig,window.Twig=Twig.exports),timely.define("libs/twig",["external_libs/twig"],function(e){return e.extendFunction("ai1ec_disable_content_output",function(){}),e}),timely.define("agenda",["libs/twig","agenda"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/agenda.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<div class="ai1ec-agenda-view">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"dates",match:["dates"]},{type:"Twig.expression.type.test",filter:"empty"}],output:[{type:"raw",value:' <p class="ai1ec-no-results">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_upcoming_events",match:["text_upcoming_events"]}]},{type:"raw",value:"\n </p>\n "}]}},{type:"logic",token:{type:"Twig.logic.type.else",match:["else"],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"date_info",expression:[{type:"Twig.expression.type.variable",value:"dates",match:["dates"]}],output:[{type:"raw",value:' <div class="ai1ec-date\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n <a class="ai1ec-date-title ai1ec-load-view"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <div class="ai1ec-month">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"month"}]},{type:"raw",value:'</div>\n <div class="ai1ec-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</div>\n <div class="ai1ec-weekday">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</div>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_year_in_agenda_dates",match:["show_year_in_agenda_dates"]}],output:[{type:"raw",value:' <div class="ai1ec-year">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"year"}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' </a>\n <div class="ai1ec-date-events">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"category",expression:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"events"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"category",match:["category"]}],output:[{type:"raw",value:' <div class="ai1ec-event\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"}],output:[{type:"raw",value:"ai1ec-allday"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"expanded",match:["expanded"]}],output:[{type:"raw",value:"ai1ec-expanded"}]}},{type:"raw",value:'"\n data-end="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end"}]},{type:"raw",value:'">\n\n <div class="ai1ec-event-header">\n <div class="ai1ec-event-toggle">\n <i class="ai1ec-fa ai1ec-fa-minus-circle ai1ec-fa-lg"></i>\n <i class="ai1ec-fa ai1ec-fa-plus-circle ai1ec-fa-lg"></i>\n </div>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"edit_post_link",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"edit_post_link",match:["edit_post_link"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <a class="post-edit-link" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"edit_post_link",match:["edit_post_link"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"timespan_short"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n\n "},{type:"raw",value:'\n <div class="ai1ec-event-summary '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"expanded",match:["expanded"]}],output:[{type:"raw",value:"ai1ec-expanded"}]}},{type:"raw",value:'">\n\n <div class="ai1ec-event-description">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"content_img_url"},{type:"Twig.expression.type.test",filter:"empty"},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_content"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <div class="ai1ec-event-summary-footer">\n <div class="ai1ec-btn-group ai1ec-actions">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary\n ai1ec-btn-xs ai1ec-buy-tickets"\n target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:' <a class="ai1ec-read-more ai1ec-btn ai1ec-btn-default\n ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_read_more",match:["text_read_more"]}]},{type:"raw",value:' <i class="ai1ec-fa ai1ec-fa-arrow-right"></i>\n </a>\n </div>\n '},{type:"logic",token:{type:"Twig.logic.type.set",key:"categories",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"categories_html"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"tags",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"tags_html"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"categories",match:["categories"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <span class="ai1ec-categories">\n <span class="ai1ec-field-label">\n <i class="ai1ec-fa ai1ec-fa-folder-open"></i>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_categories",match:["text_categories"]}]},{type:"raw",value:"\n </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"categories",match:["categories"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"tags",match:["tags"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <span class="ai1ec-tags">\n <span class="ai1ec-field-label">\n <i class="ai1ec-fa ai1ec-fa-tags"></i>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_tags",match:["text_tags"]}]},{type:"raw",value:"\n </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"tags",match:["tags"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:" </div>\n </div>\n\n </div>\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n</div>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("oneday",["libs/twig","oneday"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/oneday.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view-original">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <th class="ai1ec-weekday\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n '},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_reveal_button",match:["show_reveal_button"]},{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"last"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <div class="ai1ec-reveal-full-day">\n <button class="ai1ec-btn ai1ec-btn-info ai1ec-btn-xs\n ai1ec-tooltip-trigger"\n data-placement="left"\n title="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_full_day",match:["text_full_day"]},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-expand"></i>\n </button>\n </div>\n '}]}},{type:"raw",value:' <a class="ai1ec-load-view" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <span class="ai1ec-weekday-date">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</span>\n <span class="ai1ec-weekday-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</span>\n </a>\n </th>\n "}]}},{type:"raw",value:" </tr>\n <tr>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <td class="ai1ec-allday-events\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-allday-label">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_all_day",match:["text_all_day"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"allday"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n ai1ec-allday\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n\n </thead>\n <tbody>\n <tr class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-grid-container">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"h",value_var:"hour",expression:[{type:"Twig.expression.type.variable",value:"hours",match:["hours"]}],output:[{type:"raw",value:' <div class="ai1ec-hour-marker\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:8,match:["8",null]},{type:"Twig.expression.type.operator.binary",value:">=",precidence:8,associativity:"leftToRight",operator:">="},{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:18,match:["18",null]},{type:"Twig.expression.type.operator.binary",value:"<",precidence:8,associativity:"leftToRight",operator:"<"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:"ai1ec-business-hour"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"hour",match:["hour"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"quarter",expression:[{type:"Twig.expression.type.number",value:1,match:["1",null]},{type:"Twig.expression.type.number",value:3,match:["3",null]},{type:"Twig.expression.type.operator.binary",value:"..",precidence:20,associativity:"leftToRight",operator:".."}],output:[{type:"raw",value:' <div class="ai1ec-quarter-marker"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"quarter",match:["quarter"]},{type:"Twig.expression.type.number",value:15,match:["15",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:'px;"></div>\n '}]}},{type:"raw",value:" "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.variable",value:"show_now",match:["show_now"]},{type:"Twig.expression.type.operator.binary",value:"or",precidence:14,associativity:"leftToRight",operator:"or"}],output:[{type:"raw",value:' <div class="ai1ec-now-marker" style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_top",match:["now_top"]}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_now_label",match:["text_now_label"]}]},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_text",match:["now_text"]}]},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day_array",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"notallday"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"event",expression:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"event"}]}},{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:"ai1ec-start-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:"ai1ec-end-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"top"}]},{type:"raw",value:"px;\n height: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"height"}]},{type:"raw",value:"px;\n left: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"indent"},{type:"Twig.expression.type.variable",value:"indent_multiplier",match:["indent_multiplier"]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"indent_offset",match:["indent_offset"]},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:"px;\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"faded_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"faded_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"rgba_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba1",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.05"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba3",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.3"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" border: 1px solid "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}]},{type:"raw",value:";\n border-color: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.5"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:";\n background-image: -webkit-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -moz-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -ms-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -o-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n "}]}},{type:"raw",value:' ">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-start-truncator">◤</div>\n '}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-end-truncator">◢</div>\n '}]}},{type:"raw",value:'\n <div class="ai1ec-event">\n <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:'\n </span>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n </tbody>\n\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("month",["libs/twig","month"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/month.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-month-view ai1ec-popover-boundary\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"month_word_wrap",match:["month_word_wrap"]}],output:[{type:"raw",value:"ai1ec-word-wrap"}]}},{type:"raw",value:'">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"weekday",expression:[{type:"Twig.expression.type.variable",value:"weekdays",match:["weekdays"]}],output:[{type:"raw",value:' <th scope="col" class="ai1ec-weekday">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"weekday",match:["weekday"]}]},{type:"raw",value:"</th>\n "}]}},{type:"raw",value:" </tr>\n </thead>\n <tbody>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"week",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"added_stretcher",expression:[{type:"Twig.expression.type.bool",value:!1}]}},{type:"raw",value:' <tr class="ai1ec-week">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"week",match:["week"]}],output:[{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date"}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n "},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"added_stretcher",match:["added_stretcher"]},{type:"Twig.expression.type.operator.unary",value:"not",precidence:3,associativity:"rightToLeft",operator:"not"}],output:[{type:"raw",value:' <div class="ai1ec-day-stretcher"></div>\n '},{type:"logic",token:{type:"Twig.logic.type.set",key:"added_stretcher",expression:[{type:"Twig.expression.type.bool",value:!0}]}},{type:"raw",value:" "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n <div class="ai1ec-date">\n <a class="ai1ec-load-view"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date_link"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date"}]},{type:"raw",value:"</a>\n </div>\n\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"events"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:' data-start-day="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_day"}]},{type:"raw",value:'"\n data-end-day="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"multiday_end_day"}]},{type:"raw",value:'"\n data-start-truncated="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"},{type:"Twig.expression.type.string",value:"true"},{type:"Twig.expression.type.string",value:"false"},{type:"Twig.expression.type.operator.binary",value:"?",precidence:16,associativity:"rightToLeft",operator:"?"}]},{type:"raw",value:'"\n data-end-truncated="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"},{type:"Twig.expression.type.string",value:"true"},{type:"Twig.expression.type.string",value:"false"},{type:"Twig.expression.type.operator.binary",value:"?",precidence:16,associativity:"rightToLeft",operator:"?"}]},{type:"raw",value:'"\n '}]}},{type:"raw",value:' data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event\n ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"}],output:[{type:"raw",value:"ai1ec-allday"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"},{type:"Twig.expression.type.operator.unary",value:"not",precidence:3,associativity:"rightToLeft",operator:"not"}],output:[{type:"raw",value:' <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:' </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:" </div>\n </td>\n "}]}},{type:"logic",token:{type:"Twig.logic.type.else",match:["else"],output:[{type:"raw",value:" "},{type:"raw",value:'\n <td class="ai1ec-empty"></td>\n '}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </tr>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tbody>\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("external_libs/jquery_history",["jquery_timely"],function(e){try{(function(t,n){var r=t.History=t.History||{};if(typeof r.Adapter!="undefined")throw new Error("History.js Adapter has already been loaded...");r.Adapter={bind:function(t,n,r){e(t).bind(n,r)},trigger:function(t,n,r){e(t).trigger(n,r)},extractEventData:function(e,t,r){var i=t&&t.originalEvent&&t.originalEvent[e]||r&&r[e]||n;return i},onDomLoad:function(t){e(t)}},typeof r.init!="undefined"&&r.init()})(window),function(e,t){var n=e.document,r=e.setTimeout||r,i=e.clearTimeout||i,s=e.setInterval||s,o=e.History=e.History||{};if(typeof o.initHtml4!="undefined")throw new Error("History.js HTML4 Support has already been loaded...");o.initHtml4=function(){if(typeof o.initHtml4.initialized!="undefined")return!1;o.initHtml4.initialized=!0,o.enabled=!0,o.savedHashes=[],o.isLastHash=function(e){var t=o.getHashByIndex(),n;return n=e===t,n},o.saveHash=function(e){return o.isLastHash(e)?!1:(o.savedHashes.push(e),!0)},o.getHashByIndex=function(e){var t=null;return typeof e=="undefined"?t=o.savedHashes[o.savedHashes.length-1]:e<0?t=o.savedHashes[o.savedHashes.length+e]:t=o.savedHashes[e],t},o.discardedHashes={},o.discardedStates={},o.discardState=function(e,t,n){var r=o.getHashByState(e),i;return i={discardedState:e,backState:n,forwardState:t},o.discardedStates[r]=i,!0},o.discardHash=function(e,t,n){var r={discardedHash:e,backState:n,forwardState:t};return o.discardedHashes[e]=r,!0},o.discardedState=function(e){var t=o.getHashByState(e),n;return n=o.discardedStates[t]||!1,n},o.discardedHash=function(e){var t=o.discardedHashes[e]||!1;return t},o.recycleState=function(e){var t=o.getHashByState(e);return o.discardedState(e)&&delete o.discardedStates[t],!0},o.emulated.hashChange&&(o.hashChangeInit=function(){o.checkerFunction=null;var t="",r,i,u,a;return o.isInternetExplorer()?(r="historyjs-iframe",i=n.createElement("iframe"),i.setAttribute("id",r),i.style.display="none",n.body.appendChild(i),i.contentWindow.document.open(),i.contentWindow.document.close(),u="",a=!1,o.checkerFunction=function(){if(a)return!1;a=!0;var n=o.getHash()||"",r=o.unescapeHash(i.contentWindow.document.location.hash)||"";return n!==t?(t=n,r!==n&&(u=r=n,i.contentWindow.document.open(),i.contentWindow.document.close(),i.contentWindow.document.location.hash=o.escapeHash(n)),o.Adapter.trigger(e,"hashchange")):r!==u&&(u=r,o.setHash(r,!1)),a=!1,!0}):o.checkerFunction=function(){var n=o.getHash();return n!==t&&(t=n,o.Adapter.trigger(e,"hashchange")),!0},o.intervalList.push(s(o.checkerFunction,o.options.hashChangeInterval)),!0},o.Adapter.onDomLoad(o.hashChangeInit)),o.emulated.pushState&&(o.onHashChange=function(t){var r=t&&t.newURL||n.location.href,i=o.getHashByUrl(r),s=null,u=null,a=null,f;return o.isLastHash(i)?(o.busy(!1),!1):(o.doubleCheckComplete(),o.saveHash(i),i&&o.isTraditionalAnchor(i)?(o.Adapter.trigger(e,"anchorchange"),o.busy(!1),!1):(s=o.extractState(o.getFullUrl(i||n.location.href,!1),!0),o.isLastSavedState(s)?(o.busy(!1),!1):(u=o.getHashByState(s),f=o.discardedState(s),f?(o.getHashByIndex(-2)===o.getHashByState(f.forwardState)?o.back(!1):o.forward(!1),!1):(o.pushState(s.data,s.title,s.url,!1),!0))))},o.Adapter.bind(e,"hashchange",o.onHashChange),o.pushState=function(t,r,i,s){if(o.getHashByUrl(i))throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(s!==!1&&o.busy())return o.pushQueue({scope:o,callback:o.pushState,args:arguments,queue:s}),!1;o.busy(!0);var u=o.createStateObject(t,r,i),a=o.getHashByState(u),f=o.getState(!1),l=o.getHashByState(f),c=o.getHash();return o.storeState(u),o.expectedStateId=u.id,o.recycleState(u),o.setTitle(u),a===l?(o.busy(!1),!1):a!==c&&a!==o.getShortUrl(n.location.href)?(o.setHash(a,!1),!1):(o.saveState(u),o.Adapter.trigger(e,"statechange"),o.busy(!1),!0)},o.replaceState=function(e,t,n,r){if(o.getHashByUrl(n))throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(r!==!1&&o.busy())return o.pushQueue({scope:o,callback:o.replaceState,args:arguments,queue:r}),!1;o.busy(!0);var i=o.createStateObject(e,t,n),s=o.getState(!1),u=o.getStateByIndex(-2);return o.discardState(s,i,u),o.pushState(i.data,i.title,i.url,!1),!0}),o.emulated.pushState&&o.getHash()&&!o.emulated.hashChange&&o.Adapter.onDomLoad(function(){o.Adapter.trigger(e,"hashchange")})},typeof o.init!="undefined"&&o.init()}(window),function(e,t){var n=e.console||t,r=e.document,i=e.navigator,s=e.sessionStorage||!1,o=e.setTimeout,u=e.clearTimeout,a=e.setInterval,f=e.clearInterval,l=e.JSON,c=e.alert,h=e.History=e.History||{},p=e.history;l.stringify=l.stringify||l.encode,l.parse=l.parse||l.decode;if(typeof h.init!="undefined")throw new Error("History.js Core has already been loaded...");h.init=function(){return typeof h.Adapter=="undefined"?!1:(typeof h.initCore!="undefined"&&h.initCore(),typeof h.initHtml4!="undefined"&&h.initHtml4(),!0)},h.initCore=function(){if(typeof h.initCore.initialized!="undefined")return!1;h.initCore.initialized=!0,h.options=h.options||{},h.options.hashChangeInterval=h.options.hashChangeInterval||100,h.options.safariPollInterval=h.options.safariPollInterval||500,h.options.doubleCheckInterval=h.options.doubleCheckInterval||500,h.options.storeInterval=h.options.storeInterval||1e3,h.options.busyDelay=h.options.busyDelay||250,h.options.debug=h.options.debug||!1,h.options.initialTitle=h.options.initialTitle||r.title,h.intervalList=[],h.clearAllIntervals=function(){var e,t=h.intervalList;if(typeof t!="undefined"&&t!==null){for(e=0;e<t.length;e++)f(t[e]);h.intervalList=null}},h.debug=function(){(h.options.debug||!1)&&h.log.apply(h,arguments)},h.log=function(){var e=typeof n!="undefined"&&typeof n.log!="undefined"&&typeof n.log.apply!="undefined",t=r.getElementById("log"),i,s,o,u,a;e?(u=Array.prototype.slice.call(arguments),i=u.shift(),typeof n.debug!="undefined"?n.debug.apply(n,[i,u]):n.log.apply(n,[i,u])):i="\n"+arguments[0]+"\n";for(s=1,o=arguments.length;s<o;++s){a=arguments[s];if(typeof a=="object"&&typeof l!="undefined")try{a=l.stringify(a)}catch(f){}i+="\n"+a+"\n"}return t?(t.value+=i+"\n-----\n",t.scrollTop=t.scrollHeight-t.clientHeight):e||c(i),!0},h.getInternetExplorerMajorVersion=function(){var e=h.getInternetExplorerMajorVersion.cached=typeof h.getInternetExplorerMajorVersion.cached!="undefined"?h.getInternetExplorerMajorVersion.cached:function(){var e=3,t=r.createElement("div"),n=t.getElementsByTagName("i");while((t.innerHTML="<!--[if gt IE "+ ++e+"]><i></i><![endif]-->")&&n[0]);return e>4?e:!1}();return e},h.isInternetExplorer=function(){var e=h.isInternetExplorer.cached=typeof h.isInternetExplorer.cached!="undefined"?h.isInternetExplorer.cached:Boolean(h.getInternetExplorerMajorVersion());return e},h.emulated={pushState:!Boolean(e.history&&e.history.pushState&&e.history.replaceState&&!/ Mobile\/([1-7][a-z]|(8([abcde]|f(1[0-8]))))/i.test(i.userAgent)&&!/AppleWebKit\/5([0-2]|3[0-2])/i.test(i.userAgent)),hashChange:Boolean(!("onhashchange"in e||"onhashchange"in r)||h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8)},h.enabled=!h.emulated.pushState,h.bugs={setHash:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),safariPoll:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),ieDoubleCheck:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8),hashEscape:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<7)},h.isEmptyObject=function(e){for(var t in e)return!1;return!0},h.cloneObject=function(e){var t,n;return e?(t=l.stringify(e),n=l.parse(t)):n={},n},h.getRootUrl=function(){var e=r.location.protocol+"//"+(r.location.hostname||r.location.host);if(r.location.port||!1)e+=":"+r.location.port;return e+="/",e},h.getBaseHref=function(){var e=r.getElementsByTagName("base"),t=null,n="";return e.length===1&&(t=e[0],n=t.href.replace(/[^\/]+$/,"")),n=n.replace(/\/+$/,""),n&&(n+="/"),n},h.getBaseUrl=function(){var e=h.getBaseHref()||h.getBasePageUrl()||h.getRootUrl();return e},h.getPageUrl=function(){var e=h.getState(!1,!1),t=(e||{}).url||r.location.href,n;return n=t.replace(/\/+$/,"").replace(/[^\/]+$/,function(e,t,n){return/\./.test(e)?e:e+"/"}),n},h.getBasePageUrl=function(){var e=r.location.href.replace(/[#\?].*/,"").replace(/[^\/]+$/,function(e,t,n){return/[^\/]$/.test(e)?"":e}).replace(/\/+$/,"")+"/";return e},h.getFullUrl=function(e,t){var n=e,r=e.substring(0,1);return t=typeof t=="undefined"?!0:t,/[a-z]+\:\/\//.test(e)||(r==="/"?n=h.getRootUrl()+e.replace(/^\/+/,""):r==="#"?n=h.getPageUrl().replace(/#.*/,"")+e:r==="?"?n=h.getPageUrl().replace(/[\?#].*/,"")+e:t?n=h.getBaseUrl()+e.replace(/^(\.\/)+/,""):n=h.getBasePageUrl()+e.replace(/^(\.\/)+/,"")),n.replace(/\#$/,"")},h.getShortUrl=function(e){var t=e,n=h.getBaseUrl(),r=h.getRootUrl();return h.emulated.pushState&&(t=t.replace(n,"")),t=t.replace(r,"/"),h.isTraditionalAnchor(t)&&(t="./"+t),t=t.replace(/^(\.\/)+/g,"./").replace(/\#$/,""),t},h.store={},h.idToState=h.idToState||{},h.stateToId=h.stateToId||{},h.urlToId=h.urlToId||{},h.storedStates=h.storedStates||[],h.savedStates=h.savedStates||[],h.normalizeStore=function(){h.store.idToState=h.store.idToState||{},h.store.urlToId=h.store.urlToId||{},h.store.stateToId=h.store.stateToId||{}},h.getState=function(e,t){typeof e=="undefined"&&(e=!0),typeof t=="undefined"&&(t=!0);var n=h.getLastSavedState();return!n&&t&&(n=h.createStateObject()),e&&(n=h.cloneObject(n),n.url=n.cleanUrl||n.url),n},h.getIdByState=function(e){var t=h.extractId(e.url),n;if(!t){n=h.getStateString(e);if(typeof h.stateToId[n]!="undefined")t=h.stateToId[n];else if(typeof h.store.stateToId[n]!="undefined")t=h.store.stateToId[n];else{for(;;){t=(new Date).getTime()+String(Math.random()).replace(/\D/g,"");if(typeof h.idToState[t]=="undefined"&&typeof h.store.idToState[t]=="undefined")break}h.stateToId[n]=t,h.idToState[t]=e}}return t},h.normalizeState=function(e){var t,n;if(!e||typeof e!="object")e={};if(typeof e.normalized!="undefined")return e;if(!e.data||typeof e.data!="object")e.data={};t={},t.normalized=!0,t.title=e.title||"",t.url=h.getFullUrl(h.unescapeString(e.url||r.location.href)),t.hash=h.getShortUrl(t.url),t.data=h.cloneObject(e.data),t.id=h.getIdByState(t),t.cleanUrl=t.url.replace(/\??\&_suid.*/,""),t.url=t.cleanUrl,n=!h.isEmptyObject(t.data);if(t.title||n)t.hash=h.getShortUrl(t.url).replace(/\??\&_suid.*/,""),/\?/.test(t.hash)||(t.hash+="?"),t.hash+="&_suid="+t.id;return t.hashedUrl=h.getFullUrl(t.hash),(h.emulated.pushState||h.bugs.safariPoll)&&h.hasUrlDuplicate(t)&&(t.url=t.hashedUrl),t},h.createStateObject=function(e,t,n){var r={data:e,title:t,url:n};return r=h.normalizeState(r),r},h.getStateById=function(e){e=String(e);var n=h.idToState[e]||h.store.idToState[e]||t;return n},h.getStateString=function(e){var t,n,r;return t=h.normalizeState(e),n={data:t.data,title:e.title,url:e.url},r=l.stringify(n),r},h.getStateId=function(e){var t,n;return t=h.normalizeState(e),n=t.id,n},h.getHashByState=function(e){var t,n;return t=h.normalizeState(e),n=t.hash,n},h.extractId=function(e){var t,n,r;return n=/(.*)\&_suid=([0-9]+)$/.exec(e),r=n?n[1]||e:e,t=n?String(n[2]||""):"",t||!1},h.isTraditionalAnchor=function(e){var t=!/[\/\?\.]/.test(e);return t},h.extractState=function(e,t){var n=null,r,i;return t=t||!1,r=h.extractId(e),r&&(n=h.getStateById(r)),n||(i=h.getFullUrl(e),r=h.getIdByUrl(i)||!1,r&&(n=h.getStateById(r)),!n&&t&&!h.isTraditionalAnchor(e)&&(n=h.createStateObject(null,null,i))),n},h.getIdByUrl=function(e){var n=h.urlToId[e]||h.store.urlToId[e]||t;return n},h.getLastSavedState=function(){return h.savedStates[h.savedStates.length-1]||t},h.getLastStoredState=function(){return h.storedStates[h.storedStates.length-1]||t},h.hasUrlDuplicate=function(e){var t=!1,n;return n=h.extractState(e.url),t=n&&n.id!==e.id,t},h.storeState=function(e){return h.urlToId[e.url]=e.id,h.storedStates.push(h.cloneObject(e)),e},h.isLastSavedState=function(e){var t=!1,n,r,i;return h.savedStates.length&&(n=e.id,r=h.getLastSavedState(),i=r.id,t=n===i),t},h.saveState=function(e){return h.isLastSavedState(e)?!1:(h.savedStates.push(h.cloneObject(e)),!0)},h.getStateByIndex=function(e){var t=null;return typeof e=="undefined"?t=h.savedStates[h.savedStates.length-1]:e<0?t=h.savedStates[h.savedStates.length+e]:t=h.savedStates[e],t},h.getHash=function(){var e=h.unescapeHash(r.location.hash);return e},h.unescapeString=function(t){var n=t,r;for(;;){r=e.unescape(n);if(r===n)break;n=r}return n},h.unescapeHash=function(e){var t=h.normalizeHash(e);return t=h.unescapeString(t),t},h.normalizeHash=function(e){var t=e.replace(/[^#]*#/,"").replace(/#.*/,"");return t},h.setHash=function(e,t){var n,i,s;return t!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.setHash,args:arguments,queue:t}),!1):(n=h.escapeHash(e),h.busy(!0),i=h.extractState(e,!0),i&&!h.emulated.pushState?h.pushState(i.data,i.title,i.url,!1):r.location.hash!==n&&(h.bugs.setHash?(s=h.getPageUrl(),h.pushState(null,null,s+"#"+n,!1)):r.location.hash=n),h)},h.escapeHash=function(t){var n=h.normalizeHash(t);return n=e.escape(n),h.bugs.hashEscape||(n=n.replace(/\%21/g,"!").replace(/\%26/g,"&").replace(/\%3D/g,"=").replace(/\%3F/g,"?")),n},h.getHashByUrl=function(e){var t=String(e).replace(/([^#]*)#?([^#]*)#?(.*)/,"$2");return t=h.unescapeHash(t),t},h.setTitle=function(e){var t=e.title,n;t||(n=h.getStateByIndex(0),n&&n.url===e.url&&(t=n.title||h.options.initialTitle));try{r.getElementsByTagName("title")[0].innerHTML=t.replace("<","&lt;").replace(">","&gt;").replace(" & "," &amp; ")}catch(i){}return r.title=t,h},h.queues=[],h.busy=function(e){typeof e!="undefined"?h.busy.flag=e:typeof h.busy.flag=="undefined"&&(h.busy.flag=!1);if(!h.busy.flag){u(h.busy.timeout);var t=function(){var e,n,r;if(h.busy.flag)return;for(e=h.queues.length-1;e>=0;--e){n=h.queues[e];if(n.length===0)continue;r=n.shift(),h.fireQueueItem(r),h.busy.timeout=o(t,h.options.busyDelay)}};h.busy.timeout=o(t,h.options.busyDelay)}return h.busy.flag},h.busy.flag=!1,h.fireQueueItem=function(e){return e.callback.apply(e.scope||h,e.args||[])},h.pushQueue=function(e){return h.queues[e.queue||0]=h.queues[e.queue||0]||[],h.queues[e.queue||0].push(e),h},h.queue=function(e,t){return typeof e=="function"&&(e={callback:e}),typeof t!="undefined"&&(e.queue=t),h.busy()?h.pushQueue(e):h.fireQueueItem(e),h},h.clearQueue=function(){return h.busy.flag=!1,h.queues=[],h},h.stateChanged=!1,h.doubleChecker=!1,h.doubleCheckComplete=function(){return h.stateChanged=!0,h.doubleCheckClear(),h},h.doubleCheckClear=function(){return h.doubleChecker&&(u(h.doubleChecker),h.doubleChecker=!1),h},h.doubleCheck=function(e){return h.stateChanged=!1,h.doubleCheckClear(),h.bugs.ieDoubleCheck&&(h.doubleChecker=o(function(){return h.doubleCheckClear(),h.stateChanged||e(),!0},h.options.doubleCheckInterval)),h},h.safariStatePoll=function(){var t=h.extractState(r.location.href),n;if(!h.isLastSavedState(t))return n=t,n||(n=h.createStateObject()),h.Adapter.trigger(e,"popstate"),h;return},h.back=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.back,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.back(!1)}),p.go(-1),!0)},h.forward=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.forward,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.forward(!1)}),p.go(1),!0)},h.go=function(e,t){var n;if(e>0)for(n=1;n<=e;++n)h.forward(t);else{if(!(e<0))throw new Error("History.go: History.go requires a positive or negative integer passed.");for(n=-1;n>=e;--n)h.back(t)}return h};if(h.emulated.pushState){var d=function(){};h.pushState=h.pushState||d,h.replaceState=h.replaceState||d}else h.onPopState=function(t,n){var i=!1,s=!1,o,u;return h.doubleCheckComplete(),o=h.getHash(),o?(u=h.extractState(o||r.location.href,!0),u?h.replaceState(u.data,u.title,u.url,!1):(h.Adapter.trigger(e,"anchorchange"),h.busy(!1)),h.expectedStateId=!1,!1):(i=h.Adapter.extractEventData("state",t,n)||!1,i?s=h.getStateById(i):h.expectedStateId?s=h.getStateById(h.expectedStateId):s=h.extractState(r.location.href),s||(s=h.createStateObject(null,null,r.location.href)),h.expectedStateId=!1,h.isLastSavedState(s)?(h.busy(!1),!1):(h.storeState(s),h.saveState(s),h.setTitle(s),h.Adapter.trigger(e,"statechange"),h.busy(!1),!0))},h.Adapter.bind(e,"popstate",h.onPopState),h.pushState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.pushState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.pushState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0},h.replaceState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.replaceState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.replaceState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0};if(s){try{h.store=l.parse(s.getItem("History.store"))||{}}catch(v){h.store={}}h.normalizeStore()}else h.store={},h.normalizeStore();h.Adapter.bind(e,"beforeunload",h.clearAllIntervals),h.Adapter.bind(e,"unload",h.clearAllIntervals),h.saveState(h.storeState(h.extractState(r.location.href,!0))),s&&(h.onUnload=function(){var e,t;try{e=l.parse(s.getItem("History.store"))||{}}catch(n){e={}}e.idToState=e.idToState||{},e.urlToId=e.urlToId||{},e.stateToId=e.stateToId||{};for(t in h.idToState){if(!h.idToState.hasOwnProperty(t))continue;e.idToState[t]=h.idToState[t]}for(t in h.urlToId){if(!h.urlToId.hasOwnProperty(t))continue;e.urlToId[t]=h.urlToId[t]}for(t in h.stateToId){if(!h.stateToId.hasOwnProperty(t))continue;e.stateToId[t]=h.stateToId[t]}h.store=e,h.normalizeStore(),s.setItem("History.store",l.stringify(e))},h.intervalList.push(a(h.onUnload,h.options.storeInterval)),h.Adapter.bind(e,"beforeunload",h.onUnload),h.Adapter.bind(e,"unload",h.onUnload));if(!h.emulated.pushState){h.bugs.safariPoll&&h.intervalList.push(a(h.safariStatePoll,h.options.safariPollInterval));if(i.vendor==="Apple Computer, Inc."||(i.appCodeName||"")==="Mozilla")h.Adapter.bind(e,"hashchange",function(){h.Adapter.trigger(e,"popstate")}),h.getHash()&&h.Adapter.onDomLoad(function(){h.Adapter.trigger(e,"hashchange")})}},h.init()}(window)}catch(t){}}),timely.define("external_libs/jquery.tablescroller",["jquery_timely"],function(e){function n(){if(t)return t;var n=e('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');e("body").append(n);var r=e("div",n).innerWidth();n.css("overflow-y","auto");var i=e("div",n).innerWidth();return e(n).remove(),t=r-i,t}var t=0;e.fn.tableScroll=function(t){if(t=="undo"){var r=e(this).parent().parent();r.hasClass("tablescroll_wrapper")&&(r.find(".tablescroll_head thead").prependTo(this),r.find(".tablescroll_foot tfoot").appendTo(this),r.before(this),r.empty());return}var i=e.extend({},e.fn.tableScroll.defaults,t);return i.scrollbarWidth=n(),this.each(function(){var t=i.flush,n=e(this).addClass("tablescroll_body"),r=e('<div class="tablescroll_wrapper ai1ec-popover-boundary"></div>').insertBefore(n).append(n);r.parent("div").hasClass(i.containerClass)||e("<div></div>").addClass(i.containerClass).insertBefore(r).append(r);var s=i.width?i.width:n.outerWidth(),o=i.scroll?"auto":"hidden";r.css({width:s+"px",height:i.height+"px",overflow:o}),n.css("width",s+"px");var u=r.outerWidth(),a=u-s;r.css({width:s-a-2+"px"}),n.css("width",s-a-i.scrollbarWidth+"px"),n.outerHeight()<=i.height&&(r.css({height:"auto",width:s-a+"px"}),t=!1);var f=e("thead",n).length?!0:!1,l=e("tfoot",n).length?!0:!1,c=e("thead tr:first",n),h=e("tbody tr:first",n),p=e("tfoot tr:first",n),d=0;e("th, td",c).each(function(t){d=e(this).width(),e("th:eq("+t+"), td:eq("+t+")",c).css("width",d+"px"),e("th:eq("+t+"), td:eq("+t+")",h).css("width",d+"px"),l&&e("th:eq("+t+"), td:eq("+t+")",p).css("width",d+"px")});if(f)var v=e('<table class="tablescroll_head" cellspacing="0"></table>').insertBefore(r).prepend(e("thead",n));if(l)var m=e('<table class="tablescroll_foot" cellspacing="0"></table>').insertAfter(r).prepend(e("tfoot",n));v!=undefined&&(v.css("width",s+"px"),t&&(e("tr:first th:last, tr:first td:last",v).css("width",d+i.scrollbarWidth+"px"),v.css("width",r.outerWidth()+"px"))),m!=undefined&&(m.css("width",s+"px"),t&&(e("tr:first th:last, tr:first td:last",m).css("width",d+i.scrollbarWidth+"px"),m.css("width",r.outerWidth()+"px")))}),this},e.fn.tableScroll.defaults={flush:!0,width:null,height:100,containerClass:"tablescroll",scroll:!0}}),timely.define("external_libs/jquery.scrollTo",["jquery_timely"],function(e){function n(e){return typeof e=="object"?e:{top:e,left:e}}var t=e.scrollTo=function(t,n,r){e(window).scrollTo(t,n,r)};t.defaults={axis:"xy",duration:parseFloat(e.fn.jquery)>=1.3?0:1,limit:!0},t.window=function(t){return e(window)._scrollable()},e.fn._scrollable=function(){return this.map(function(){var t=this,n=!t.nodeName||e.inArray(t.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!n)return t;var r=(t.contentWindow||t).document||t.ownerDocument||t;return/webkit/i.test(navigator.userAgent)||r.compatMode=="BackCompat"?r.body:r.documentElement})},e.fn.scrollTo=function(r,i,s){return typeof i=="object"&&(s=i,i=0),typeof s=="function"&&(s={onAfter:s}),r=="max"&&(r=9e9),s=e.extend({},t.defaults,s),i=i||s.duration,s.queue=s.queue&&s.axis.length>1,s.queue&&(i/=2),s.offset=n(s.offset),s.over=n(s.over),this._scrollable().each(function(){function h(e){u.animate(l,i,s.easing,e&&function(){e.call(this,r,s)})}if(r==null)return;var o=this,u=e(o),a=r,f,l={},c=u.is("html,body");switch(typeof a){case"number":case"string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(a)){a=n(a);break}a=e(a,this);if(!a.length)return;case"object":if(a.is||a.style)f=(a=e(a)).offset()}e.each(s.axis.split(""),function(e,n){var r=n=="x"?"Left":"Top",i=r.toLowerCase(),p="scroll"+r,d=o[p],v=t.max(o,n);if(f)l[p]=f[i]+(c?0:d-u.offset()[i]),s.margin&&(l[p]-=parseInt(a.css("margin"+r))||0,l[p]-=parseInt(a.css("border"+r+"Width"))||0),l[p]+=s.offset[i]||0,s.over[i]&&(l[p]+=a[n=="x"?"width":"height"]()*s.over[i]);else{var m=a[i];l[p]=m.slice&&m.slice(-1)=="%"?parseFloat(m)/100*v:m}s.limit&&/^\d+$/.test(l[p])&&(l[p]=l[p]<=0?0:Math.min(l[p],v)),!e&&s.queue&&(d!=l[p]&&h(s.onAfterFirst),delete l[p])}),h(s.onAfter)}).end()},t.max=function(t,n){var r=n=="x"?"Width":"Height",i="scroll"+r;if(!e(t).is("html,body"))return t[i]-e(t)[r.toLowerCase()]();var s="client"+r,o=t.ownerDocument.documentElement,u=t.ownerDocument.body;return Math.max(o[i],u[i])-Math.min(o[s],u[s])}}),timely.define("external_libs/locales/bootstrap-datepicker.bg",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.bg={days:["Неделя","Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота","Неделя"],daysShort:["Нед","Пон","Вто","Сря","Чет","Пет","Съб","Нед"],daysMin:["Н","П","В","С","Ч","П","С","Н"],months:["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],monthsShort:["Ян","Фев","Мар","Апр","Май","Юни","Юли","Авг","Сеп","Окт","Ное","Дек"],today:"днес"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.br",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.br={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"]}}}}),timely.define("external_libs/locales/bootstrap-datepicker.cs",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.cs={days:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota","Neděle"],daysShort:["Ned","Pon","Úte","Stř","Čtv","Pát","Sob","Ned"],daysMin:["Ne","Po","Út","St","Čt","Pá","So","Ne"],months:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],monthsShort:["Led","Úno","Bře","Dub","Kvě","Čer","Čnc","Srp","Zář","Říj","Lis","Pro"],today:"Dnes"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.da",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.da={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør","Søn"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø","Sø"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",clear:"Nulstil"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.de",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam","Son"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa","So"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.es",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb","Dom"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa","Do"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.fi",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.fi={days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai","sunnuntai"],daysShort:["sun","maa","tii","kes","tor","per","lau","sun"],daysMin:["su","ma","ti","ke","to","pe","la","su"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],monthsShort:["tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mar","jou"],today:"tänään",weekStart:1,format:"d.m.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.fr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.fr={days:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"],daysShort:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam","Dim"],daysMin:["D","L","Ma","Me","J","V","S","D"],months:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],monthsShort:["Jan","Fév","Mar","Avr","Mai","Jui","Jul","Aou","Sep","Oct","Nov","Déc"],today:"Aujourd'hui",clear:"Effacer",weekStart:1,format:"dd/mm/yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.id",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.id={days:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu","Minggu"],daysShort:["Mgu","Sen","Sel","Rab","Kam","Jum","Sab","Mgu"],daysMin:["Mg","Sn","Sl","Ra","Ka","Ju","Sa","Mg"],months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ags","Sep","Okt","Nov","Des"],today:"Hari Ini",clear:"Kosongkan"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.is",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.is={days:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur","Sunnudagur"],daysShort:["Sun","Mán","Þri","Mið","Fim","Fös","Lau","Sun"],daysMin:["Su","Má","Þr","Mi","Fi","Fö","La","Su"],months:["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Maí","Jún","Júl","Ágú","Sep","Okt","Nóv","Des"],today:"Í Dag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.it",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.it={days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato","Domenica"],daysShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab","Dom"],daysMin:["Do","Lu","Ma","Me","Gi","Ve","Sa","Do"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthsShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],today:"Oggi",clear:"Cancella",weekStart:1,format:"dd/mm/yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ja",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ja={days:["日曜","月曜","火曜","水曜","木曜","金曜","土曜","日曜"],daysShort:["日","月","火","水","木","金","土","日"],daysMin:["日","月","火","水","木","金","土","日"],months:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今日",format:"yyyy/mm/dd"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.kr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.kr={days:["일요일","월요일","화요일","수요일","목요일","금요일","토요일","일요일"],daysShort:["일","월","화","수","목","금","토","일"],daysMin:["일","월","화","수","목","금","토","일"],months:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],monthsShort:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"]}}}}),timely.define("external_libs/locales/bootstrap-datepicker.lt",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.lt={days:["Sekmadienis","Pirmadienis","Antradienis","Trečiadienis","Ketvirtadienis","Penktadienis","Šeštadienis","Sekmadienis"],daysShort:["S","Pr","A","T","K","Pn","Š","S"],daysMin:["Sk","Pr","An","Tr","Ke","Pn","Št","Sk"],months:["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","Lapkritis","Gruodis"],monthsShort:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],today:"Šiandien",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.lv",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.lv={days:["Svētdiena","Pirmdiena","Otrdiena","Trešdiena","Ceturtdiena","Piektdiena","Sestdiena","Svētdiena"],daysShort:["Sv","P","O","T","C","Pk","S","Sv"],daysMin:["Sv","Pr","Ot","Tr","Ce","Pk","Se","Sv"],months:["Janvāris","Februāris","Marts","Aprīlis","Maijs","Jūnijs","Jūlijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],monthsShort:["Jan","Feb","Mar","Apr","Mai","Jūn","Jūl","Aug","Sep","Okt","Nov","Dec"],today:"Šodien",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ms",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ms={days:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu","Ahad"],daysShort:["Aha","Isn","Sel","Rab","Kha","Jum","Sab","Aha"],daysMin:["Ah","Is","Se","Ra","Kh","Ju","Sa","Ah"],months:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],today:"Hari Ini"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.nb",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.nb={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør","Søn"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø","Sø"],months:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"],today:"I Dag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.nl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.nl={days:["Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag","Zondag"],daysShort:["Zo","Ma","Di","Wo","Do","Vr","Za","Zo"],daysMin:["Zo","Ma","Di","Wo","Do","Vr","Za","Zo"],months:["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"Vandaag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.pl={days:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota","Niedziela"],daysShort:["Nie","Pn","Wt","Śr","Czw","Pt","So","Nie"],daysMin:["N","Pn","Wt","Śr","Cz","Pt","So","N"],months:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],monthsShort:["Sty","Lu","Mar","Kw","Maj","Cze","Lip","Sie","Wrz","Pa","Lis","Gru"],today:"Dzisiaj",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pt-BR",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["pt-BR"]={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",clear:"Limpar"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pt",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.pt={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",clear:"Limpar"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ru",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ru={days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота","Воскресенье"],daysShort:["Вск","Пнд","Втр","Срд","Чтв","Птн","Суб","Вск"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб","Вс"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.sl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.sl={days:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota","Nedelja"],daysShort:["Ned","Pon","Tor","Sre","Čet","Pet","Sob","Ned"],daysMin:["Ne","Po","To","Sr","Če","Pe","So","Ne"],months:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danes"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.sv",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.sv={days:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag","Söndag"],daysShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör","Sön"],daysMin:["Sö","Må","Ti","On","To","Fr","Lö","Sö"],months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",format:"yyyy-mm-dd",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.th",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.th={days:["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัส","ศุกร์","เสาร์","อาทิตย์"],daysShort:["อา","จ","อ","พ","พฤ","ศ","ส","อา"],daysMin:["อา","จ","อ","พ","พฤ","ศ","ส","อา"],months:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],monthsShort:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],today:"วันนี้"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.tr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.tr={days:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi","Pazar"],daysShort:["Pz","Pzt","Sal","Çrş","Prş","Cu","Cts","Pz"],daysMin:["Pz","Pzt","Sa","Çr","Pr","Cu","Ct","Pz"],months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],monthsShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],today:"Bugün",format:"dd.mm.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.zh-CN",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["zh-CN"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日"],daysShort:["周日","周一","周二","周三","周四","周五","周六","周日"],daysMin:["日","一","二","三","四","五","六","日"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],today:"今日",format:"yyyy年mm月dd日",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.zh-TW",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["zh-TW"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日"],daysShort:["週日","週一","週二","週三","週四","週五","週六","週日"],daysMin:["日","一","二","三","四","五","六","日"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],today:"今天",format:"yyyy年mm月dd日",weekStart:1}}}}),timely.define("external_libs/bootstrap_datepicker",["jquery_timely","ai1ec_config","external_libs/locales/bootstrap-datepicker.bg","external_libs/locales/bootstrap-datepicker.br","external_libs/locales/bootstrap-datepicker.cs","external_libs/locales/bootstrap-datepicker.da","external_libs/locales/bootstrap-datepicker.de","external_libs/locales/bootstrap-datepicker.es","external_libs/locales/bootstrap-datepicker.fi","external_libs/locales/bootstrap-datepicker.fr","external_libs/locales/bootstrap-datepicker.id","external_libs/locales/bootstrap-datepicker.is","external_libs/locales/bootstrap-datepicker.it","external_libs/locales/bootstrap-datepicker.ja","external_libs/locales/bootstrap-datepicker.kr","external_libs/locales/bootstrap-datepicker.lt","external_libs/locales/bootstrap-datepicker.lv","external_libs/locales/bootstrap-datepicker.ms","external_libs/locales/bootstrap-datepicker.nb","external_libs/locales/bootstrap-datepicker.nl","external_libs/locales/bootstrap-datepicker.pl","external_libs/locales/bootstrap-datepicker.pt-BR","external_libs/locales/bootstrap-datepicker.pt","external_libs/locales/bootstrap-datepicker.ru","external_libs/locales/bootstrap-datepicker.sl","external_libs/locales/bootstrap-datepicker.sv","external_libs/locales/bootstrap-datepicker.th","external_libs/locales/bootstrap-datepicker.tr","external_libs/locales/bootstrap-datepicker.zh-CN","external_libs/locales/bootstrap-datepicker.zh-TW"],function(e,t){function r(){return new Date(Date.UTC.apply(Date,arguments))}function i(){var e=new Date;return r(e.getFullYear(),e.getMonth(),e.getDate())}function s(e){return function(){return this[e].apply(this,arguments)}}function f(t,n){var r=e(t).data(),i={},s,o=new RegExp("^"+n.toLowerCase()+"([A-Z])"),n=new RegExp("^"+n.toLowerCase());for(var u in r)n.test(u)&&(s=u.replace(o,function(e,t){return t.toLowerCase()}),i[s]=r[u]);return i}function l(t){var n={};if(!d[t]){t=t.split("-")[0];if(!d[t])return}var r=d[t];return e.each(p,function(e,t){t in r&&(n[t]=r[t])}),n}var n=e(window),o=function(){var t={get:function(e){return this.slice(e)[0]},contains:function(e){var t=e&&e.valueOf();for(var n=0,r=this.length;n<r;n++)if(this[n].valueOf()===t)return n;return-1},remove:function(e){this.splice(e,1)},replace:function(t){if(!t)return;e.isArray(t)||(t=[t]),this.clear(),this.push.apply(this,t)},clear:function(){this.splice(0)},copy:function(){var e=new o;return e.replace(this),e}};return function(){var n=[];return n.push.apply(n,arguments),e.extend(n,t),n}}(),u=function(t,n){this.dates=new o,this.viewDate=i(),this.focusDate=null,this._process_options(n),this.element=e(t),this.isInline=!1,this.isInput=this.element.is("input"),this.component=this.element.is(".ai1ec-date")?this.element.find(".ai1ec-input-group, .ai1ec-input-group-addon, .ai1ec-btn"):!1,this.hasInput=this.component&&this.element.find("input").length,this.component&&this.component.length===0&&(this.component=!1),this.picker=e(v.template),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("ai1ec-datepicker-inline").appendTo(this.element):this.picker.addClass("ai1ec-datepicker-dropdown ai1ec-dropdown-menu"),this.o.rtl&&this.picker.addClass("ai1ec-datepicker-rtl"),this.viewMode=this.o.startView,this.o.calendarWeeks&&this.picker.find("tfoot th.ai1ec-today").attr("colspan",function(e,t){return parseInt(t)+1}),this._allow_update=!1,this.setStartDate(this._o.startDate),this.setEndDate(this._o.endDate),this.setDaysOfWeekDisabled(this.o.daysOfWeekDisabled),this.fillDow(),this.fillMonths(),this._allow_update=!0,this.update(),this.showMode(),this.isInline&&this.show()};u.prototype={constructor:u,_process_options:function(n){this._o=e.extend({},this._o,n);var r=this.o=e.extend({},this._o),i=r.language;d[i]||(i=i.split("-")[0],d[i]||(i=t.language,d[i]||(i=h.language))),r.language=i;switch(r.startView){case 2:case"decade":r.startView=2;break;case 1:case"year":r.startView=1;break;default:r.startView=0}switch(r.minViewMode){case 1:case"months":r.minViewMode=1;break;case 2:case"years":r.minViewMode=2;break;default:r.minViewMode=0}r.startView=Math.max(r.startView,r.minViewMode),r.multidate!==!0&&(r.multidate=Number(r.multidate)||!1,r.multidate!==!1?r.multidate=Math.max(0,r.multidate):r.multidate=1),r.multidateSeparator=String(r.multidateSeparator),r.weekStart%=7,r.weekEnd=(r.weekStart+6)%7;var s=v.parseFormat(r.format);r.startDate!==-Infinity&&(r.startDate?r.startDate instanceof Date?r.startDate=this._local_to_utc(this._zero_time(r.startDate)):r.startDate=v.parseDate(r.startDate,s,r.language):r.startDate=-Infinity),r.endDate!==Infinity&&(r.endDate?r.endDate instanceof Date?r.endDate=this._local_to_utc(this._zero_time(r.endDate)):r.endDate=v.parseDate(r.endDate,s,r.language):r.endDate=Infinity),r.daysOfWeekDisabled=r.daysOfWeekDisabled||[],e.isArray(r.daysOfWeekDisabled)||(r.daysOfWeekDisabled=r.daysOfWeekDisabled.split(/[,\s]*/)),r.daysOfWeekDisabled=e.map(r.daysOfWeekDisabled,function(e){return parseInt(e,10)});var o=String(r.orientation).toLowerCase().split(/\s+/g),u=r.orientation.toLowerCase();o=e.grep(o,function(e){return/^auto|left|right|top|bottom$/.test(e)}),r.orientation={x:"auto",y:"auto"};if(!!u&&u!=="auto")if(o.length===1)switch(o[0]){case"top":case"bottom":r.orientation.y=o[0];break;case"left":case"right":r.orientation.x=o[0]}else u=e.grep(o,function(e){return/^left|right$/.test(e)}),r.orientation.x=u[0]||"auto",u=e.grep(o,function(e){return/^top|bottom$/.test(e)}),r.orientation.y=u[0]||"auto"},_events:[],_secondaryEvents:[],_applyEvents:function(e){for(var t=0,n,r,i;t<e.length;t++)n=e[t][0],e[t].length==2?(r=undefined,i=e[t][1]):e[t].length==3&&(r=e[t][1],i=e[t][2]),n.on(i,r)},_unapplyEvents:function(e){for(var t=0,n,r,i;t<e.length;t++)n=e[t][0],e[t].length==2?(i=undefined,r=e[t][1]):e[t].length==3&&(i=e[t][1],r=e[t][2]),n.off(r,i)},_buildEvents:function(){this.isInput?this._events=[[this.element,{focus:e.proxy(this.show,this),keyup:e.proxy(function(t){e.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:e.proxy(this.keydown,this)}]]:this.component&&this.hasInput?this._events=[[this.element.find("input"),{focus:e.proxy(this.show,this),keyup:e.proxy(function(t){e.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:e.proxy(this.keydown,this)}],[this.component,{click:e.proxy(this.show,this)}]]:this.element.is("div")?this.isInline=!0:this._events=[[this.element,{click:e.proxy(this.show,this)}]],this._events.push([this.element,"*",{blur:e.proxy(function(e){this._focused_from=e.target},this)}],[this.element,{blur:e.proxy(function(e){this._focused_from=e.target},this)}]),this._secondaryEvents=[[this.picker,{click:e.proxy(this.click,this)}],[e(window),{resize:e.proxy(this.place,this)}],[e(document),{"mousedown touchstart":e.proxy(function(e){this.element.is(e.target)||this.element.find(e.target).length||this.picker.is(e.target)||this.picker.find(e.target).length||this.hide()},this)}]]},_attachEvents:function(){this._detachEvents(),this._applyEvents(this._events)},_detachEvents:function(){this._unapplyEvents(this._events)},_attachSecondaryEvents:function(){this._detachSecondaryEvents(),this._applyEvents(this._secondaryEvents)},_detachSecondaryEvents:function(){this._unapplyEvents(this._secondaryEvents)},_trigger:function(t,n){var r=n||this.dates.get(-1),i=this._utc_to_local(r);this.element.trigger({type:t,date:i,dates:e.map(this.dates,this._utc_to_local),format:e.proxy(function(e,t){arguments.length===0?(e=this.dates.length-1,t=this.o.format):typeof e=="string"&&(t=e,e=this.dates.length-1),t=t||this.o.format;var n=this.dates.get(e);return v.formatDate(n,t,this.o.language)},this)})},show:function(e){this.isInline||this.picker.appendTo("body"),this.picker.show(),this.height=this.component?this.component.outerHeight():this.element.outerHeight(),this.place(),this._attachSecondaryEvents(),this._trigger("show")},hide:function(){if(this.isInline)return;if(!this.picker.is(":visible"))return;this.focusDate=null,this.picker.hide().detach(),this._detachSecondaryEvents(),this.viewMode=this.o.startView,this.showMode(),this.o.forceParse&&(this.isInput&&this.element.val()||this.hasInput&&this.element.find("input").val())&&this.setValue(),this._trigger("hide")},remove:function(){this.hide(),this._detachEvents(),this._detachSecondaryEvents(),this.picker.remove(),delete this.element.data().datepicker,this.isInput||delete this.element.data().date},_utc_to_local:function(e){return e&&new Date(e.getTime()+e.getTimezoneOffset()*6e4)},_local_to_utc:function(e){return e&&new Date(e.getTime()-e.getTimezoneOffset()*6e4)},_zero_time:function(e){return e&&new Date(e.getFullYear(),e.getMonth(),e.getDate())},_zero_utc_time:function(e){return e&&new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()))},getDates:function(){return e.map(this.dates,this._utc_to_local)},getUTCDates:function(){return e.map(this.dates,function(e){return new Date(e)})},getDate:function(){return this._utc_to_local(this.getUTCDate())},getUTCDate:function(){return new Date(this.dates.get(-1))},setDates:function(){this.update.apply(this,arguments),this._trigger("changeDate"),this.setValue()},setUTCDates:function(){this.update.apply(this,e.map(arguments,this._utc_to_local)),this._trigger("changeDate"),this.setValue()},setDate:s("setDates"),setUTCDate:s("setUTCDates"),setValue:function(){var e=this.getFormattedDate();this.isInput?this.element.val(e).change():this.component&&this.element.find("input").val(e).change()},getFormattedDate:function(t){t===undefined&&(t=this.o.format);var n=this.o.language;return e.map(this.dates,function(e){return v.formatDate(e,t,n)}).join(this.o.multidateSeparator)},setStartDate:function(e){this._process_options({startDate:e}),this.update(),this.updateNavArrows()},setEndDate:function(e){this._process_options({endDate:e}),this.update(),this.updateNavArrows()},setDaysOfWeekDisabled:function(e){this._process_options({daysOfWeekDisabled:e}),this.update(),this.updateNavArrows()},place:function(){if(this.isInline)return;var t=this.picker.outerWidth(),r=this.picker.outerHeight(),i=10,s=n.width(),o=n.height(),u=n.scrollTop(),a=parseInt(this.element.parents().filter(function(){return e(this).css("z-index")!="auto"}).first().css("z-index"))+10,f=this.component?this.component.parent().offset():this.element.offset(),l=this.component?this.component.outerHeight(!0):this.element.outerHeight(!1),c=this.component?this.component.outerWidth(!0):this.element.outerWidth(!1),h=f.left,p=f.top;this.picker.removeClass("ai1ec-datepicker-orient-top ai1ec-datepicker-orient-bottom ai1ec-datepicker-orient-right ai1ec-datepicker-orient-left"),this.o.orientation.x!=="auto"?(this.picker.addClass("ai1ec-datepicker-orient-"+this.o.orientation.x),this.o.orientation.x==="right"&&(h-=t-c)):(this.picker.addClass("ai1ec-datepicker-orient-left"),f.left<0?h-=f.left-i:f.left+t>s&&(h=s-t-i));var d=this.o.orientation.y,v,m;d==="auto"&&(v=-u+f.top-r,m=u+o-(f.top+l+r),Math.max(v,m)===m?d="top":d="bottom"),this.picker.addClass("ai1ec-datepicker-orient-"+d),d==="top"?p+=l:p-=r+parseInt(this.picker.css("padding-top")),this.picker.css({top:p,left:h,zIndex:a})},_allow_update:!0,update:function(){if(!this._allow_update)return;var t=this.dates.copy(),n=[],r=!1;arguments.length?(e.each(arguments,e.proxy(function(e,t){t instanceof Date&&(t=this._local_to_utc(t)),n.push(t)},this)),r=!0):(n=this.isInput?this.element.val():this.element.data("date")||this.element.find("input").val(),n&&this.o.multidate?n=n.split(this.o.multidateSeparator):n=[n],delete this.element.data().date),n=e.map(n,e.proxy(function(e){return v.parseDate(e,this.o.format,this.o.language)},this)),n=e.grep(n,e.proxy(function(e){return e<this.o.startDate||e>this.o.endDate||!e},this),!0),this.dates.replace(n),this.dates.length?this.viewDate=new Date(this.dates.get(-1)):this.viewDate<this.o.startDate?this.viewDate=new Date(this.o.startDate):this.viewDate>this.o.endDate&&(this.viewDate=new Date(this.o.endDate)),r?this.setValue():n.length&&String(t)!==String(this.dates)&&this._trigger("changeDate"),!this.dates.length&&t.length&&this._trigger("clearDate"),this.fill()},fillDow:function(){var e=this.o.weekStart,t="<tr>";if(this.o.calendarWeeks){var n='<th class="ai1ec-cw">&nbsp;</th>';t+=n,this.picker.find(".ai1ec-datepicker-days thead tr:first-child").prepend(n)}while(e<this.o.weekStart+7)t+='<th class="ai1ec-dow">'+d[this.o.language].daysMin[e++%7]+"</th>";t+="</tr>",this.picker.find(".ai1ec-datepicker-days thead").append(t)},fillMonths:function(){var e="",t=0;while(t<12)e+='<span class="ai1ec-month">'+d[this.o.language].monthsShort[t++]+"</span>";this.picker.find(".ai1ec-datepicker-months td").html(e)},setRange:function(t){!t||!t.length?delete this.range:this.range=e.map(t,function(e){return e.valueOf()}),this.fill()},getClassNames:function(t){var n=[],r=this.viewDate.getUTCFullYear(),i=this.viewDate.getUTCMonth(),s=new Date;return t.getUTCFullYear()<r||t.getUTCFullYear()==r&&t.getUTCMonth()<i?n.push("ai1ec-old"):(t.getUTCFullYear()>r||t.getUTCFullYear()==r&&t.getUTCMonth()>i)&&n.push("ai1ec-new"),this.focusDate&&t.valueOf()===this.focusDate.valueOf()&&n.push("ai1ec-focused"),this.o.todayHighlight&&t.getUTCFullYear()==s.getFullYear()&&t.getUTCMonth()==s.getMonth()&&t.getUTCDate()==s.getDate()&&n.push("ai1ec-today"),this.dates.contains(t)!==-1&&n.push("ai1ec-active"),(t.valueOf()<this.o.startDate||t.valueOf()>this.o.endDate||e.inArray(t.getUTCDay(),this.o.daysOfWeekDisabled)!==-1)&&n.push("ai1ec-disabled"),this.range&&(t>this.range[0]&&t<this.range[this.range.length-1]&&n.push("ai1ec-range"),e.inArray(t.valueOf(),this.range)!=-1&&n.push("ai1ec-selected")),n},fill:function(){var t=new Date(this.viewDate),n=t.getUTCFullYear(),i=t.getUTCMonth(),s=this.o.startDate!==-Infinity?this.o.startDate.getUTCFullYear():-Infinity,o=this.o.startDate!==-Infinity?this.o.startDate.getUTCMonth():-Infinity,u=this.o.endDate!==Infinity?this.o.endDate.getUTCFullYear():Infinity,a=this.o.endDate!==Infinity?this.o.endDate.getUTCMonth():Infinity,f,l;this.picker.find(".ai1ec-datepicker-days thead th.ai1ec-datepicker-switch").text(d[this.o.language].months[i]+" "+n),this.picker.find("tfoot th.ai1ec-today").text(d[this.o.language].today).toggle(this.o.todayBtn!==!1),this.picker.find("tfoot th.ai1ec-clear").text(d[this.o.language].clear).toggle(this.o.clearBtn!==!1),this.updateNavArrows(),this.fillMonths();var c=r(n,i-1,28),h=v.getDaysInMonth(c.getUTCFullYear(),c.getUTCMonth());c.setUTCDate(h),c.setUTCDate(h-(c.getUTCDay()-this.o.weekStart+7)%7);var p=new Date(c);p.setUTCDate(p.getUTCDate()+42),p=p.valueOf();var m=[],g;while(c.valueOf()<p){if(c.getUTCDay()==this.o.weekStart){m.push("<tr>");if(this.o.calendarWeeks){var y=new Date(+c+(this.o.weekStart-c.getUTCDay()-7)%7*864e5),b=new Date(+y+(11-y.getUTCDay())%7*864e5),w=new Date(+(w=r(b.getUTCFullYear(),0,1))+(11-w.getUTCDay())%7*864e5),E=(b-w)/864e5/7+1;m.push('<td class="ai1ec-cw">'+E+"</td>")}}g=this.getClassNames(c),g.push("ai1ec-day");if(this.o.beforeShowDay!==e.noop){var S=this.o.beforeShowDay(this._utc_to_local(c));S===undefined?S={}:typeof S=="boolean"?S={enabled:S}:typeof S=="string"&&(S={classes:S}),S.enabled===!1&&g.push("ai1ec-disabled"),S.classes&&(g=g.concat(S.classes.split(/\s+/))),S.tooltip&&(f=S.tooltip)}g=e.unique(g),m.push('<td class="'+g.join(" ")+'"'+(f?' title="'+f+'"':"")+">"+c.getUTCDate()+"</td>"),c.getUTCDay()==this.o.weekEnd&&m.push("</tr>"),c.setUTCDate(c.getUTCDate()+1)}this.picker.find(".ai1ec-datepicker-days tbody").empty().append(m.join(""));var x=this.picker.find(".ai1ec-datepicker-months").find("th:eq(1)").text(n).end().find("span").removeClass("ai1ec-active");e.each(this.dates,function(e,t){t.getUTCFullYear()==n&&x.eq(t.getUTCMonth()).addClass("ai1ec-active")}),(n<s||n>u)&&x.addClass("ai1ec-disabled"),n==s&&x.slice(0,o).addClass("ai1ec-disabled"),n==u&&x.slice(a+1).addClass("ai1ec-disabled"),m="",n=parseInt(n/10,10)*10;var T=this.picker.find(".ai1ec-datepicker-years").find("th:eq(1)").text(n+"-"+(n+9)).end().find("td");n-=1;var N=e.map(this.dates,function(e){return e.getUTCFullYear()}),C;for(var k=-1;k<11;k++)C=["ai1ec-year"],k===-1?C.push("ai1ec-old"):k===10&&C.push("ai1ec-new"),e.inArray(n,N)!==-1&&C.push("ai1ec-active"),(n<s||n>u)&&C.push("ai1ec-disabled"),m+='<span class="'+C.join(" ")+'">'+n+"</span>",n+=1;T.html(m)},updateNavArrows:function(){if(!this._allow_update)return;var e=new Date(this.viewDate),t=e.getUTCFullYear(),n=e.getUTCMonth();switch(this.viewMode){case 0:this.o.startDate!==-Infinity&&t<=this.o.startDate.getUTCFullYear()&&n<=this.o.startDate.getUTCMonth()?this.picker.find(".ai1ec-prev").css({visibility:"hidden"}):this.picker.find(".ai1ec-prev").css({visibility:"visible"}),this.o.endDate!==Infinity&&t>=this.o.endDate.getUTCFullYear()&&n>=this.o.endDate.getUTCMonth()?this.picker.find(".ai1ec-next").css({visibility:"hidden"}):this.picker.find(".ai1ec-next").css({visibility:"visible"});break;case 1:case 2:this.o.startDate!==-Infinity&&t<=this.o.startDate.getUTCFullYear()?this.picker.find(".ai1ec-prev").css({visibility:"hidden"}):this.picker.find(".ai1ec-prev").css({visibility:"visible"}),this.o.endDate!==Infinity&&t>=this.o.endDate.getUTCFullYear()?this.picker.find(".ai1ec-next").css({visibility:"hidden"}):this.picker.find(".ai1ec-next").css({visibility:"visible"})}},click:function(t){t.preventDefault();var n=e(t.target).closest("span, td, th"),i,s,o;if(n.length==1)switch(n[0].nodeName.toLowerCase()){case"th":switch(n[0].className){case"ai1ec-datepicker-switch":this.showMode(1);break;case"ai1ec-prev":case"ai1ec-next":var u=v.modes[this.viewMode].navStep*(n[0].className=="ai1ec-prev"?-1:1);switch(this.viewMode){case 0:this.viewDate=this.moveMonth(this.viewDate,u),this._trigger("changeMonth",this.viewDate);break;case 1:case 2:this.viewDate=this.moveYear(this.viewDate,u),this.viewMode===1&&this._trigger("changeYear",this.viewDate)}this.fill();break;case"ai1ec-today":var a=new Date;a=r(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0),this.showMode(-2);var f=this.o.todayBtn=="linked"?null:"view";this._setDate(a,f);break;case"ai1ec-clear":var l;this.isInput?l=this.element:this.component&&(l=this.element.find("input")),l&&l.val("").change(),this.update(),this._trigger("changeDate"),this.o.autoclose&&this.hide()}break;case"span":n.is(".ai1ec-disabled")||(this.viewDate.setUTCDate(1),n.is(".ai1ec-month")?(o=1,s=n.parent().find("span").index(n),i=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(s),this._trigger("changeMonth",this.viewDate),this.o.minViewMode===1&&this._setDate(r(i,s,o))):(o=1,s=0,i=parseInt(n.text(),10)||0,this.viewDate.setUTCFullYear(i),this._trigger("changeYear",this.viewDate),this.o.minViewMode===2&&this._setDate(r(i,s,o))),this.showMode(-1),this.fill());break;case"td":n.is(".ai1ec-day")&&!n.is(".ai1ec-disabled")&&(o=parseInt(n.text(),10)||1,i=this.viewDate.getUTCFullYear(),s=this.viewDate.getUTCMonth(),n.is(".ai1ec-old")?s===0?(s=11,i-=1):s-=1:n.is(".ai1ec-new")&&(s==11?(s=0,i+=1):s+=1),this._setDate(r(i,s,o)))}this.picker.is(":visible")&&this._focused_from&&e(this._focused_from).focus(),delete this._focused_from},_toggle_multidate:function(e){var t=this.dates.contains(e);e?t!==-1?this.dates.remove(t):this.dates.push(e):this.dates.clear();if(typeof this.o.multidate=="number")while(this.dates.length>this.o.multidate)this.dates.remove(0)},_setDate:function(e,t){(!t||t=="date")&&this._toggle_multidate(e&&new Date(e));if(!t||t=="view")this.viewDate=e&&new Date(e);this.fill(),this.setValue(),this._trigger("changeDate");var n;this.isInput?n=this.element:this.component&&(n=this.element.find("input")),n&&n.change(),this.o.autoclose&&(!t||t=="date")&&this.hide()},moveMonth:function(e,t){if(!e)return undefined;if(!t)return e;var n=new Date(e.valueOf()),r=n.getUTCDate(),i=n.getUTCMonth(),s=Math.abs(t),o,u;t=t>0?1:-1;if(s==1){u=t==-1?function(){return n.getUTCMonth()==i}:function(){return n.getUTCMonth()!=o},o=i+t,n.setUTCMonth(o);if(o<0||o>11)o=(o+12)%12}else{for(var a=0;a<s;a++)n=this.moveMonth(n,t);o=n.getUTCMonth(),n.setUTCDate(r),u=function(){return o!=n.getUTCMonth()}}while(u())n.setUTCDate(--r),n.setUTCMonth(o);return n},moveYear:function(e,t){return this.moveMonth(e,t*12)},dateWithinRange:function(e){return e>=this.o.startDate&&e<=this.o.endDate},keydown:function(e){if(this.picker.is(":not(:visible)")){e.keyCode==27&&this.show();return}var t=!1,n,r,s,o=this.focusDate||this.viewDate;switch(e.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),e.preventDefault();break;case 37:case 39:if(!this.o.keyboardNavigation)break;n=e.keyCode==37?-1:1,e.ctrlKey?(r=this.moveYear(this.dates.get(-1)||i(),n),s=this.moveYear(o,n),this._trigger("changeYear",this.viewDate)):e.shiftKey?(r=this.moveMonth(this.dates.get(-1)||i(),n),s=this.moveMonth(o,n),this._trigger("changeMonth",this.viewDate)):(r=new Date(this.dates.get(-1)||i()),r.setUTCDate(r.getUTCDate()+n),s=new Date(o),s.setUTCDate(o.getUTCDate()+n)),this.dateWithinRange(r)&&(this.focusDate=this.viewDate=s,this.setValue(),this.fill(),e.preventDefault());break;case 38:case 40:if(!this.o.keyboardNavigation)break;n=e.keyCode==38?-1:1,e.ctrlKey?(r=this.moveYear(this.dates.get(-1)||i(),n),s=this.moveYear(o,n),this._trigger("changeYear",this.viewDate)):e.shiftKey?(r=this.moveMonth(this.dates.get(-1)||i(),n),s=this.moveMonth(o,n),this._trigger("changeMonth",this.viewDate)):(r=new Date(this.dates.get(-1)||i()),r.setUTCDate(r.getUTCDate()+n*7),s=new Date(o),s.setUTCDate(o.getUTCDate()+n*7)),this.dateWithinRange(r)&&(this.focusDate=this.viewDate=s,this.setValue(),this.fill(),e.preventDefault());break;case 32:break;case 13:o=this.focusDate||this.dates.get(-1)||this.viewDate,this._toggle_multidate(o),t=!0,this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(e.preventDefault(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}if(t){this.dates.length?this._trigger("changeDate"):this._trigger("clearDate");var u;this.isInput?u=this.element:this.component&&(u=this.element.find("input")),u&&u.change()}},showMode:function(e){e&&(this.viewMode=Math.max(this.o.minViewMode,Math.min(2,this.viewMode+e))),this.picker.find(">div").hide().filter(".ai1ec-datepicker-"+v.modes[this.viewMode].clsName).css("display","block"),this.updateNavArrows()}};var a=function(t,n){this.element=e(t),this.inputs=e.map(n.inputs,function(e){return e.jquery?e[0]:e}),delete n.inputs,e(this.inputs).datepicker(n).bind("changeDate",e.proxy(this.dateUpdated,this)),this.pickers=e.map(this.inputs,function(t){return e(t).data("datepicker")}),this.updateDates()};a.prototype={updateDates:function(){this.dates=e.map(this.pickers,function(e){return e.getUTCDate()}),this.updateRanges()},updateRanges:function(){var t=e.map(this.dates,function(e){return e.valueOf()});e.each(this.pickers,function(e,n){n.setRange(t)})},dateUpdated:function(t){if(this.updating)return;this.updating=!0;var n=e(t.target).data("datepicker"),r=n.getUTCDate(),i=e.inArray(t.target,this.inputs),s=this.inputs.length;if(i==-1)return;e.each(this.pickers,function(e,t){t.getUTCDate()||t.setUTCDate(r)});if(r<this.dates[i])while(i>=0&&r<this.dates[i])this.pickers[i--].setUTCDate(r);else if(r>this.dates[i])while(i<s&&r>this.dates[i])this.pickers[i++].setUTCDate(r);this.updateDates(),delete this.updating},remove:function(){e.map(this.pickers,function(e){e.remove()}),delete this.element.data().datepicker}};var c=e.fn.datepicker;e.fn.datepicker=function(t){var n=Array.apply(null,arguments);n.shift();var r;return this.each(function(){var i=e(this),s=i.data("datepicker"),o=typeof t=="object"&&t;if(!s){var c=f(this,"date"),p=e.extend({},h,c,o),d=l(p.language),v=e.extend({},h,d,c,o);if(i.is(".ai1ec-input-daterange")||v.inputs){var m={inputs:v.inputs||i.find("input").toArray()};i.data("datepicker",s=new a(this,e.extend(v,m)))}else i.data("datepicker",s=new u(this,v))}if(typeof t=="string"&&typeof s[t]=="function"){r=s[t].apply(s,n);if(r!==undefined)return!1}}),r!==undefined?r:this};var h=e.fn.datepicker.defaults={autoclose:!1,beforeShowDay:e.noop,calendarWeeks:!1,clearBtn:!1,daysOfWeekDisabled:[],endDate:Infinity,forceParse:!0,format:"mm/dd/yyyy",keyboardNavigation:!0,language:"en",minViewMode:0,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-Infinity,startView:0,todayBtn:!1,todayHighlight:!1,weekStart:0},p=e.fn.datepicker.locale_opts=["format","rtl","weekStart"];e.fn.datepicker.Constructor=u;var d=e.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa","Su"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear"}},v={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(e){return e%4===0&&e%100!==0||e%400===0},getDaysInMonth:function(e,t){return[31,v.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g,parseFormat:function(e){var t=e.replace(this.validParts,"\0").split("\0"),n=e.match(this.validParts);if(!t||!t.length||!n||n.length===0)throw new Error("Invalid date format.");return{separators:t,parts:n}},parseDate:function(t,n,i){if(!t)return undefined;if(t instanceof Date)return t;typeof n=="string"&&(n=v.parseFormat(n));if(/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(t)){var s=/([\-+]\d+)([dmwy])/,o=t.match(/([\-+]\d+)([dmwy])/g),a,f;t=new Date;for(var l=0;l<o.length;l++){a=s.exec(o[l]),f=parseInt(a[1]);switch(a[2]){case"d":t.setUTCDate(t.getUTCDate()+f);break;case"m":t=u.prototype.moveMonth.call(u.prototype,t,f);break;case"w":t.setUTCDate(t.getUTCDate()+f*7);break;case"y":t=u.prototype.moveYear.call(u.prototype,t,f)}}return r(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0)}var o=t&&t.match(this.nonpunctuation)||[],t=new Date,c={},h=["yyyy","yy","M","MM","m","mm","d","dd"],p={yyyy:function(e,t){return e.setUTCFullYear(t)},yy:function(e,t){return e.setUTCFullYear(2e3+t)},m:function(e,t){if(isNaN(e))return e;t-=1;while(t<0)t+=12;t%=12,e.setUTCMonth(t);while(e.getUTCMonth()!=t)e.setUTCDate(e.getUTCDate()-1);return e},d:function(e,t){return e.setUTCDate(t)}},m,g,a;p.M=p.MM=p.mm=p.m,p.dd=p.d,t=r(t.getFullYear(),t.getMonth(),t.getDate(),0,0,0);var y=n.parts.slice();o.length!=y.length&&(y=e(y).filter(function(t,n){return e.inArray(n,h)!==-1}).toArray());if(o.length==y.length){for(var l=0,b=y.length;l<b;l++){m=parseInt(o[l],10),a=y[l];if(isNaN(m))switch(a){case"MM":g=e(d[i].months).filter(function(){var e=this.slice(0,o[l].length),t=o[l].slice(0,e.length);return e==t}),m=e.inArray(g[0],d[i].months)+1;break;case"M":g=e(d[i].monthsShort).filter(function(){var e=this.slice(0,o[l].length),t=o[l].slice(0,e.length);return e==t}),m=e.inArray(g[0],d[i].monthsShort)+1}c[a]=m}for(var l=0,w,E;l<h.length;l++)E=h[l],E in c&&!isNaN(c[E])&&(w=new Date(t),p[E](w,c[E]),isNaN(w)||(t=w))}return t},formatDate:function(t,n,r){if(!t)return"";typeof n=="string"&&(n=v.parseFormat(n));var i={d:t.getUTCDate(),D:d[r].daysShort[t.getUTCDay()],DD:d[r].days[t.getUTCDay()],m:t.getUTCMonth()+1,M:d[r].monthsShort[t.getUTCMonth()],MM:d[r].months[t.getUTCMonth()],yy:t.getUTCFullYear().toString().substring(2),yyyy:t.getUTCFullYear()};i.dd=(i.d<10?"0":"")+i.d,i.mm=(i.m<10?"0":"")+i.m;var t=[],s=e.extend([],n.separators);for(var o=0,u=n.parts.length;o<=u;o++)s.length&&t.push(s.shift()),t.push(i[n.parts[o]]);return t.join("")},headTemplate:'<thead><tr><th class="ai1ec-prev"><i class="ai1ec-fa ai1ec-fa-arrow-left"></i></th><th colspan="5" class="ai1ec-datepicker-switch"></th><th class="ai1ec-next"><i class="ai1ec-fa ai1ec-fa-arrow-right"></i></th></tr></thead>',contTemplate:'<tbody><tr><td colspan="7"></td></tr></tbody>',footTemplate:'<tfoot><tr><th colspan="7" class="ai1ec-today"></th></tr><tr><th colspan="7" class="ai1ec-clear"></th></tr></tfoot>'};v.template='<div class="timely ai1ec-datepicker"><div class="ai1ec-datepicker-days"><table class=" ai1ec-table-condensed">'+v.headTemplate+"<tbody></tbody>"+v.footTemplate+"</table>"+"</div>"+'<div class="ai1ec-datepicker-months">'+'<table class="ai1ec-table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+"</table>"+"</div>"+'<div class="ai1ec-datepicker-years">'+'<table class="ai1ec-table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+"</table>"+"</div>"+"</div>",e.fn.datepicker.DPGlobal=v,e.fn.datepicker.noConflict=function(){return e.fn.datepicker=c,this},e(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(t){var n=e(this);if(n.data("datepicker"))return;t.preventDefault(),n.datepicker("show")}),e(function(){e('[data-provide="datepicker-inline"]').datepicker()});for(var m=2,g=arguments.length;m<g;m++)arguments[m].localize()}),timely.define("external_libs/bootstrap/alert",["jquery_timely"],function(e){var t='[data-dismiss="ai1ec-alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function s(){i.trigger("closed.bs.alert").remove()}var n=e(this),r=n.attr("data-target");r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));var i=e(r);t&&t.preventDefault(),i.length||(i=n.hasClass("ai1ec-alert")?n:n.parent()),i.trigger(t=e.Event("close.bs.alert"));if(t.isDefaultPrevented())return;i.removeClass("ai1ec-in"),e.support.transition&&i.hasClass("ai1ec-fade")?i.one(e.support.transition.end,s).emulateTransitionEnd(150):s()};var r=e.fn.alert;e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("bs.alert");i||r.data("bs.alert",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e.fn.alert.noConflict=function(){return e.fn.alert=r,this},e(document).on("click.bs.alert.data-api",t,n.prototype.close)}),timely.define("external_libs/jquery_cookie",["jquery_timely"],function(e){function n(e){return u.raw?e:encodeURIComponent(e)}function r(e){return u.raw?e:decodeURIComponent(e)}function i(e){return n(u.json?JSON.stringify(e):String(e))}function s(e){e.indexOf('"')===0&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(t," ")),u.json?JSON.parse(e):e}catch(n){}}function o(t,n){var r=u.raw?t:s(t);return e.isFunction(n)?n(r):r}var t=/\+/g,u=e.cookie=function(t,s,a){if(s!==undefined&&!e.isFunction(s)){a=e.extend({},u.defaults,a);if(typeof a.expires=="number"){var f=a.expires,l=a.expires=new Date;l.setTime(+l+f*864e5)}return document.cookie=[n(t),"=",i(s),a.expires?"; expires="+a.expires.toUTCString():"",a.path?"; path="+a.path:"",a.domain?"; domain="+a.domain:"",a.secure?"; secure":""].join("")}var c=t?undefined:{},h=document.cookie?document.cookie.split("; "):[];for(var p=0,d=h.length;p<d;p++){var v=h[p].split("="),m=r(v.shift()),g=v.join("=");if(t&&t===m){c=o(g,s);break}!t&&(g=o(g))!==undefined&&(c[m]=g)}return c};u.defaults={},e.removeCookie=function(t,n){return e.cookie(t)===undefined?!1:(e.cookie(t,"",e.extend({},n,{expires:-1})),!e.cookie(t))}}),timely.define("scripts/calendar/load_views",["jquery_timely","scripts/calendar/print","scripts/calendar/agenda_view","scripts/calendar/month_view","libs/frontend_utils","libs/utils","ai1ec_calendar","ai1ec_config","scripts/common_scripts/frontend/common_frontend","libs/select2_multiselect_helper","external_libs/twig","agenda","oneday","month","external_libs/jquery_history","external_libs/jquery.tablescroller","external_libs/jquery.scrollTo","external_libs/bootstrap_datepicker","external_libs/bootstrap/alert","external_libs/jquery_cookie"],function(e,t,n,r,i,s,o,u,a,f,l,c,h,p){e.cookie.json=!0;var d="ai1ec_saved_filter",v=!e("#save_filtered_views").hasClass("ai1ec-hide");timely.renderer_map||(timely.renderer_map={}),e.extend(timely.renderer_map,{agenda:c,oneday:h,week:h,month:p});var m=function(e){var t=e.find("#ai1ec-view-dropdown .ai1ec-dropdown-menu .ai1ec-active a"),n=u.week_view_ends_at-u.week_view_starts_at,i=n*60;e.find("table.ai1ec-week-view-original").tableScroll({height:i,containerClass:"ai1ec-week-view ai1ec-popover-boundary",scroll:!1}),e.find("table.ai1ec-oneday-view-original").tableScroll({height:i,containerClass:"ai1ec-oneday-view ai1ec-popover-boundary",scroll:!1});if(e.find(".ai1ec-week-view").length||e.find(".ai1ec-oneday-view").length)e.find(".ai1ec-oneday-view .tablescroll_wrapper, .ai1ec-week-view .tablescroll_wrapper").scrollTo(e.find(".ai1ec-hour-marker:eq("+u.week_view_starts_at+")")),e.find(".ai1ec-hour-marker:eq("+u.week_view_starts_at+")").addClass("ai1ec-first-visible");e.find(".ai1ec-month-view .ai1ec-multiday").length&&r.extend_multiday_events(e),e.find(".ai1ec-calendar-view-container").data("ai1ec-inited",!0).trigger("initialize_view.ai1ec"),e.find(".ai1ec-calendar-toolbar").trigger("ai1ec-affix.reinit")},g=function(t){t.find(".ai1ec-calendar-view-container").trigger("destroy_view.ai1ec");var n=t.find(".ai1ec-minical-trigger").data("datepicker");typeof n!="undefined"&&(n.picker.remove(),e(document).off("changeDate",".ai1ec-minical-trigger")),t.find(".ai1ec-tooltip.ai1ec-in, .ai1ec-popup").remove(),t.find(".ai1ec-calendar-toolbar .ai1ec-btn-toolbar").remove()},y=function(){var t=[],n=[],r=[],i;e(".ai1ec-category-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){t.push(e(this).data("term"))}),e(".ai1ec-tag-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){n.push(e(this).data("term"))}),e(".ai1ec-author-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){r.push(e(this).data("term"))});var s={};return s.cat_ids=t,s.tag_ids=n,s.auth_ids=r,i=e(".ai1ec-views-dropdown .ai1ec-dropdown-menu .ai1ec-active").data("action"),s.action=i,s},b=function(){var t=History.getState(),n=e.cookie(d);if(null===n||undefined===n)n={};var r=y();u.is_calendar_page?n.calendar_page=r:n[t.url]=r,e.cookie(d,n,{path:"/",expires:365}),e("#save_filtered_views").addClass("ai1ec-active").attr("data-original-title",u.clear_saved_filter_text);var i=s.make_alert(u.save_filter_text_ok,"success");e("#ai1ec-calendar").prepend(i)},w=function(t){t.stopImmediatePropagation();var n=e.cookie(d);if(u.is_calendar_page)delete n.calendar_page;else{var r=History.getState();delete n[r.url]}e.cookie(d,n,{path:"/",expires:365}),e("#save_filtered_views").removeClass("ai1ec-active").attr("data-original-title",u.reset_saved_filter_text),v||e("#save_filtered_views").addClass("ai1ec-hide");var i=s.make_alert(u.remove_filter_text_ok,"success");e("#ai1ec-calendar").prepend(i)},E=function(t,n,r){t.find(".ai1ec-calendar-view-loading").fadeIn("fast").end().find(".ai1ec-calendar-view").fadeTo("fast",.3,function(){var i={request_type:r,ai1ec_doing_ajax:!0};e("#ai1ec-container > .ai1ec-alert").remove();var o=e.ajax({url:n,dataType:r,data:i,method:"get"});o.done(function(i){e(document).trigger("calendar_view_loaded.ai1ec",t),g(t),typeof i.views_dropdown=="string"&&t.find(".ai1ec-views-dropdown").replaceWith(i.views_dropdown),typeof i.categories=="string"&&t.find(".ai1ec-category-filter").replaceWith(i.categories),typeof i.authors=="string"&&t.find(".ai1ec-author-filter").replaceWith(i.authors),typeof i.tags=="string"&&t.find(".ai1ec-tag-filter").replaceWith(i.tags);if(typeof i.custom_filters=="string"){var s=t.find("li.ai1ec-custom-filter").parent();t.find("li.ai1ec-custom-filter").remove(),s.append(i.custom_filters)}typeof i.subscribe_buttons=="string"&&t.find(".ai1ec-subscribe-container").empty().append(i.subscribe_buttons),typeof i.save_view_btngroup=="string"&&t.find("#save_filtered_views").closest(".ai1ec-btn-group").replaceWith(i.save_view_btngroup),v=i.are_filters_set;var o;if(i.is_json){var u=i.html.type;if(!timely.renderer_map[u]){E(t,n.replace(/\~json/,"~html"),r);return}o=timely.renderer_map[u]}t.find(".ai1ec-calendar-view").html(o?o.render(i.html):e(i.html).find(".ai1ec-calendar-view").length?e(i.html).find(".ai1ec-calendar-view").html():i.html),m(t)}),o.fail(function(n,r,i){var o=u.load_views_error;o=o.replace("%STATUS%",n.status),o=o.replace("%ERROR%",i);var a=s.make_alert(o,"error",!0);e("#ai1ec-container").prepend(a),g(t),m(t)}),o.always(function(){t.find(".ai1ec-calendar-view-loading").fadeOut("fast"),t.find(".ai1ec-calendar-view").fadeTo("fast",1)})})},S=!1,x=function(t){var n=History.getState(),r=e(".ai1ec-calendar:first");if(n.data.ai1ec!==undefined&&!0===n.data.ai1ec||!0===S)S=!0,E(r,n.url,"json")},T=function(e,t,n){if(t==="json"){var r={ai1ec:!0};History.pushState(r,document.title,decodeURI(n))}else E(e,n,"jsonp")},N=function(t){var n=e(this),r=n.closest(".ai1ec-calendar");t.preventDefault(),T(r,n.data("type"),n.attr("href"))},C=function(t){var n=e(this);t.preventDefault();if(typeof n.data("datepicker")=="undefined"){n.datepicker({todayBtn:"linked",todayHighlight:!0,language:n.data("lang")});var r=n.data("datepicker");if(n.closest(".ai1ec-pull-right").length>0){r.picker.addClass("ai1ec-right-aligned");var i=r.place;r.place=function(){i.call(this);var t=this.component?this.component:this.element,n=t.offset();this.picker.css({left:"auto",right:e(document).width()-n.left-t.outerWidth()})}}e(document).one("changeDate",".ai1ec-minical-trigger",k)}n.datepicker("show")},k=function(t){var n,r=e(this),i=r.closest(".ai1ec-calendar"),s;r.datepicker("hide"),n=r.data("href"),s=t.format(),s=s.replace(/\//g,"-"),n=n.replace("__DATE__",s),T(i,r.data("type"),n)},L=function(t){var n;typeof t.added!="undefined"?n=e(t.added.element).data("href"):n=e("option[value="+t.removed.id+"]",t.target).data("href"),data={ai1ec:!0},History.pushState(data,null,n)},A=function(){var t=e(this).closest(".ai1ec-calendar");T(t,e(this).data("type"),e(this).data("href"))};return{initialize_view:m,handle_click_on_link_to_load_view:N,handle_minical_trigger:C,handle_minical_change_date:k,clear_filters:A,handle_state_change:x,load_view:E,save_current_filter:b,remove_current_filter:w,load_view_from_select2_filter:L,load_view_according_to_datatype:T}}),timely.define("scripts/calendar/calendar-affix",["jquery_timely","ai1ec_config"],function(e,t){var n=function(n){var r=n.find(".ai1ec-calendar-toolbar");r.length||(r=e("<div />",{"class":"timely ai1ec-calendar-toolbar ai1ec-empty-toolbar ai1ec-clearfix"}),n.prepend(r));var i=n.find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").css("clear","both"),s=r.find(".ai1ec-dropdown-toggle"),o=n.find("#ai1ec-calendar-view"),u=e("#wpadminbar"),a=r.offset().top,f=0,l=null,c=function(){return e("#ai1ec-bs-modes div:visible:first").text()},h=function(){var t=["xs","sm","md","lg"],n=e('<div id="ai1ec-bs-modes"></div>');for(var r in t)e('<div class="ai1ec-device-'+t[r]+" ai1ec-visible-"+t[r]+'">'+t[r]+"</div>").appendTo(n);n.appendTo("body")},p=function(){return parseInt(t["affix_vertical_offset_"+c()]||0)},d=function(){s.each(function(){e(this).contents().eq(-3).wrap('<div class="ai1ec-hidden" />')})},v=function(){s.find(".ai1ec-hidden").contents().unwrap()},m=function(){var e=0;"fixed"===u.css("position")&&(e=u.height()),r.css("top",e+p()+"px")},g=function(){return f},y=function(){f=a-("fixed"===u.css("position")?u.height():0)-p()},b=function(){r.height()>r.data("original_height")?(d(),r.height()>r.data("original_height")&&v()):v()},w=function(){n.find(".ai1ec-affix .ai1ec-views-dropdown").closest("div.ai1ec-clearfix").remove(),i=n.find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix"),s=r.find(".ai1ec-dropdown-toggle"),r.trigger("ai1ec-affix-top.bs.affix").find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").hide().end().end().data({original_height:r.height()}).find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").show().end().end().filter(".ai1ec-affix").trigger("ai1ec-affix.bs.affix")},E=function(){r.hasClass("ai1ec-affix")&&r.addClass("ai1ec-was-affixed"),y(),r.removeClass("ai1ec-affix").css("width",n.width()).find(".ai1ec-btn-toolbar").hide().end().data({original_height:r.height()}),m(),a=r.offset().top,r.filter(".ai1ec-was-affixed").addClass("ai1ec-affix").removeClass("ai1ec-was-affixed").find(".ai1ec-btn-toolbar").show(),l=null};return h(),y(),r.data({original_height:r.height()}).css("width",n.width()).affix({offset:{top:g,bottom:0}}).on("ai1ec-affix.bs.affix",function(){var t=o.offset().top;i.hide().appendTo(r).show().css("opacity",0).animate({opacity:1},400),b(),m(),o.css("margin-top",r.outerHeight(!0)+parseInt(r.css("margin-bottom"))+"px"),e("body").addClass("ai1ec-has-affixed-toolbar")}).on("ai1ec-affix-top.bs.affix",function(){i.hide(),o.prepend(i),i.show().css("opacity",0).animate({opacity:1},400),v(),m(),o.css("margin-top",0),r.data("original_height",r.height()),e("body").removeClass("ai1ec-has-affixed-toolbar")}).on("ai1ec-affix.reinit",w).filter(".ai1ec-affix").trigger("ai1ec-affix.bs.affix"),e(window).on("resize.affix",function(){clearTimeout(l),l=setTimeout(E,100)}),n};return{initialize_affixed_toolbar:n}}),timely.define("external_libs/bootstrap/transition",["jquery_timely"],function(e){function t(){var e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var n in t)if(e.style[n]!==undefined)return{end:t[n]}}e.fn.emulateTransitionEnd=function(t){var n=!1,r=this;e(this).one(e.support.transition.end,function(){n=!0});var i=function(){n||e(r).trigger(e.support.transition.end)};return setTimeout(i,t),this},e(function(){e.support.transition=t()})}),timely.define("external_libs/bootstrap/modal",["jquery_timely"],function(e){var t=function(t,n){this.options=n,this.$element=e(t),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.load(this.options.remote)};t.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},t.prototype.toggle=function(e){return this[this.isShown?"hide":"show"](e)},t.prototype.show=function(t){var n=this,r=e.Event("show.bs.modal",{relatedTarget:t});this.$element.trigger(r);if(this.isShown||r.isDefaultPrevented())return;this.isShown=!0,this.escape(),this.$element.on("click.dismiss.modal",'[data-dismiss="ai1ec-modal"]',e.proxy(this.hide,this)),this.backdrop(function(){var r=e.support.transition&&n.$element.hasClass("ai1ec-fade");n.$element.parent().length||n.$element.appendTo(document.body),n.$element.show(),r&&n.$element[0].offsetWidth,n.$element.addClass("ai1ec-in").attr("aria-hidden",!1),n.enforceFocus();var i=e.Event("shown.bs.modal",{relatedTarget:t});r?n.$element.find(".ai1ec-modal-dialog").one(e.support.transition.end,function(){n.$element.focus().trigger(i)}).emulateTransitionEnd(300):n.$element.focus().trigger(i)})},t.prototype.hide=function(t){t&&t.preventDefault(),t=e.Event("hide.bs.modal"),this.$element.trigger(t);if(!this.isShown||t.isDefaultPrevented())return;this.isShown=!1,this.escape(),e(document).off("focusin.bs.modal"),this.$element.removeClass("ai1ec-in").attr("aria-hidden",!0).off("click.dismiss.modal"),e.support.transition&&this.$element.hasClass("ai1ec-fade")?this.$element.one(e.support.transition.end,e.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal()},t.prototype.enforceFocus=function(){e(document).off("focusin.bs.modal").on("focusin.bs.modal",e.proxy(function(e){this.$element[0]!==e.target&&!this.$element.has(e.target).length&&this.$element.focus()},this))},t.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",e.proxy(function(e){e.which==27&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},t.prototype.hideModal=function(){var e=this;this.$element.hide(),this.backdrop(function(){e.removeBackdrop(),e.$element.trigger("hidden.bs.modal")})},t.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},t.prototype.backdrop=function(t){var n=this,r=this.$element.hasClass("ai1ec-fade")?"ai1ec-fade":"";if(this.isShown&&this.options.backdrop){var i=e.support.transition&&r;this.$backdrop=e('<div class="ai1ec-modal-backdrop '+r+'" />').appendTo(document.body),this.$element.on("click.dismiss.modal",e.proxy(function(e){if(e.target!==e.currentTarget)return;this.options.backdrop=="static"?this.$element[0].focus.call(this.$element[0]):this.hide.call(this)},this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("ai1ec-in");if(!t)return;i?this.$backdrop.one(e.support.transition.end,t).emulateTransitionEnd(150):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("ai1ec-in"),e.support.transition&&this.$element.hasClass("ai1ec-fade")?this.$backdrop.one(e.support.transition.end,t).emulateTransitionEnd(150):t()):t&&t()};var n=e.fn.modal;e.fn.modal=function(n,r){return this.each(function(){var i=e(this),s=i.data("bs.modal"),o=e.extend({},t.DEFAULTS,i.data(),typeof n=="object"&&n);s||i.data("bs.modal",s=new t(this,o)),typeof n=="string"?s[n](r):o.show&&s.show(r)})},e.fn.modal.Constructor=t,e.fn.modal.noConflict=function(){return e.fn.modal=n,this},e(document).on("click.bs.modal.data-api",'[data-toggle="ai1ec-modal"]',function(t){var n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s,this).one("hide",function(){n.is(":visible")&&n.focus()})}),e(document).on("show.bs.modal",".ai1ec-modal",function(){e(document.body).addClass("ai1ec-modal-open")}).on("hidden.bs.modal",".ai1ec-modal",function(){e(document.body).removeClass("ai1ec-modal-open")})}),timely.define("scripts/calendar",["jquery_timely","domReady","scripts/calendar/load_views","scripts/calendar/print","scripts/calendar/agenda_view","scripts/calendar/month_view","scripts/calendar/calendar-affix","ai1ec_calendar","ai1ec_config","scripts/common_scripts/frontend/common_frontend","libs/utils","libs/select2_multiselect_helper","external_libs/bootstrap/transition","external_libs/bootstrap/modal","external_libs/jquery.scrollTo","external_libs/jquery_cookie"],function(e,t,n,r,i,s,o,u,a,f,l,c){var h=function(){if(u.selector!==undefined&&u.selector!==""&&e(u.selector).length===1){var t=e(":header:contains("+u.title+"):first");t.length||(t=e('<h1 class="page-title"></h1>'),t.text(u.title));var n=e(".ai1ec-main-container:first").detach().before(t);e(u.selector).empty().append(n).hide().css("visibility","visible").fadeIn("fast")}},p=function(){var t=e(this).data("instanceId"),n=e(this).closest(".ai1ec-calendar");n.find(".ai1ec-event-instance-id-"+t).addClass("ai1ec-hover")},d=function(){var t=e(this).data("instanceId"),n=e(this).closest(".ai1ec-calendar");n.find(".ai1ec-event-instance-id-"+t).removeClass("ai1ec-hover")},v=function(){var t=e(this),n=t.closest(".ai1ec-calendar"),r=t.data("instanceId");t.delay(500).queue(function(){n.find(".ai1ec-event-instance-id-"+r).addClass("ai1ec-raised")})},m=function(t){var n=e(this),r=n.closest(".ai1ec-calendar"),i=n.data("instanceId"),s=e(t.toElement||t.relatedTarget),o=r.find(".ai1ec-event-instance-id-"+i);if(s.is(o)||s.parent().is(o))return;r.find(".ai1ec-event-instance-id-"+i).clearQueue().removeClass("ai1ec-raised")},g=function(){h()},y=function(){e(document).on({mouseenter:p,mouseleave:d},".ai1ec-event-container.ai1ec-multiday"),e(document).on({mouseenter:v,mouseleave:m},".ai1ec-oneday-view .ai1ec-oneday .ai1ec-event-container, .ai1ec-week-view .ai1ec-week .ai1ec-event-container"),e(document).on("click",".ai1ec-agenda-view .ai1ec-event-header",i.toggle_event),e(document).on("click","#ai1ec-agenda-expand-all",i.expand_all),e(document).on("click","#ai1ec-agenda-collapse-all",i.collapse_all),e(document).on("click","a.ai1ec-load-view",n.handle_click_on_link_to_load_view),e(document).on("click",".ai1ec-minical-trigger",n.handle_minical_trigger),e(document).on("click",".ai1ec-clear-filter",n.clear_filters),e(document).on("click","#ai1ec-print-button",r.handle_click_on_print_button),e(document).on("click",".ai1ec-reveal-full-day button",function(){var t=e(this).closest(".ai1ec-calendar");e(this).fadeOut();var n=t.find(".ai1ec-oneday-view-original, .ai1ec-week-view-original"),r=t.find(".tablescroll_wrapper").offset().top-n.offset().top;e(window).scrollTo("+="+r+"px",400);var i=1442;t.find(".tablescroll_wrapper").scrollTo("-="+r+"px",400).animate({height:i+"px"})}),History.Adapter.bind(window,"statechange",n.handle_state_change),e(document).on("click","#ai1ec-calendar-view .ai1ec-load-event",function(t){e.cookie.raw=!1,e.cookie("ai1ec_calendar_url",document.URL,{path:a.cookie_path})})},b=function(){c.init(e(".ai1ec-select2-filters")),e(document).on("change",".ai1ec-select2-multiselect-selector",n.load_view_from_select2_filter)};t(function(){var t=e(".ai1ec-calendar"),r=e(".ai1ec-calendar:visible").first();g(),a.use_select2&&b(),y(),t.each(function(){n.initialize_view(e(this))}),a.affix_filter_menu&&1===r.length&&o.initialize_affixed_toolbar(r)});var w=function(){};return{start:w,initialize_view:n.initialize_view}}),timely.require(["scripts/calendar"],function(e){e.start()}),timely.define("pages/calendar",function(){});
358
  * limitations under the License.
359
  * ======================================================================== */
360
 
361
+ timely.define("domReady",[],function(){function u(e){var t;for(t=0;t<e.length;t++)e[t](n)}function a(){var e=r;t&&e.length&&(r=[],u(e))}function f(){t||(t=!0,o&&clearInterval(o),a())}function c(e){return t?e(n):r.push(e),c}var e=typeof window!="undefined"&&window.document,t=!e,n=e?document:null,r=[],i,s,o;if(e){if(document.addEventListener)document.addEventListener("DOMContentLoaded",f,!1),window.addEventListener("load",f,!1);else if(window.attachEvent){window.attachEvent("onload",f),s=document.createElement("div");try{i=window.frameElement===null}catch(l){}s.doScroll&&i&&window.external&&(o=setInterval(function(){try{s.doScroll(),f()}catch(e){}},30))}(document.readyState==="complete"||document.readyState==="interactive")&&f()}return c.version="2.0.0",c.load=function(e,t,n,r){r.isBuild?n(null):c(n)},c}),timely.define("scripts/calendar/print",["jquery_timely"],function(e){var t=function(t){t.preventDefault();var n=e("body"),r=e("html"),i=e(this).closest(".ai1ec-calendar").html(),s=n.html();s=s.replace(/<script.*?>([\s\S]*?)<\/script>/gmi,""),n.empty(),n.addClass("timely"),r.addClass("ai1ec-print"),n.html(i),e("span").click(function(){return!1}),e(".ai1ec-agenda-view a").each(function(){e(this).data("href",e(this).attr("href")),e(this).attr("href","#")}),window.print(),e(".ai1ec-agenda-view a").each(function(){e(this).attr("href",e(this).data("href")),e(this).data("href","")}),n.removeClass("timely"),r.removeClass("ai1ec-print"),n.html(s)};return{handle_click_on_print_button:t}}),timely.define("scripts/calendar/agenda_view",["jquery_timely"],function(e){var t=function(){e(this).closest(".ai1ec-event").toggleClass("ai1ec-expanded").find(".ai1ec-event-summary").slideToggle(300)},n=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-expanded .ai1ec-event-toggle").click()},r=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-event:not(.ai1ec-expanded) .ai1ec-event-toggle").click()};return{toggle_event:t,collapse_all:n,expand_all:r}}),timely.define("external_libs/modernizr",[],function(){var e=function(e,t,n){function S(e){f.cssText=e}function x(e,t){return S(h.join(e+";")+(t||""))}function T(e,t){return typeof e===t}function N(e,t){return!!~(""+e).indexOf(t)}function C(e,t,r){for(var i in e){var s=t[e[i]];if(s!==n)return r===!1?e[i]:T(s,"function")?s.bind(r||t):s}return!1}var r="2.5.3",i={},s=!0,o=t.documentElement,u="modernizr",a=t.createElement(u),f=a.style,l,c={}.toString,h=" -webkit- -moz- -o- -ms- ".split(" "),p={},d={},v={},m=[],g=m.slice,y,b=function(e,n,r,i){var s,a,f,l=t.createElement("div"),c=t.body,h=c?c:t.createElement("body");if(parseInt(r,10))while(r--)f=t.createElement("div"),f.id=i?i[r]:u+(r+1),l.appendChild(f);return s=["&#173;","<style>",e,"</style>"].join(""),l.id=u,(c?l:h).innerHTML+=s,h.appendChild(l),c||(h.style.background="",o.appendChild(h)),a=n(l,e),c?l.parentNode.removeChild(l):h.parentNode.removeChild(h),!!a},w={}.hasOwnProperty,E;!T(w,"undefined")&&!T(w.call,"undefined")?E=function(e,t){return w.call(e,t)}:E=function(e,t){return t in e&&T(e.constructor.prototype[t],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(t){var n=this;if(typeof n!="function")throw new TypeError;var r=g.call(arguments,1),i=function(){if(this instanceof i){var e=function(){};e.prototype=n.prototype;var s=new e,o=n.apply(s,r.concat(g.call(arguments)));return Object(o)===o?o:s}return n.apply(t,r.concat(g.call(arguments)))};return i});var k=function(n,r){var s=n.join(""),o=r.length;b(s,function(n,r){var s=t.styleSheets[t.styleSheets.length-1],u=s?s.cssRules&&s.cssRules[0]?s.cssRules[0].cssText:s.cssText||"":"",a=n.childNodes,f={};while(o--)f[a[o].id]=a[o];i.touch="ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch||(f.touch&&f.touch.offsetTop)===9},o,r)}([,["@media (",h.join("touch-enabled),("),u,")","{#touch{top:9px;position:absolute}}"].join("")],[,"touch"]);p.touch=function(){return i.touch};for(var L in p)E(p,L)&&(y=L.toLowerCase(),i[y]=p[L](),m.push((i[y]?"":"no-")+y));return S(""),a=l=null,i._version=r,i._prefixes=h,i.testStyles=b,o.className=o.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(s?" js "+m.join(" "):""),i}(window,window.document);return e}),timely.define("scripts/calendar/month_view",["jquery_timely","external_libs/modernizr"],function(e,t){var n=navigator.userAgent.match(/opera/i),r=navigator.userAgent.match(/webkit/i),i=function(t){var n=t.find(".ai1ec-day"),r=t.find(".ai1ec-week:first .ai1ec-day").length;t.find(".ai1ec-month-view .ai1ec-multiday").each(function(){var t=this.parentNode,r=e(this).outerHeight(!0),i=e(".ai1ec-date",t),u=parseInt(i.text(),10),a=e(this).data("endTruncated"),f=parseInt(a?e(n[n.length-1]).text():e(this).data("endDay"),10),l=e(this),c=e(".ai1ec-event",l)[0].style.backgroundColor,h=0,p=f-u+1,d=p,v,m=0;n.each(function(t){var n=e(".ai1ec-date",this),r=e(this.parentNode),i=r.index(),a=parseInt(n.text(),10);if(a>=u&&a<=f){a===u&&(v=parseInt(n.css("marginBottom"),10)+16),h===0&&m++;if(i===0&&a>u&&d!==0){var p=l.next(".ai1ec-popup").andSelf().clone(!1);n.parent().append(p);var g=p.first();g.addClass("ai1ec-multiday-bar ai1ec-multiday-clone"),g.css({position:"absolute",left:"1px",top:parseInt(n.css("marginBottom"),10)+13,backgroundColor:c});var y=d>7?7:d;g.css("width",s(y)),d>7&&g.append(o(1,c)),g.append(o(2,c))}h===0?n.css({marginBottom:v+"px"}):n.css({marginBottom:"+=16px"}),d--,d>0&&i===6&&h++}});if(a){var g=l.find("."+l[0].className.replace(/\s+/igm,".")).last();g.append(o(1,c))}e(this).css({position:"absolute",top:i.outerHeight(!0)-r-1+"px",left:"1px",width:s(m)}),h>0&&e(this).append(o(1,c)),e(this).data("startTruncated")&&e(this).append(o(2,c)).addClass("ai1ec-multiday-bar")}),n.each(function(){var t=e(".ai1ec-date",this),n=parseInt(t.text(),10),r=t.closest(".ai1ec-week"),i=e(this).find("a.ai1ec-event-container:not(.ai1ec-multiday)").length,s=null,o;if(0===i)return;o=r.find("a.ai1ec-multiday[data-end-day]").filter(function(){return e(this).data("startDay")<=n&&e(this).data("endDay")>=n}),o.each(function(){var t=e(this).prop("offsetTop");if(null===s||t>s)s=t}),null!==s&&(s+=3,t.css("marginBottom",s))})},s=function(e){var t;switch(e){case 1:t=97.5;break;case 2:t=198.7;break;case 3:t=300;break;case 4:t=401;break;case 5:r||n?t=507:t=503.4;break;case 6:r||n?t=608:t=603.5;break;case 7:r||n?t=709:t=705}return t+"%"},o=function(t,n){var r=e('<div class="ai1ec-multiday-arrow'+t+'"></div>');return t===1?r.css({borderLeftColor:n}):r.css({borderTopColor:n,borderRightColor:n,borderBottomColor:n}),r};return{extend_multiday_events:i}}),timely.define("libs/frontend_utils",[],function(){var e=function(e){var t,n;t=function(e){if(/&[^;]+;/.test(e)){var t=document.createElement("div");return t.innerHTML=e,t.firstChild?t.firstChild.nodeValue:e}return e};if(typeof e=="string")return t(e);if(typeof e=="object")for(n in e)typeof e[n]=="string"&&(e[n]=t(e[n]));return e},t=function(e,t,n){var r,i,s,o,u;if("#"===e.charAt(0)||"?"===e.charAt(0))e=e.substring(1);r={},e=e.split(t);for(i=0;i<e.length;i++)o=e[i].trim(),-1!==(u=o.indexOf(n))?(s=o.substring(0,u).trim(),o=o.substring(u+1).trim()):(s=o,o=!0),r[s]=o;return r},n=function(e){var n,r,i,s,o;e=t(e,"&","="),i=Object.keys(e),n={ai1ec:{},action:"month"};for(r=0;r<i.length;r++)if("ai1ec"===i[r]){var u=t(e[i[r]],"|",":");for(s in u)if(""!==u[s]){if("action"===s||"view"===s)n.action=u[s];n.ai1ec[s]=u[s]}}else"ai1ec_"===i[r].substring(0,6)?n.ai1ec[i[r].substring(6)]=e[i[r]]:n[i[r]]=e[i[r]];"ai1ec_"!==n.action.substring(0,6)&&(n.action="ai1ec_"+n.action),o="action="+n.action+"&ai1ec=";for(s in n.ai1ec)n.ai1ec.hasOwnProperty(s)&&(o+=escape(s)+":"+escape(n.ai1ec[s])+"|");o=o.substring(0,o.length-1);for(s in n)"ai1ec"!==s&&"action"!==s&&(o+="&"+s+"="+escape(n[s]));return o};return{ai1ec_convert_entities:e,ai1ec_map_internal_query:n,ai1ec_tokenize_uri:t}}),timely.define("external_libs/bootstrap/tab",["jquery_timely"],function(e){var t=function(t){this.element=e(t)};t.prototype.show=function(){var t=this.element,n=t.closest("ul:not(.ai1ec-dropdown-menu)"),r=t.data("target");r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("ai1ec-active"))return;var i=n.find(".ai1ec-active:last a")[0],s=e.Event("show.bs.tab",{relatedTarget:i});t.trigger(s);if(s.isDefaultPrevented())return;var o=e(r);this.activate(t.parent("li"),n),this.activate(o,o.parent(),function(){t.trigger({type:"shown.bs.tab",relatedTarget:i})})},t.prototype.activate=function(t,n,r){function o(){i.removeClass("ai1ec-active").find("> .ai1ec-dropdown-menu > .ai1ec-active").removeClass("ai1ec-active"),t.addClass("ai1ec-active"),s?(t[0].offsetWidth,t.addClass("ai1ec-in")):t.removeClass("ai1ec-fade"),t.parent(".ai1ec-dropdown-menu")&&t.closest("li.ai1ec-dropdown").addClass("ai1ec-active"),r&&r()}var i=n.find("> .ai1ec-active"),s=r&&e.support.transition&&i.hasClass("ai1ec-fade");s?i.one(e.support.transition.end,o).emulateTransitionEnd(150):o(),i.removeClass("ai1ec-in")};var n=e.fn.tab;e.fn.tab=function(n){return this.each(function(){var r=e(this),i=r.data("bs.tab");i||r.data("bs.tab",i=new t(this)),typeof n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e.fn.tab.noConflict=function(){return e.fn.tab=n,this},e(document).on("click.bs.tab.data-api",'[data-toggle="ai1ec-tab"], [data-toggle="ai1ec-pill"]',function(t){t.preventDefault(),e(this).tab("show")})}),timely.define("libs/utils",["jquery_timely","external_libs/bootstrap/tab"],function(e){var t=function(){return{is_float:function(e){return!isNaN(parseFloat(e))},is_valid_coordinate:function(e,t){var n=t?90:180;return this.is_float(e)&&Math.abs(e)<n},convert_comma_to_dot:function(e){return e.replace(",",".")},field_has_value:function(t){var n="#"+t,r=e(n),i=!1;return r.length===1&&(i=e.trim(r.val())!==""),i},make_alert:function(t,n,r){var i="";switch(n){case"error":i="ai1ec-alert ai1ec-alert-danger";break;case"success":i="ai1ec-alert ai1ec-alert-success";break;default:i="ai1ec-alert ai1ec-alert-info"}var s=e("<div />",{"class":i,html:t});if(!r){var o=e("<button>",{type:"button","class":"ai1ec-close","data-dismiss":"ai1ec-alert",text:"×"});s.prepend(o)}return s},get_ajax_url:function(){return typeof window.ajaxurl=="undefined"?"http://localhost/wordpress/wp-admin/admin-ajax.php":window.ajaxurl},isUrl:function(e){var t=/(http|https|webcal):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;return t.test(e)},isValidEmail:function(e){var t=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return t.test(e)},activate_saved_tab_on_page_load:function(t){null===t||undefined===t?e("ul.ai1ec-nav a:first").tab("show"):e("ul.ai1ec-nav a[href="+t+"]").tab("show")},add_query_arg:function(e,t){if("string"!=typeof e)return!1;var n=e.indexOf("?")===-1?"?":"&";return-1!==e.indexOf(n+t[0]+"=")?e:e+n+t[0]+"="+t[1]},create_ai1ec_to_send:function(t){var n=e(t),r=[],i=["action","cat_ids","auth_ids","tag_ids","exact_date","display_filters","no_navigation","events_limit"];return n.each(function(){e.each(this.attributes,function(){this.specified&&this.value&&this.name.match(/^data-/)&&(-1<e.inArray(this.name.replace(/^data\-/,""),i)||this.name.match(/_ids$/))&&r.push(this.name.replace(/^data\-/,"")+"~"+this.value)})}),r.join("|")},init_autoselect:function(){e(document).on("click",".ai1ec-autoselect",function(t){if(e(this).data("clicked")&&t.originalEvent.detail<2)return;e(this).data("clicked",!0);var n;document.body.createTextRange?(n=document.body.createTextRange(),n.moveToElementText(this),n.select()):window.getSelection&&(selection=window.getSelection(),n=document.createRange(),n.selectNodeContents(this),selection.removeAllRanges(),selection.addRange(n))})}}}();return t}),timely.define("external_libs/bootstrap/affix",["jquery_timely"],function(e){var t=function(n,r){this.options=e.extend({},t.DEFAULTS,r),this.$window=e(window).on("scroll.bs.affix.data-api",e.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",e.proxy(this.checkPositionWithEventLoop,this)),this.$element=e(n),this.affixed=this.unpin=this.pinnedOffset=null,this.checkPosition()};t.RESET="ai1ec-affix ai1ec-affix-top ai1ec-affix-bottom",t.DEFAULTS={offset:0},t.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(t.RESET).addClass("ai1ec-affix");var e=this.$window.scrollTop(),n=this.$element.offset();return this.pinnedOffset=n.top-e},t.prototype.checkPositionWithEventLoop=function(){setTimeout(e.proxy(this.checkPosition,this),1)},t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var n=e(document).height(),r=this.$window.scrollTop(),i=this.$element.offset(),s=this.options.offset,o=s.top,u=s.bottom;this.affixed=="top"&&(i.top+=r),typeof s!="object"&&(u=o=s),typeof o=="function"&&(o=s.top(this.$element)),typeof u=="function"&&(u=s.bottom(this.$element));var a=this.unpin!=null&&r+this.unpin<=i.top?!1:u!=null&&i.top+this.$element.height()>=n-u?"bottom":o!=null&&r<=o?"top":!1;if(this.affixed===a)return;this.unpin&&this.$element.css("top","");var f="ai1ec-affix"+(a?"-"+a:""),l=e.Event(f+".bs.affix");this.$element.trigger(l);if(l.isDefaultPrevented())return;this.affixed=a,this.unpin=a=="bottom"?this.getPinnedOffset():null,this.$element.removeClass(t.RESET).addClass(f).trigger(e.Event(f.replace("affix","affixed"))),a=="bottom"&&this.$element.offset({top:n-u-this.$element.height()})};var n=e.fn.affix;e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("bs.affix"),s=typeof n=="object"&&n;i||r.data("bs.affix",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.noConflict=function(){return e.fn.affix=n,this},e(window).on("load",function(){e('[data-spy="ai1ec-affix"]').each(function(){var t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}),timely.define("scripts/common_scripts/frontend/common_event_handlers",["jquery_timely","external_libs/bootstrap/affix"],function(e){var t=function(t){var n=e(this),r=n.next(".ai1ec-popup"),i,s,o;if(r.length===0)return;i=r.html(),s=r.attr("class");var u=n.closest("#ai1ec-calendar-view");u.length===0&&(u=e("body")),n.offset().left-u.offset().left>182?o="left":o="right",n.constrained_popover({content:i,title:"",placement:o,trigger:"manual",html:!0,template:'<div class="timely ai1ec-popover '+s+'">'+'<div class="ai1ec-arrow"></div>'+'<div class="ai1ec-popover-inner">'+'<div class="ai1ec-popover-content"><div></div></div>'+"</div>"+"</div>",container:"body"}).constrained_popover("show")},n=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-popup").length===0&&e(this).constrained_popover("hide")},r=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-tooltip").length===0&&(e(this).remove(),e("body > .ai1ec-tooltip").remove())},i=function(t){if("ontouchstart"in document.documentElement){t.preventDefault();return}var n=e(this),r={template:'<div class="timely ai1ec-tooltip"><div class="ai1ec-tooltip-arrow"></div><div class="ai1ec-tooltip-inner"></div></div>',trigger:"manual",container:"body"};if(n.is(".ai1ec-category .ai1ec-color-swatch")||n.is(".ai1ec-custom-filter .ai1ec-color-swatch"))return;n.is(".ai1ec-tooltip-auto")&&(r.placement=u(250)),n.tooltip(r),n.tooltip("show")},s=function(t){e(this).tooltip("hide")},o=function(t){var n=e(t.toElement||t.relatedTarget);n.closest(".ai1ec-tooltip-trigger").length===0&&e(this).remove(),n.closest(".ai1ec-popup").length===0&&e("body > .ai1ec-popup").remove()},u=function(t){return function(n,r){var i,s,o=e(r),u=o.attr("data-placement"),a=e.extend({},o.offset(),{width:r.offsetWidth,height:r.offsetHeight}),f=function(){return!1===i?!1:(i=a.left-t>=0,i?"left":!1)},l=function(){return!1===s?!1:(s=a.left+t<=e(window).width(),s?"right":!1)};switch(u){case"top":return"top";case"bottom":return"bottom";case"left":if(f())return"left";case"right":if(l())return"right";default:if(f())return"left";if(l())return"right";return u}}};return{handle_popover_over:t,handle_popover_out:n,handle_popover_self_out:r,handle_tooltip_over:i,handle_tooltip_out:s,handle_tooltip_self_out:o}}),timely.define("external_libs/bootstrap/tooltip",["jquery_timely"],function(e){var t=function(e,t){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init("tooltip",e,t)};t.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="ai1ec-tooltip"><div class="ai1ec-tooltip-arrow"></div><div class="ai1ec-tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1},t.prototype.init=function(t,n,r){this.enabled=!0,this.type=t,this.$element=e(n),this.options=this.getOptions(r);var i=this.options.trigger.split(" ");for(var s=i.length;s--;){var o=i[s];if(o=="click")this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this));else if(o!="manual"){var u=o=="hover"?"mouseenter":"focus",a=o=="hover"?"mouseleave":"blur";this.$element.on(u+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(a+"."+this.type,this.options.selector,e.proxy(this.leave,this))}}this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.getOptions=function(t){return t=e.extend({},this.getDefaults(),this.$element.data(),t),t.delay&&typeof t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},t.prototype.getDelegateOptions=function(){var t={},n=this.getDefaults();return this._options&&e.each(this._options,function(e,r){n[e]!=r&&(t[e]=r)}),t},t.prototype.enter=function(t){var n=t instanceof this.constructor?t:e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);clearTimeout(n.timeout),n.hoverState="in";if(!n.options.delay||!n.options.delay.show)return n.show();n.timeout=setTimeout(function(){n.hoverState=="in"&&n.show()},n.options.delay.show)},t.prototype.leave=function(t){var n=t instanceof this.constructor?t:e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type);clearTimeout(n.timeout),n.hoverState="out";if(!n.options.delay||!n.options.delay.hide)return n.hide();n.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},t.prototype.show=function(){var t=e.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(t);if(t.isDefaultPrevented())return;var n=this.tip();this.setContent(),this.options.animation&&n.addClass("ai1ec-fade");var r=typeof this.options.placement=="function"?this.options.placement.call(this,n[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,s=i.test(r);s&&(r=r.replace(i,"")||"top"),n.detach().css({top:0,left:0,display:"block"}).addClass("ai1ec-"+r),this.options.container?n.appendTo(this.options.container):n.insertAfter(this.$element);var o=this.getPosition(),u=n[0].offsetWidth,a=n[0].offsetHeight;if(s){var f=this.$element.parent(),l=r,c=document.documentElement.scrollTop||document.body.scrollTop,h=this.options.container=="body"?window.innerWidth:f.outerWidth(),p=this.options.container=="body"?window.innerHeight:f.outerHeight(),d=this.options.container=="body"?0:f.offset().left;r=r=="bottom"&&o.top+o.height+a-c>p?"top":r=="top"&&o.top-c-a<0?"bottom":r=="right"&&o.right+u>h?"left":r=="left"&&o.left-u<d?"right":r,n.removeClass("ai1ec-"+l).addClass("ai1ec-"+r)}var v=this.getCalculatedOffset(r,o,u,a);this.applyPlacement(v,r),this.$element.trigger("shown.bs."+this.type)}},t.prototype.applyPlacement=function(e,t){var n,r=this.tip(),i=r[0].offsetWidth,s=r[0].offsetHeight,o=parseInt(r.css("margin-top"),10),u=parseInt(r.css("margin-left"),10);isNaN(o)&&(o=0),isNaN(u)&&(u=0),e.top=e.top+o,e.left=e.left+u,r.offset(e).addClass("ai1ec-in");var a=r[0].offsetWidth,f=r[0].offsetHeight;t=="top"&&f!=s&&(n=!0,e.top=e.top+s-f);if(/bottom|top/.test(t)){var l=0;e.left<0&&(l=e.left*-2,e.left=0,r.offset(e),a=r[0].offsetWidth,f=r[0].offsetHeight),this.replaceArrow(l-i+a,a,"left")}else this.replaceArrow(f-s,f,"top");n&&r.offset(e)},t.prototype.replaceArrow=function(e,t,n){this.arrow().css(n,e?50*(1-e/t)+"%":"")},t.prototype.setContent=function(){var e=this.tip(),t=this.getTitle();e.find(".ai1ec-tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("ai1ec-fade ai1ec-in ai1ec-top ai1ec-bottom ai1ec-left ai1ec-right")},t.prototype.hide=function(){function i(){t.hoverState!="in"&&n.detach()}var t=this,n=this.tip(),r=e.Event("hide.bs."+this.type);this.$element.trigger(r);if(r.isDefaultPrevented())return;return n.removeClass("ai1ec-in"),e.support.transition&&this.$tip.hasClass("ai1ec-fade")?n.one(e.support.transition.end,i).emulateTransitionEnd(150):i(),this.$element.trigger("hidden.bs."+this.type),this},t.prototype.fixTitle=function(){var e=this.$element;(e.attr("title")||typeof e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").attr("title","")},t.prototype.hasContent=function(){return this.getTitle()},t.prototype.getPosition=function(){var t=this.$element[0];return e.extend({},typeof t.getBoundingClientRect=="function"?t.getBoundingClientRect():{width:t.offsetWidth,height:t.offsetHeight},this.$element.offset())},t.prototype.getCalculatedOffset=function(e,t,n,r){return e=="bottom"?{top:t.top+t.height,left:t.left+t.width/2-n/2}:e=="top"?{top:t.top-r,left:t.left+t.width/2-n/2}:e=="left"?{top:t.top+t.height/2-r/2,left:t.left-n}:{top:t.top+t.height/2-r/2,left:t.left+t.width}},t.prototype.getTitle=function(){var e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof n.title=="function"?n.title.call(t[0]):n.title),e},t.prototype.tip=function(){return this.$tip=this.$tip||e(this.options.template)},t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".ai1ec-tooltip-arrow")},t.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},t.prototype.enable=function(){this.enabled=!0},t.prototype.disable=function(){this.enabled=!1},t.prototype.toggleEnabled=function(){this.enabled=!this.enabled},t.prototype.toggle=function(t){var n=t?e(t.currentTarget)[this.type](this.getDelegateOptions()).data("bs."+this.type):this;n.tip().hasClass("ai1ec-in")?n.leave(n):n.enter(n)},t.prototype.destroy=function(){this.hide().$element.off("."+this.type).removeData("bs."+this.type)};var n=e.fn.tooltip;e.fn.tooltip=function(n){return this.each(function(){var r=e(this),i=r.data("bs.tooltip"),s=typeof n=="object"&&n;i||r.data("bs.tooltip",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.noConflict=function(){return e.fn.tooltip=n,this}}),timely.define("external_libs/bootstrap/popover",["jquery_timely","external_libs/bootstrap/tooltip"],function(e){var t=function(e,t){this.init("popover",e,t)};if(!e.fn.tooltip)throw new Error("Popover requires tooltip.js");t.DEFAULTS=e.extend({},e.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="ai1ec-popover"><div class="ai1ec-arrow"></div><h3 class="ai1ec-popover-title"></h3><div class="ai1ec-popover-content"></div></div>'}),t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype),t.prototype.constructor=t,t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.setContent=function(){var e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".ai1ec-popover-title")[this.options.html?"html":"text"](t),e.find(".ai1ec-popover-content")[this.options.html?"html":"text"](n),e.removeClass("ai1ec-fade ai1ec-top ai1ec-bottom ai1ec-left ai1ec-right ai1ec-in"),e.find(".ai1ec-popover-title").html()||e.find(".ai1ec-popover-title").hide()},t.prototype.hasContent=function(){return this.getTitle()||this.getContent()},t.prototype.getContent=function(){var e=this.$element,t=this.options;return e.attr("data-content")||(typeof t.content=="function"?t.content.call(e[0]):t.content)},t.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".ai1ec-arrow")},t.prototype.tip=function(){return this.$tip||(this.$tip=e(this.options.template)),this.$tip};var n=e.fn.popover;e.fn.popover=function(n){return this.each(function(){var r=e(this),i=r.data("bs.popover"),s=typeof n=="object"&&n;i||r.data("bs.popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.noConflict=function(){return e.fn.popover=n,this}}),timely.define("external_libs/constrained_popover",["jquery_timely","external_libs/bootstrap/popover"],function(e){var t=function(e,t){this.init("constrained_popover",e,t)};t.DEFAULTS=e.extend({},e.fn.popover.Constructor.DEFAULTS,{container:"",content:this.options}),t.prototype=e.extend({},e.fn.popover.Constructor.prototype),t.prototype.constructor=t,t.prototype.getDefaults=function(){return t.DEFAULTS},t.prototype.applyPlacement=function(t,n){e.fn.popover.Constructor.prototype.applyPlacement.call(this,t,n);var r=this.tip(),i=r[0].offsetWidth,s=r[0].offsetHeight,o=this.getPosition(),u={};switch(n){case"left":newPos=this.defineBounds(o),typeof newPos.top=="undefined"?u.top=o.top+o.height/2-s/2:u.top=newPos.top-s/2,typeof newPos.left=="undefined"?u.left=o.left-i:u.left=newPos.left-i,r.offset(u);break;case"right":newPos=this.defineBounds(o),typeof newPos.top=="undefined"?u.top=o.top+o.height/2-s/2:u.top=newPos.top-s/2,typeof newPos.left=="undefined"?u.left=o.left+o.width:u.left=newPos.left+o.width,r.offset(u)}},t.prototype.defineBounds=function(t){var n,r,i,s,o,u={},a=e("body"===this.options.container?document:this.options.container);return a.length?(n=a.offset()||{top:0,left:0},r=n.top,i=n.left,s=r+a.height(),o=i+a.width(),t.top+t.height/2<r&&(u.top=r),t.top+t.height/2>s&&(u.top=s),t.left-t.width/2<i&&(u.left=i),t.left-t.width/2>o&&(u.left=o),u):!1};var n=e.fn.popover;e.fn.constrained_popover=function(n){return this.each(function(){var r=e(this),i=r.data("ai1ec.constrained_popover"),s=typeof n=="object"&&n;i||r.data("ai1ec.constrained_popover",i=new t(this,s)),typeof n=="string"&&i[n]()})},e.fn.constrained_popover.Constructor=t,e.fn.constrained_popover.noConflict=function(){return e.fn.constrained_popover=n,this}}),timely.define("external_libs/bootstrap/dropdown",["jquery_timely"],function(e){function i(){e(t).remove(),e(n).each(function(t){var n=s(e(this));if(!n.hasClass("ai1ec-open"))return;n.trigger(t=e.Event("hide.bs.dropdown"));if(t.isDefaultPrevented())return;n.removeClass("ai1ec-open").trigger("hidden.bs.dropdown")})}function s(t){var n=t.attr("data-target");n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,""));var r=n&&e(n);return r&&r.length?r:t.parent()}var t=".ai1ec-dropdown-backdrop",n="[data-toggle=ai1ec-dropdown]",r=function(t){e(t).on("click.bs.dropdown",this.toggle)};r.prototype.toggle=function(t){var n=e(this);if(n.is(".ai1ec-disabled, :disabled"))return;var r=s(n),o=r.hasClass("ai1ec-open");i();if(!o){"ontouchstart"in document.documentElement&&!r.closest(".ai1ec-navbar-nav").length&&e('<div class="ai1ec-dropdown-backdrop"/>').insertAfter(e(this)).on("click",i),r.trigger(t=e.Event("show.bs.dropdown"));if(t.isDefaultPrevented())return;r.toggleClass("ai1ec-open").trigger("shown.bs.dropdown"),n.focus()}return!1},r.prototype.keydown=function(t){if(!/(38|40|27)/.test(t.keyCode))return;var r=e(this);t.preventDefault(),t.stopPropagation();if(r.is(".ai1ec-disabled, :disabled"))return;var i=s(r),o=i.hasClass("ai1ec-open");if(!o||o&&t.keyCode==27)return t.which==27&&i.find(n).focus(),r.click();var u=e("[role=menu] li:not(.ai1ec-divider):visible a",i);if(!u.length)return;var a=u.index(u.filter(":focus"));t.keyCode==38&&a>0&&a--,t.keyCode==40&&a<u.length-1&&a++,~a||(a=0),u.eq(a).focus()};var o=e.fn.dropdown;e.fn.dropdown=function(t){return this.each(function(){var n=e(this),i=n.data("bs.dropdown");i||n.data("bs.dropdown",i=new r(this)),typeof t=="string"&&i[t].call(n)})},e.fn.dropdown.Constructor=r,e.fn.dropdown.noConflict=function(){return e.fn.dropdown=o,this},e(document).on("click.bs.dropdown.data-api",i).on("click.bs.dropdown.data-api",".ai1ec-dropdown form",function(e){e.stopPropagation()}).on("click.bs.dropdown.data-api",n,r.prototype.toggle).on("keydown.bs.dropdown.data-api",n+", [role=menu]",r.prototype.keydown)}),timely.define("scripts/common_scripts/frontend/common_frontend",["jquery_timely","domReady","scripts/common_scripts/frontend/common_event_handlers","ai1ec_calendar","external_libs/modernizr","external_libs/bootstrap/tooltip","external_libs/constrained_popover","external_libs/bootstrap/dropdown"],function(e,t,n,r,i){var s=!1,o=function(){s=!0,e(document).on("mouseenter",".ai1ec-popup-trigger",n.handle_popover_over),e(document).on("mouseleave",".ai1ec-popup-trigger",n.handle_popover_out),e(document).on("mouseleave",".ai1ec-popup",n.handle_popover_self_out),e(document).on("mouseenter",".ai1ec-tooltip-trigger",n.handle_tooltip_over),e(document).on("mouseleave",".ai1ec-tooltip-trigger",n.handle_tooltip_out),e(document).on("mouseleave",".ai1ec-tooltip",n.handle_tooltip_self_out)},u=function(){t(function(){o()})},a=function(){return s};return{start:u,are_event_listeners_attached:a}}),timely.define("external_libs/select2",["jquery_timely"],function(e){(function(e){typeof e.fn.each2=="undefined"&&e.fn.extend({each2:function(t){var n=e([0]),r=-1,i=this.length;while(++r<i&&(n.context=n[0]=this[r])&&t.call(n[0],r,n)!==!1);return this}})})(e),function(e,t){function l(e,t){var n=0,r=t.length;for(;n<r;n+=1)if(c(e,t[n]))return n;return-1}function c(e,n){return e===n?!0:e===t||n===t?!1:e===null||n===null?!1:e.constructor===String?e===n+"":n.constructor===String?n===e+"":!1}function h(t,n){var r,i,s;if(t===null||t.length<1)return[];r=t.split(n);for(i=0,s=r.length;i<s;i+=1)r[i]=e.trim(r[i]);return r}function p(e){return e.outerWidth(!1)-e.width()}function d(n){var r="keyup-change-value";n.bind("keydown",function(){e.data(n,r)===t&&e.data(n,r,n.val())}),n.bind("keyup",function(){var i=e.data(n,r);i!==t&&n.val()!==i&&(e.removeData(n,r),n.trigger("keyup-change"))})}function v(n){n.bind("mousemove",function(n){var r=a;(r===t||r.x!==n.pageX||r.y!==n.pageY)&&e(n.target).trigger("mousemove-filtered",n)})}function m(e,n,r){r=r||t;var i;return function(){var t=arguments;window.clearTimeout(i),i=window.setTimeout(function(){n.apply(r,t)},e)}}function g(e){var t=!1,n;return function(){return t===!1&&(n=e(),t=!0),n}}function y(e,t){var n=m(e,function(e){t.trigger("scroll-debounced",e)});t.bind("scroll",function(e){l(e.target,t.get())>=0&&n(e)})}function b(e){if(e[0]===document.activeElement)return;window.setTimeout(function(){var t=e[0],n=e.val().length,r;e.focus(),t.setSelectionRange?t.setSelectionRange(n,n):t.createTextRange&&(r=t.createTextRange(),r.collapse(!0),r.moveEnd("character",n),r.moveStart("character",n),r.select())},0)}function w(e){e.preventDefault(),e.stopPropagation()}function E(e){e.preventDefault(),e.stopImmediatePropagation()}function S(t){if(!u){var n=t[0].currentStyle||window.getComputedStyle(t[0],null);u=e(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:n.fontSize,fontFamily:n.fontFamily,fontStyle:n.fontStyle,fontWeight:n.fontWeight,letterSpacing:n.letterSpacing,textTransform:n.textTransform,whiteSpace:"nowrap"}),u.attr("class","select2-sizer"),e("body").append(u)}return u.text(t.val()),u.width()}function x(t,n,r){var i,s=[],o;i=t.attr("class"),typeof i=="string"&&e(i.split(" ")).each2(function(){this.indexOf("select2-")===0&&s.push(this)}),i=n.attr("class"),typeof i=="string"&&e(i.split(" ")).each2(function(){this.indexOf("select2-")!==0&&(o=r(this),typeof o=="string"&&o.length>0&&s.push(this))}),t.attr("class",s.join(" "))}function T(e,t,n,r){var i=e.toUpperCase().indexOf(t.toUpperCase()),s=t.length;if(i<0){n.push(r(e));return}n.push(r(e.substring(0,i))),n.push("<span class='select2-match'>"),n.push(r(e.substring(i,i+s))),n.push("</span>"),n.push(r(e.substring(i+s,e.length)))}function N(t){var n,r=0,i=null,s=t.quietMillis||100,o=t.url,u=this;return function(a){window.clearTimeout(n),n=window.setTimeout(function(){r+=1;var n=r,s=t.data,f=o,l=t.transport||e.ajax,c=t.type||"GET",h={};s=s?s.call(u,a.term,a.page,a.context):null,f=typeof f=="function"?f.call(u,a.term,a.page,a.context):f,null!==i&&i.abort(),t.params&&(e.isFunction(t.params)?e.extend(h,t.params.call(u)):e.extend(h,t.params)),e.extend(h,{url:f,dataType:t.dataType,data:s,type:c,cache:!1,success:function(e){if(n<r)return;var i=t.results(e,a.page);a.callback(i)}}),i=l.call(u,h)},s)}}function C(t){var n=t,r,i,s=function(e){return""+e.text};e.isArray(n)&&(i=n,n={results:i}),e.isFunction(n)===!1&&(i=n,n=function(){return i});var o=n();return o.text&&(s=o.text,e.isFunction(s)||(r=n.text,s=function(e){return e[r]})),function(t){var r=t.term,i={results:[]},o;if(r===""){t.callback(n());return}o=function(n,i){var u,a;n=n[0];if(n.children){u={};for(a in n)n.hasOwnProperty(a)&&(u[a]=n[a]);u.children=[],e(n.children).each2(function(e,t){o(t,u.children)}),(u.children.length||t.matcher(r,s(u),n))&&i.push(u)}else t.matcher(r,s(n),n)&&i.push(n)},e(n().results).each2(function(e,t){o(t,i.results)}),t.callback(i)}}function k(n){var r=e.isFunction(n);return function(i){var s=i.term,o={results:[]};e(r?n():n).each(function(){var e=this.text!==t,n=e?this.text:this;(s===""||i.matcher(s,n))&&o.results.push(e?this:{id:this,text:this})}),i.callback(o)}}function L(t,n){if(e.isFunction(t))return!0;if(!t)return!1;throw new Error("formatterName must be a function or a falsy value")}function A(t){return e.isFunction(t)?t():t}function O(t){var n=0;return e.each(t,function(e,t){t.children?n+=O(t.children):n++}),n}function M(e,n,r,i){var s=e,o=!1,u,a,f,l,h;if(!i.createSearchChoice||!i.tokenSeparators||i.tokenSeparators.length<1)return t;for(;;){a=-1;for(f=0,l=i.tokenSeparators.length;f<l;f++){h=i.tokenSeparators[f],a=e.indexOf(h);if(a>=0)break}if(a<0)break;u=e.substring(0,a),e=e.substring(a+h.length);if(u.length>0){u=i.createSearchChoice(u,n);if(u!==t&&u!==null&&i.id(u)!==t&&i.id(u)!==null){o=!1;for(f=0,l=n.length;f<l;f++)if(c(i.id(u),i.id(n[f]))){o=!0;break}o||r(u)}}}if(s!==e)return e}function _(t,n){var r=function(){};return r.prototype=new t,r.prototype.constructor=r,r.prototype.parent=t.prototype,r.prototype=e.extend(r.prototype,n),r}var n,r,i,s,o,u,a,f;n={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(e){e=e.which?e.which:e;switch(e){case n.LEFT:case n.RIGHT:case n.UP:case n.DOWN:return!0}return!1},isControl:function(e){var t=e.which;switch(t){case n.SHIFT:case n.CTRL:case n.ALT:return!0}return e.metaKey?!0:!1},isFunctionKey:function(e){return e=e.which?e.which:e,e>=112&&e<=123}},f=e(document),o=function(){var e=1;return function(){return e++}}(),f.bind("mousemove",function(e){a={x:e.pageX,y:e.pageY}}),r=_(Object,{bind:function(e){var t=this;return function(){e.apply(t,arguments)}},init:function(n){var r,i,s=".select2-results",u;this.opts=n=this.prepareOpts(n),this.id=n.id,n.element.data("select2")!==t&&n.element.data("select2")!==null&&this.destroy(),this.enabled=!0,this.container=this.createContainer(),this.containerId="s2id_"+(n.element.attr("id")||"autogen"+o()),this.containerSelector="#"+this.containerId.replace(/([;&,\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.body=g(function(){return n.element.closest("body")}),x(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.css(A(n.containerCss)),this.container.addClass(A(n.containerCssClass)),this.elementTabIndex=this.opts.element.attr("tabIndex"),this.opts.element.data("select2",this).addClass("select2-offscreen").bind("focus.select2",function(){e(this).select2("focus")}).attr("tabIndex","-1").before(this.container),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),this.dropdown.addClass(A(n.dropdownCssClass)),this.dropdown.data("select2",this),this.results=r=this.container.find(s),this.search=i=this.container.find("input.select2-input"),i.attr("tabIndex",this.elementTabIndex),this.resultsPage=0,this.context=null,this.initContainer(),v(this.results),this.dropdown.delegate(s,"mousemove-filtered touchstart touchmove touchend",this.bind(this.highlightUnderEvent)),y(80,this.results),this.dropdown.delegate(s,"scroll-debounced",this.bind(this.loadMoreIfNeeded)),e.fn.mousewheel&&r.mousewheel(function(e,t,n,i){var s=r.scrollTop(),o;i>0&&s-i<=0?(r.scrollTop(0),w(e)):i<0&&r.get(0).scrollHeight-r.scrollTop()+i<=r.height()&&(r.scrollTop(r.get(0).scrollHeight-r.height()),w(e))}),d(i),i.bind("keyup-change input paste",this.bind(this.updateResults)),i.bind("focus",function(){i.addClass("select2-focused")}),i.bind("blur",function(){i.removeClass("select2-focused")}),this.dropdown.delegate(s,"mouseup",this.bind(function(t){e(t.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(t),this.selectHighlighted(t))})),this.dropdown.bind("click mouseup mousedown",function(e){e.stopPropagation()}),e.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),(n.element.is(":disabled")||n.element.is("[readonly='readonly']"))&&this.disable()},destroy:function(){var e=this.opts.element.data("select2");this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),e!==t&&(e.container.remove(),e.dropdown.remove(),e.opts.element.removeClass("select2-offscreen").removeData("select2").unbind(".select2").attr({tabIndex:this.elementTabIndex}).show())},prepareOpts:function(n){var r,i,s,o;r=n.element,r.get(0).tagName.toLowerCase()==="select"&&(this.select=i=n.element),i&&e.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in n)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.")}),n=e.extend({},{populateResults:function(r,i,s){var o,u,a,f,l=this.opts.id,c=this;o=function(r,i,u){var a,f,h,p,d,v,m,g,y,b;r=n.sortResults(r,i,s);for(a=0,f=r.length;a<f;a+=1)h=r[a],d=h.disabled===!0,p=!d&&l(h)!==t,v=h.children&&h.children.length>0,m=e("<li></li>"),m.addClass("select2-results-dept-"+u),m.addClass("select2-result"),m.addClass(p?"select2-result-selectable":"select2-result-unselectable"),d&&m.addClass("select2-disabled"),v&&m.addClass("select2-result-with-children"),m.addClass(c.opts.formatResultCssClass(h)),g=e(document.createElement("div")),g.addClass("select2-result-label"),b=n.formatResult(h,g,s,c.opts.escapeMarkup),b!==t&&g.html(b),m.append(g),v&&(y=e("<ul></ul>"),y.addClass("select2-result-sub"),o(h.children,y,u+1),m.append(y)),m.data("select2-data",h),i.append(m)},o(i,r,0)}},e.fn.select2.defaults,n),typeof n.id!="function"&&(s=n.id,n.id=function(e){return e[s]});if(e.isArray(n.element.data("select2Tags"))){if("tags"in n)throw"tags specified as both an attribute 'data-select2-tags' and in options of Select2 "+n.element.attr("id");n.tags=n.element.attr("data-select2-tags")}i?(n.query=this.bind(function(n){var i={results:[],more:!1},s=n.term,o,u,a;a=function(e,t){var r;e.is("option")?n.matcher(s,e.text(),e)&&t.push({id:e.attr("value"),text:e.text(),element:e.get(),css:e.attr("class"),disabled:c(e.attr("disabled"),"disabled")}):e.is("optgroup")&&(r={text:e.attr("label"),children:[],element:e.get(),css:e.attr("class")},e.children().each2(function(e,t){a(t,r.children)}),r.children.length>0&&t.push(r))},o=r.children(),this.getPlaceholder()!==t&&o.length>0&&(u=o[0],e(u).text()===""&&(o=o.not(u))),o.each2(function(e,t){a(t,i.results)}),n.callback(i)}),n.id=function(e){return e.id},n.formatResultCssClass=function(e){return e.css}):"query"in n||("ajax"in n?(o=n.element.data("ajax-url"),o&&o.length>0&&(n.ajax.url=o),n.query=N.call(n.element,n.ajax)):"data"in n?n.query=C(n.data):"tags"in n&&(n.query=k(n.tags),n.createSearchChoice===t&&(n.createSearchChoice=function(e){return{id:e,text:e}}),n.initSelection===t&&(n.initSelection=function(t,r){var i=[];e(h(t.val(),n.separator)).each(function(){var t=this,r=this,s=n.tags;e.isFunction(s)&&(s=s()),e(s).each(function(){if(c(this.id,t))return r=this.text,!1}),i.push({id:t,text:r})}),r(i)})));if(typeof n.query!="function")throw"query function not defined for Select2 "+n.element.attr("id");return n},monitorSource:function(){var e=this.opts.element,t;e.bind("change.select2",this.bind(function(e){this.opts.element.data("select2-change-triggered")!==!0&&this.initSelection()})),t=this.bind(function(){var e,t,n=this;e=this.opts.element.attr("disabled")!=="disabled",t=this.opts.element.attr("readonly")==="readonly",e=e&&!t,this.enabled!==e&&(e?this.enable():this.disable()),x(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.addClass(A(this.opts.containerCssClass)),x(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(A(this.opts.dropdownCssClass))}),e.bind("propertychange.select2 DOMAttrModified.select2",t),typeof WebKitMutationObserver!="undefined"&&(this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),this.propertyObserver=new WebKitMutationObserver(function(e){e.forEach(t)}),this.propertyObserver.observe(e.get(0),{attributes:!0,subtree:!1}))},triggerChange:function(t){t=t||{},t=e.extend({},t,{type:"change",val:this.val()}),this.opts.element.data("select2-change-triggered",!0),this.opts.element.trigger(t),this.opts.element.data("select2-change-triggered",!1),this.opts.element.click(),this.opts.blurOnChange&&this.opts.element.blur()},enable:function(){if(this.enabled)return;this.enabled=!0,this.container.removeClass("select2-container-disabled"),this.opts.element.removeAttr("disabled")},disable:function(){if(!this.enabled)return;this.close(),this.enabled=!1,this.container.addClass("select2-container-disabled"),this.opts.element.attr("disabled","disabled")},opened:function(){return this.container.hasClass("select2-dropdown-open")},positionDropdown:function(){var t=this.container.offset(),n=this.container.outerHeight(!1),r=this.container.outerWidth(!1),i=this.dropdown.outerHeight(!1),s=e(window).scrollLeft()+e(window).width(),o=e(window).scrollTop()+e(window).height(),u=t.top+n,a=t.left,f=u+i<=o,l=t.top-i>=this.body().scrollTop(),c=this.dropdown.outerWidth(!1),h=a+c<=s,p=this.dropdown.hasClass("select2-drop-above"),d,v,m;this.body().css("position")!=="static"&&(d=this.body().offset(),u-=d.top,a-=d.left),p?(v=!0,!l&&f&&(v=!1)):(v=!1,!f&&l&&(v=!0)),h||(a=t.left+r-c),v?(u=t.top-i,this.container.addClass("select2-drop-above"),this.dropdown.addClass("select2-drop-above")):(this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")),m=e.extend({top:u,left:a,width:r},A(this.opts.dropdownCss)),this.dropdown.css(m)},shouldOpen:function(){var t;return this.opened()?!1:(t=e.Event("opening"),this.opts.element.trigger(t),!t.isDefaultPrevented())},clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")},open:function(){return this.shouldOpen()?(window.setTimeout(this.bind(this.opening),1),!0):!1},opening:function(){var t=this.containerId,n="scroll."+t,r="resize."+t,i="orientationchange."+t,s;this.clearDropdownAlignmentPreference(),this.container.addClass("select2-dropdown-open").addClass("select2-container-active"),this.dropdown[0]!==this.body().children().last()[0]&&this.dropdown.detach().appendTo(this.body()),this.updateResults(!0),s=e("#select2-drop-mask"),s.length==0&&(s=e(document.createElement("div")),s.attr("id","select2-drop-mask").attr("class","select2-drop-mask"),s.hide(),s.appendTo(this.body()),s.bind("mousedown touchstart",function(t){var n=e("#select2-drop"),r;n.length>0&&(r=n.data("select2"),r.opts.selectOnBlur&&r.selectHighlighted({noFocus:!0}),r.close())})),this.dropdown.prev()[0]!==s[0]&&this.dropdown.before(s),e("#select2-drop").removeAttr("id"),this.dropdown.attr("id","select2-drop"),s.css({width:document.documentElement.scrollWidth,height:document.documentElement.scrollHeight}),s.show(),this.dropdown.show(),this.positionDropdown(),this.dropdown.addClass("select2-drop-active"),this.ensureHighlightVisible();var o=this;this.container.parents().add(window).each(function(){e(this).bind(r+" "+n+" "+i,function(t){e("#select2-drop-mask").css({width:document.documentElement.scrollWidth,height:document.documentElement.scrollHeight}),o.positionDropdown()})}),this.focusSearch()},close:function(){if(!this.opened())return;var t=this.containerId,n="scroll."+t,r="resize."+t,i="orientationchange."+t;this.container.parents().add(window).each(function(){e(this).unbind(n).unbind(r).unbind(i)}),this.clearDropdownAlignmentPreference(),e("#select2-drop-mask").hide(),this.dropdown.removeAttr("id"),this.dropdown.hide(),this.container.removeClass("select2-dropdown-open"),this.results.empty(),this.clearSearch(),this.opts.element.trigger(e.Event("close"))},clearSearch:function(){},getMaximumSelectionSize:function(){return A(this.opts.maximumSelectionSize)},ensureHighlightVisible:function(){var t=this.results,n,r,i,s,o,u,a;r=this.highlight();if(r<0)return;if(r==0){t.scrollTop(0);return}n=this.findHighlightableChoices(),i=e(n[r]),s=i.offset().top+i.outerHeight(!0),r===n.length-1&&(a=t.find("li.select2-more-results"),a.length>0&&(s=a.offset().top+a.outerHeight(!0))),o=t.offset().top+t.outerHeight(!0),s>o&&t.scrollTop(t.scrollTop()+(s-o)),u=i.offset().top-t.offset().top,u<0&&i.css("display")!="none"&&t.scrollTop(t.scrollTop()+u)},findHighlightableChoices:function(){var e=this.results.find(".select2-result-selectable:not(.select2-selected):not(.select2-disabled)");return this.results.find(".select2-result-selectable:not(.select2-selected):not(.select2-disabled)")},moveHighlight:function(t){var n=this.findHighlightableChoices(),r=this.highlight();while(r>-1&&r<n.length){r+=t;var i=e(n[r]);if(i.hasClass("select2-result-selectable")&&!i.hasClass("select2-disabled")&&!i.hasClass("select2-selected")){this.highlight(r);break}}},highlight:function(t){var n=this.findHighlightableChoices(),r,i;if(arguments.length===0)return l(n.filter(".select2-highlighted")[0],n.get());t>=n.length&&(t=n.length-1),t<0&&(t=0),this.results.find(".select2-highlighted").removeClass("select2-highlighted"),r=e(n[t]),r.addClass("select2-highlighted"),this.ensureHighlightVisible(),i=r.data("select2-data"),i&&this.opts.element.trigger({type:"highlight",val:this.id(i),choice:i})},countSelectableResults:function(){return this.findHighlightableChoices().length},highlightUnderEvent:function(t){var n=e(t.target).closest(".select2-result-selectable");if(n.length>0&&!n.is(".select2-highlighted")){var r=this.findHighlightableChoices();this.highlight(r.index(n))}else n.length==0&&this.results.find(".select2-highlighted").removeClass("select2-highlighted")},loadMoreIfNeeded:function(){var e=this.results,t=e.find("li.select2-more-results"),n,r=-1,i=this.resultsPage+1,s=this,o=this.search.val(),u=this.context;if(t.length===0)return;n=t.offset().top-e.offset().top-e.height(),n<=this.opts.loadMorePadding&&(t.addClass("select2-active"),this.opts.query({element:this.opts.element,term:o,page:i,context:u,matcher:this.opts.matcher,callback:this.bind(function(n){if(!s.opened())return;s.opts.populateResults.call(this,e,n.results,{term:o,page:i,context:u}),n.more===!0?(t.detach().appendTo(e).text(s.opts.formatLoadMore(i+1)),window.setTimeout(function(){s.loadMoreIfNeeded()},10)):t.remove(),s.positionDropdown(),s.resultsPage=i,s.context=n.context})}))},tokenize:function(){},updateResults:function(n){function f(){i.scrollTop(0),r.removeClass("select2-active"),u.positionDropdown()}function l(e){i.html(e),f()}var r=this.search,i=this.results,s=this.opts,o,u=this,a;if(n!==!0&&(this.showSearchInput===!1||!this.opened()))return;r.addClass("select2-active");var h=this.getMaximumSelectionSize();if(h>=1){o=this.data();if(e.isArray(o)&&o.length>=h&&L(s.formatSelectionTooBig,"formatSelectionTooBig")){l("<li class='select2-selection-limit'>"+s.formatSelectionTooBig(h)+"</li>");return}}if(r.val().length<s.minimumInputLength){L(s.formatInputTooShort,"formatInputTooShort")?l("<li class='select2-no-results'>"+s.formatInputTooShort(r.val(),s.minimumInputLength)+"</li>"):l("");return}s.formatSearching()&&n===!0&&l("<li class='select2-searching'>"+s.formatSearching()+"</li>");if(s.maximumInputLength&&r.val().length>s.maximumInputLength){L(s.formatInputTooLong,"formatInputTooLong")?l("<li class='select2-no-results'>"+s.formatInputTooLong(r.val(),s.maximumInputLength)+"</li>"):l("");return}a=this.tokenize(),a!=t&&a!=null&&r.val(a),this.resultsPage=1,s.query({element:s.element,term:r.val(),page:this.resultsPage,context:null,matcher:s.matcher,callback:this.bind(function(o){var a;if(!this.opened())return;this.context=o.context===t?null:o.context,this.opts.createSearchChoice&&r.val()!==""&&(a=this.opts.createSearchChoice.call(null,r.val(),o.results),a!==t&&a!==null&&u.id(a)!==t&&u.id(a)!==null&&e(o.results).filter(function(){return c(u.id(this),u.id(a))}).length===0&&o.results.unshift(a));if(o.results.length===0&&L(s.formatNoMatches,"formatNoMatches")){l("<li class='select2-no-results'>"+s.formatNoMatches(r.val())+"</li>");return}i.empty(),u.opts.populateResults.call(this,i,o.results,{term:r.val(),page:this.resultsPage,context:null}),o.more===!0&&L(s.formatLoadMore,"formatLoadMore")&&(i.append("<li class='select2-more-results'>"+u.opts.escapeMarkup(s.formatLoadMore(this.resultsPage))+"</li>"),window.setTimeout(function(){u.loadMoreIfNeeded()},10)),this.postprocessResults(o,n),f()})})},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0}),this.close(),this.container.removeClass("select2-container-active"),this.search[0]===document.activeElement&&this.search.blur(),this.clearSearch(),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){b(this.search)},selectHighlighted:function(e){var t=this.highlight(),n=this.results.find(".select2-highlighted"),r=n.closest(".select2-result").data("select2-data");r&&(this.highlight(t),this.onSelect(r,e))},getPlaceholder:function(){return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder},initContainerWidth:function(){function n(){var n,r,i,s,o;if(this.opts.width==="off")return null;if(this.opts.width==="element")return this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px";if(this.opts.width==="copy"||this.opts.width==="resolve"){n=this.opts.element.attr("style");if(n!==t){r=n.split(";");for(s=0,o=r.length;s<o;s+=1){i=r[s].replace(/\s/g,"").match(/width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/);if(i!==null&&i.length>=1)return i[1]}}return this.opts.width==="resolve"?(n=this.opts.element.css("width"),n.indexOf("%")>0?n:this.opts.element.outerWidth(!1)===0?"auto":this.opts.element.outerWidth(!1)+"px"):null}return e.isFunction(this.opts.width)?this.opts.width():this.opts.width}var r=n.call(this);r!==null&&this.container.css("width",r)}}),i=_(r,{createContainer:function(){var t=e(document.createElement("div")).attr({"class":"select2-container"}).html(["<a href='javascript:void(0)' onclick='return false;' class='select2-choice' tabindex='-1'>"," <span></span><abbr class='select2-search-choice-close' style='display:none;'></abbr>"," <div><b></b></div>","</a>","<input class='select2-focusser select2-offscreen' type='text'/>","<div class='select2-drop' style='display:none'>"," <div class='select2-search'>"," <input type='text' autocomplete='off' class='select2-input'/>"," </div>"," <ul class='select2-results'>"," </ul>","</div>"].join(""));return t},disable:function(){if(!this.enabled)return;this.parent.disable.apply(this,arguments),this.focusser.attr("disabled","disabled")},enable:function(){if(this.enabled)return;this.parent.enable.apply(this,arguments),this.focusser.removeAttr("disabled")},opening:function(){this.parent.opening.apply(this,arguments),this.focusser.attr("disabled","disabled"),this.opts.element.trigger(e.Event("open"))},close:function(){if(!this.opened())return;this.parent.close.apply(this,arguments),this.focusser.removeAttr("disabled"),b(this.focusser)},focus:function(){this.opened()?this.close():(this.focusser.removeAttr("disabled"),this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.removeAttr("disabled"),this.focusser.focus()},initContainer:function(){var e,t=this.container,r=this.dropdown,i=!1;this.showSearch(this.opts.minimumResultsForSearch>=0),this.selection=e=t.find(".select2-choice"),this.focusser=t.find(".select2-focusser"),this.search.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.PAGE_UP||e.which===n.PAGE_DOWN){w(e);return}switch(e.which){case n.UP:case n.DOWN:this.moveHighlight(e.which===n.UP?-1:1),w(e);return;case n.TAB:case n.ENTER:this.selectHighlighted(),w(e);return;case n.ESC:this.cancel(e),w(e);return}})),this.focusser.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.TAB||n.isControl(e)||n.isFunctionKey(e)||e.which===n.ESC)return;if(this.opts.openOnEnter===!1&&e.which===n.ENTER){w(e);return}if(e.which==n.DOWN||e.which==n.UP||e.which==n.ENTER&&this.opts.openOnEnter){this.open(),w(e);return}if(e.which==n.DELETE||e.which==n.BACKSPACE){this.opts.allowClear&&this.clear(),w(e);return}})),d(this.focusser),this.focusser.bind("keyup-change input",this.bind(function(e){if(this.opened())return;this.open(),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.focusser.val(""),w(e)})),e.delegate("abbr","mousedown",this.bind(function(e){if(!this.enabled)return;this.clear(),E(e),this.close(),this.selection.focus()})),e.bind("mousedown",this.bind(function(e){i=!0,this.opened()?this.close():this.enabled&&this.open(),w(e),i=!1})),r.bind("mousedown",this.bind(function(){this.search.focus()})),e.bind("focus",this.bind(function(e){w(e)})),this.focusser.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})).bind("blur",this.bind(function(){this.opened()||this.container.removeClass("select2-container-active")})),this.search.bind("focus",this.bind(function(){this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.setPlaceholder()},clear:function(){var e=this.selection.data("select2-data");this.opts.element.val(""),this.selection.find("span").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),this.opts.element.trigger({type:"removed",val:this.id(e),choice:e}),this.triggerChange({removed:e})},initSelection:function(){var e;if(this.opts.element.val()===""&&this.opts.element.text()==="")this.close(),this.setPlaceholder();else{var n=this;this.opts.initSelection.call(null,this.opts.element,function(e){e!==t&&e!==null&&(n.updateSelection(e),n.close(),n.setPlaceholder())})}},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments);return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(t,n){var r=t.find(":selected");e.isFunction(n)&&n({id:r.attr("value"),text:r.text(),element:r})}:"data"in t&&(t.initSelection=t.initSelection||function(n,r){var i=n.val();t.query({matcher:function(e,n,r){return c(i,t.id(r))},callback:e.isFunction(r)?function(e){r(e.results.length?e.results[0]:null)}:e.noop})}),t},getPlaceholder:function(){return this.select&&this.select.find("option").first().text()!==""?t:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var e=this.getPlaceholder();if(this.opts.element.val()===""&&e!==t){if(this.select&&this.select.find("option:first").text()!=="")return;this.selection.find("span").html(this.opts.escapeMarkup(e)),this.selection.addClass("select2-default"),this.selection.find("abbr").hide()}},postprocessResults:function(e,t){var n=0,r=this,i=!0;this.findHighlightableChoices().each2(function(e,t){if(c(r.id(t.data("select2-data")),r.opts.element.val()))return n=e,!1}),this.highlight(n);if(t===!0){var s=this.opts.minimumResultsForSearch;i=s<0?!1:O(e.results)>=s,this.showSearch(i)}},showSearch:function(t){this.showSearchInput=t,this.dropdown.find(".select2-search")[t?"removeClass":"addClass"]("select2-search-hidden"),e(this.dropdown,this.container)[t?"addClass":"removeClass"]("select2-with-searchbox")},onSelect:function(e,t){var n=this.opts.element.val();this.opts.element.val(this.id(e)),this.updateSelection(e),this.opts.element.trigger({type:"selected",val:this.id(e),choice:e}),this.close(),(!t||!t.noFocus)&&this.selection.focus(),c(n,this.id(e))||this.triggerChange()},updateSelection:function(e){var n=this.selection.find("span"),r;this.selection.data("select2-data",e),n.empty(),r=this.opts.formatSelection(e,n),r!==t&&n.append(this.opts.escapeMarkup(r)),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==t&&this.selection.find("abbr").show()},val:function(){var e,n=!1,r=null,i=this;if(arguments.length===0)return this.opts.element.val();e=arguments[0],arguments.length>1&&(n=arguments[1]);if(this.select)this.select.val(e).find(":selected").each2(function(e,t){return r={id:t.attr("value"),text:t.text()},!1}),this.updateSelection(r),this.setPlaceholder(),n&&this.triggerChange();else{if(this.opts.initSelection===t)throw new Error("cannot call val() if initSelection() is not defined");if(!e&&e!==0){this.clear(),n&&this.triggerChange();return}this.opts.element.val(e),this.opts.initSelection(this.opts.element,function(e){i.opts.element.val(e?i.id(e):""),i.updateSelection(e),i.setPlaceholder(),n&&i.triggerChange()})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(e){var n;if(arguments.length===0)return n=this.selection.data("select2-data"),n==t&&(n=null),n;!e||e===""?this.clear():(this.opts.element.val(e?this.id(e):""),this.updateSelection(e))}}),s=_(r,{createContainer:function(){var t=e(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html([" <ul class='select2-choices'>"," <li class='select2-search-field'>"," <input type='text' autocomplete='off' class='select2-input'>"," </li>","</ul>","<div class='select2-drop select2-drop-multi' style='display:none;'>"," <ul class='select2-results'>"," </ul>","</div>"].join(""));return t},prepareOpts:function(){var t=this.parent.prepareOpts.apply(this,arguments);return t.element.get(0).tagName.toLowerCase()==="select"?t.initSelection=function(e,t){var n=[];e.find(":selected").each2(function(e,t){n.push({id:t.attr("value"),text:t.text(),element:t[0]})}),t(n)}:"data"in t&&(t.initSelection=t.initSelection||function(n,r){var i=h(n.val(),t.separator);t.query({matcher:function(n,r,s){return e.grep(i,function(e){return c(e,t.id(s))}).length},callback:e.isFunction(r)?function(e){r(e.results)}:e.noop})}),t},initContainer:function(){var t=".select2-choices",r;this.searchContainer=this.container.find(".select2-search-field"),this.selection=r=this.container.find(t),this.search.bind("input paste",this.bind(function(){if(!this.enabled)return;this.opened()||this.open()})),this.search.bind("keydown",this.bind(function(e){if(!this.enabled)return;if(e.which===n.BACKSPACE&&this.search.val()===""){this.close();var t,i=r.find(".select2-search-choice-focus");if(i.length>0){this.unselect(i.first()),this.search.width(10),w(e);return}t=r.find(".select2-search-choice:not(.select2-locked)"),t.length>0&&t.last().addClass("select2-search-choice-focus")}else r.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus");if(this.opened())switch(e.which){case n.UP:case n.DOWN:this.moveHighlight(e.which===n.UP?-1:1),w(e);return;case n.ENTER:case n.TAB:this.selectHighlighted(),w(e);return;case n.ESC:this.cancel(e),w(e);return}if(e.which===n.TAB||n.isControl(e)||n.isFunctionKey(e)||e.which===n.BACKSPACE||e.which===n.ESC)return;if(e.which===n.ENTER){if(this.opts.openOnEnter===!1)return;if(e.altKey||e.ctrlKey||e.shiftKey||e.metaKey)return}this.open(),(e.which===n.PAGE_UP||e.which===n.PAGE_DOWN)&&w(e)})),this.search.bind("keyup",this.bind(this.resizeSearch)),this.search.bind("blur",this.bind(function(e){this.container.removeClass("select2-container-active"),this.search.removeClass("select2-focused"),this.opened()||this.clearSearch(),e.stopImmediatePropagation()})),this.container.delegate(t,"mousedown",this.bind(function(t){if(!this.enabled)return;if(e(t.target).closest(".select2-search-choice").length>0)return;this.clearPlaceholder(),this.open(),this.focusSearch(),t.preventDefault()})),this.container.delegate(t,"focus",this.bind(function(){if(!this.enabled)return;this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder()})),this.initContainerWidth(),this.clearSearch()},enable:function(){if(this.enabled)return;this.parent.enable.apply(this,arguments),this.search.removeAttr("disabled")},disable:function(){if(!this.enabled)return;this.parent.disable.apply(this,arguments),this.search.attr("disabled",!0)},initSelection:function(){var e;this.opts.element.val()===""&&this.opts.element.text()===""&&(this.updateSelection([]),this.close(),this.clearSearch());if(this.select||this.opts.element.val()!==""){var n=this;this.opts.initSelection.call(null,this.opts.element,function(e){e!==t&&e!==null&&(n.updateSelection(e),n.close(),n.clearSearch())})}},clearSearch:function(){var e=this.getPlaceholder();e!==t&&this.getVal().length===0&&this.search.hasClass("select2-focused")===!1?(this.search.val(e).addClass("select2-default"),this.resizeSearch()):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.parent.opening.apply(this,arguments),this.clearPlaceholder(),this.resizeSearch(),this.focusSearch(),this.opts.element.trigger(e.Event("open"))},close:function(){if(!this.opened())return;this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus(),this.opts.element.triggerHandler("focus")},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(t){var n=[],r=[],i=this;e(t).each(function(){l(i.id(this),n)<0&&(n.push(i.id(this)),r.push(this))}),t=r,this.selection.find(".select2-search-choice").remove(),e(t).each(function(){i.addSelectedChoice(this)}),i.postprocessResults()},tokenize:function(){var e=this.search.val();e=this.opts.tokenizer(e,this.data(),this.bind(this.onSelect),this.opts),e!=null&&e!=t&&(this.search.val(e),e.length>0&&this.open())},onSelect:function(e,t){this.addSelectedChoice(e),this.opts.element.trigger({type:"selected",val:this.id(e),choice:e}),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.val().length>=this.getMaximumSelectionSize()&&this.updateResults(!0),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:e}),(!t||!t.noFocus)&&this.focusSearch()},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(n){var r=!n.locked,i=e("<li class='select2-search-choice'> <div></div> <a href='#' onclick='return false;' class='select2-search-choice-close' tabindex='-1'></a></li>"),s=e("<li class='select2-search-choice select2-locked'><div></div></li>"),o=r?i:s,u=this.id(n),a=this.getVal(),f;f=this.opts.formatSelection(n,o.find("div")),f!=t&&o.find("div").replaceWith("<div>"+this.opts.escapeMarkup(f)+"</div>"),r&&o.find(".select2-search-choice-close").bind("mousedown",w).bind("click dblclick",this.bind(function(t){if(!this.enabled)return;e(t.target).closest(".select2-search-choice").fadeOut("fast",this.bind(function(){this.unselect(e(t.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),this.close(),this.focusSearch()})).dequeue(),w(t)})).bind("focus",this.bind(function(){if(!this.enabled)return;this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active")})),o.data("select2-data",n),o.insertBefore(this.searchContainer),a.push(u),this.setVal(a)},unselect:function(e){var t=this.getVal(),n,r;e=e.closest(".select2-search-choice");if(e.length===0)throw"Invalid argument: "+e+". Must be .select2-search-choice";n=e.data("select2-data");if(!n)return;r=l(this.id(n).toString(),t),r>=0&&(t.splice(r,1),this.setVal(t),this.select&&this.postprocessResults()),e.remove(),this.opts.element.trigger({type:"removed",val:this.id(n),choice:n}),this.triggerChange({removed:n})},postprocessResults:function(){var e=this.getVal(),t=this.results.find(".select2-result"),n=this.results.find(".select2-result-with-children"),r=this;t.each2(function(t,n){var i=r.id(n.data("select2-data"));l(i,e)>=0&&(n.addClass("select2-selected"),n.find(".select2-result-selectable").addClass("select2-selected"))}),n.each2(function(e,t){!t.is(".select2-result-selectable")&&t.find(".select2-result-selectable:not(.select2-selected)").length===0&&t.addClass("select2-selected")}),this.highlight()==-1&&r.highlight(0)},resizeSearch:function(){var e,t,n,r,i,s=p(this.search);e=S(this.search)+10,t=this.search.offset().left,n=this.selection.width(),r=this.selection.offset().left,i=n-(t-r)-s,i<e&&(i=n-s),i<40&&(i=n-s),i<=0&&(i=e),this.search.width(i)},getVal:function(){var e;return this.select?(e=this.select.val(),e===null?[]:e):(e=this.opts.element.val(),h(e,this.opts.separator))},setVal:function(t){var n;this.select?this.select.val(t):(n=[],e(t).each(function(){l(this,n)<0&&n.push(this)}),this.opts.element.val(n.length===0?"":n.join(this.opts.separator)))},val:function(){var n,r=!1,i=[],s=this;if(arguments.length===0)return this.getVal();n=arguments[0],arguments.length>1&&(r=arguments[1]);if(!n&&n!==0){this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),r&&this.triggerChange();return}this.setVal(n);if(this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),r&&this.triggerChange();else{if(this.opts.initSelection===t)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(t){var n=e(t).map(s.id);s.setVal(n),s.updateSelection(t),s.clearSearch(),r&&s.triggerChange()})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var t=[],n=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){t.push(n.opts.id(e(this).data("select2-data")))}),this.setVal(t),this.triggerChange()},data:function(t){var n=this,r;if(arguments.length===0)return this.selection.find(".select2-search-choice").map(function(){return e(this).data("select2-data")}).get();t||(t=[]),r=e.map(t,function(e){return n.opts.id(e)}),this.setVal(r),this.updateSelection(t),this.clearSearch()}}),e.fn.select2=function(){var n=Array.prototype.slice.call(arguments,0),r,o,u,a,f=["val","destroy","opened","open","close","focus","isFocused","container","onSortStart","onSortEnd","enable","disable","positionDropdown","data"];return this.each(function(){if(n.length===0||typeof n[0]=="object")r=n.length===0?{}:e.extend({},n[0]),r.element=e(this),r.element.get(0).tagName.toLowerCase()==="select"?a=r.element.attr("multiple"):(a=r.multiple||!1,"tags"in r&&(r.multiple=a=!0)),o=a?new s:new i,o.init(r);else{if(typeof n[0]!="string")throw"Invalid arguments to select2 plugin: "+n;if(l(n[0],f)<0)throw"Unknown method: "+n[0];u=t,o=e(this).data("select2");if(o===t)return;n[0]==="container"?u=o.container:u=o[n[0]].apply(o,n.slice(1));if(u!==t)return!1}}),u===t?this:u},e.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(e,t,n,r){var i=[];return T(e.text,n.term,i,r),i.join("")},formatSelection:function(e,n){return e?e.text:t},sortResults:function(e,t,n){return e},formatResultCssClass:function(e){return t},formatNoMatches:function(){return"No matches found"},formatInputTooShort:function(e,t){var n=t-e.length;return"Please enter "+n+" more character"+(n==1?"":"s")},formatInputTooLong:function(e,t){var n=e.length-t;return"Please enter "+n+" less character"+(n==1?"":"s")},formatSelectionTooBig:function(e){return"You can only select "+e+" item"+(e==1?"":"s")},formatLoadMore:function(e){return"Loading more results..."},formatSearching:function(){return"Searching..."},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(e){return e.id},matcher:function(e,t){return t.toUpperCase().indexOf(e.toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:M,escapeMarkup:function(e){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&apos;","/":"&#47;"};return String(e).replace(/[&<>"'/\\]/g,function(e){return t[e[0]]})},blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(e){return e},adaptDropdownCssClass:function(e){return null}}}(e)}),timely.define("libs/select2_multiselect_helper",["jquery_timely","external_libs/select2"],function(e){var t=function(t){var n=e(t.element),r=n.data("color"),i=n.data("description"),s="";return typeof r!="undefined"&&r!==""&&(s+='<span class="ai1ec-color-swatch" style="background: '+n.data("color")+'"></span> '),s+=t.text,s='<span title="'+i+'">'+s+"</span>",s},n=function(t){var n=e(t.element),r=n.data("color"),i=n.data("description"),s="";return typeof r!="undefined"&&r!==""?s+='<span class="ai1ec-color-swatch" style="background: '+n.data("color")+'"></span> ':s+='<span class="ai1ec-color-swatch-empty"></span> ',s+=t.text,s='<span title="'+i+'">'+s+"</span>",s},r=function(r){typeof r=="undefined"&&(r=e(document)),e(".ai1ec-select2-multiselect-selector",r).select2({allowClear:!0,formatResult:n,formatSelection:t,escapeMarkup:function(e){return e}})},i=function(t){e(".ai1ec-select2-multiselect-selector.select2-container",t).each(function(){e(this).data("select2").resizeSearch()})};return{init:r,refresh:i}});var Twig=function(e){return e.VERSION="0.7.2",e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}function n(t,n){var r,i,s="/",o=[],u;if(t.url)typeof t.base!="undefined"?r=t.base+(t.base.charAt(t.base.length-1)==="/"?"":"/"):r=t.url;else{if(!t.path)throw new e.Error("Cannot extend an inline template.");var a=require("path"),f=a.sep||s,l=new RegExp("^\\.{1,2}"+f.replace("\\","\\\\"));n=n.replace(/\//g,f),t.base!==undefined&&n.match(l)==null?(n=n.replace(t.base,""),r=t.base+f):r=t.path,r=r.replace(f+f,f),s=f}i=r.split(s),i.pop(),i=i.concat(n.split(s));while(i.length>0)u=i.shift(),u!="."&&(u==".."&&o.length>0&&o[o.length-1]!=".."?o.pop():o.push(u));return o.join(s)}return e.trace=!1,e.debug=!1,e.cache=!0,e.placeholders={parent:"{{|PARENT|}}"},e.indexOf=function(e,t){if(Array.prototype.hasOwnProperty("indexOf"))return e.indexOf(t);if(e===void 0||e===null)throw new TypeError;var n=Object(e),r=n.length>>>0;if(r===0)return-1;var i=0;arguments.length>0&&(i=Number(arguments[1]),i!==i?i=0:i!==0&&i!==Infinity&&i!==-Infinity&&(i=(i>0||-1)*Math.floor(Math.abs(i))));if(i>=r)return-1;var s=i>=0?i:Math.max(r-Math.abs(i),0);for(;s<r;s++)if(s in n&&n[s]===t)return s;return e==t?0:-1},e.forEach=function(e,t,n){if(Array.prototype.forEach)return e.forEach(t,n);var r,i;if(e==null)throw new TypeError(" this is null or not defined");var s=Object(e),o=s.length>>>0;if({}.toString.call(t)!="[object Function]")throw new TypeError(t+" is not a function");n&&(r=n),i=0;while(i<o){var u;i in s&&(u=s[i],t.call(r,u,i,s)),i++}},e.Error=function(e){this.message=e,this.name="TwigException",this.type="TwigException"},e.Error.prototype.toString=function(){var e=this.name+": "+this.message;return e},e.log={trace:function(){e.trace&&console&&console.log(Array.prototype.slice.call(arguments))},debug:function(){e.debug&&console&&console.log(Array.prototype.slice.call(arguments))}},typeof console!="undefined"&&typeof console.log!="undefined"?e.log.error=function(){console.log.apply(console,arguments)}:e.log.error=function(){},e.token={},e.token.type={output:"output",logic:"logic",comment:"comment",raw:"raw"},e.token.definitions=[{type:e.token.type.raw,open:"{% raw %}",close:"{% endraw %}"},{type:e.token.type.output,open:"{{",close:"}}"},{type:e.token.type.logic,open:"{%",close:"%}"},{type:e.token.type.comment,open:"{#",close:"#}"}],e.token.strings=['"',"'"],e.token.findStart=function(t){var n={position:null,def:null},r,i,s;for(r=0;r<e.token.definitions.length;r++)i=e.token.definitions[r],s=t.indexOf(i.open),e.log.trace("Twig.token.findStart: ","Searching for ",i.open," found at ",s),s>=0&&(n.position===null||s<n.position)&&(n.position=s,n.def=i);return n},e.token.findEnd=function(t,n,r){var i=null,s=!1,o=0,u=null,a=null,f=null,l=null,c=null,h=null,p,d;while(!s){u=null,a=null,f=t.indexOf(n.close,o);if(!(f>=0))throw new e.Error("Unable to find closing bracket '"+n.close+"'"+" opened near template position "+r);i=f,s=!0;if(n.type===e.token.type.comment)break;d=e.token.strings.length;for(p=0;p<d;p+=1)c=t.indexOf(e.token.strings[p],o),c>0&&c<f&&(u===null||c<u)&&(u=c,a=e.token.strings[p]);if(u!==null){l=u+1,i=null,s=!1;for(;;){h=t.indexOf(a,l);if(h<0)throw"Unclosed string in template";if(t.substr(h-1,1)!=="\\"){o=h+1;break}l=h+1}}}return i},e.tokenize=function(t){var n=[],r=0,i=null,s=null;while(t.length>0)i=e.token.findStart(t),e.log.trace("Twig.tokenize: ","Found token: ",i),i.position!==null?(i.position>0&&n.push({type:e.token.type.raw,value:t.substring(0,i.position)}),t=t.substr(i.position+i.def.open.length),r+=i.position+i.def.open.length,s=e.token.findEnd(t,i.def,r),e.log.trace("Twig.tokenize: ","Token ends at ",s),n.push({type:i.def.type,value:t.substring(0,s).trim()}),i.def.type==="logic"&&t.substr(s+i.def.close.length,1)==="\n"&&(s+=1),t=t.substr(s+i.def.close.length),r+=s+i.def.close.length):(n.push({type:e.token.type.raw,value:t}),t="");return n},e.compile=function(t){try{var n=[],r=[],i=[],s=null,o=null,u=null,a=null,f=null,l=null,c=null,h=null,p=null;while(t.length>0){s=t.shift(),e.log.trace("Compiling token ",s);switch(s.type){case e.token.type.raw:r.length>0?i.push(s):n.push(s);break;case e.token.type.logic:o=e.logic.compile.apply(this,[s]),c=o.type,h=e.logic.handler[c].open,p=e.logic.handler[c].next,e.log.trace("Twig.compile: ","Compiled logic token to ",o," next is: ",p," open is : ",h);if(h!==undefined&&!h){a=r.pop(),f=e.logic.handler[a.type];if(e.indexOf(f.next,c)<0)throw new Error(c+" not expected after a "+a.type);a.output=a.output||[],a.output=a.output.concat(i),i=[],l={type:e.token.type.logic,token:a},r.length>0?i.push(l):n.push(l)}p!==undefined&&p.length>0?(e.log.trace("Twig.compile: ","Pushing ",o," to logic stack."),r.length>0&&(a=r.pop(),a.output=a.output||[],a.output=a.output.concat(i),r.push(a),i=[]),r.push(o)):h!==undefined&&h&&(l={type:e.token.type.logic,token:o},r.length>0?i.push(l):n.push(l));break;case e.token.type.comment:break;case e.token.type.output:e.expression.compile.apply(this,[s]),r.length>0?i.push(s):n.push(s)}e.log.trace("Twig.compile: "," Output: ",n," Logic Stack: ",r," Pending Output: ",i)}if(r.length>0)throw u=r.pop(),new Error("Unable to find an end tag for "+u.type+", expecting one of "+u.next);return n}catch(d){e.log.error("Error compiling twig template "+this.id+": "),d.stack?e.log.error(d.stack):e.log.error(d.toString());if(this.options.rethrow)throw d}},e.parse=function(t,n){try{var r=[],i=!0,s=this;return n=n||{},e.forEach(t,function(o){e.log.debug("Twig.parse: ","Parsing token: ",o);switch(o.type){case e.token.type.raw:r.push(o.value);break;case e.token.type.logic:var u=o.token,a=e.logic.parse.apply(s,[u,n,i]);a.chain!==undefined&&(i=a.chain),a.context!==undefined&&(n=a.context),a.output!==undefined&&r.push(a.output);break;case e.token.type.comment:break;case e.token.type.output:e.log.debug("Twig.parse: ","Output token: ",o.stack),r.push(e.expression.parse.apply(s,[o.stack,n]))}}),r.join("")}catch(o){e.log.error("Error parsing twig template "+this.id+": "),o.stack?e.log.error(o.stack):e.log.error(o.toString());if(this.options.rethrow)throw o;if(e.debug)return o.toString()}},e.prepare=function(t){var n,r;return e.log.debug("Twig.prepare: ","Tokenizing ",t),r=e.tokenize.apply(this,[t]),e.log.debug("Twig.prepare: ","Compiling ",r),n=e.compile.apply(this,[r]),e.log.debug("Twig.prepare: ","Compiled ",n),n},e.Templates={registry:{}},e.validateId=function(t){if(t==="prototype")throw new e.Error(t+" is not a valid twig identifier");if(e.Templates.registry.hasOwnProperty(t))throw new e.Error("There is already a template with the ID "+t);return!0},e.Templates.save=function(t){if(t.id===undefined)throw new e.Error("Unable to save template with no id");e.Templates.registry[t.id]=t},e.Templates.load=function(t){return e.Templates.registry.hasOwnProperty(t)?e.Templates.registry[t]:null},e.Templates.loadRemote=function(t,n,r,i){var s=n.id,o=n.method,u=n.async,a=n.precompiled,f=null;u===undefined&&(u=!0),s===undefined&&(s=t),n.id=s;if(e.cache&&e.Templates.registry.hasOwnProperty(s))return r&&r(e.Templates.registry[s]),e.Templates.registry[s];if(o=="ajax"){if(typeof XMLHttpRequest=="undefined")throw new e.Error("Unsupported platform: Unable to do remote requests because there is no XMLHTTPRequest implementation");var l=new XMLHttpRequest;l.onreadystatechange=function(){var s=null;l.readyState==4&&(l.status==200?(e.log.debug("Got template ",l.responseText),a===!0?s=JSON.parse(l.responseText):s=l.responseText,n.url=t,n.data=s,f=new e.Template(n),r&&r(f)):i&&i(l))},l.open("GET",t,u),l.send()}else(function(){var s=require("fs"),o=require("path"),l=null,c=function(s,o){if(s){i&&i(s);return}a===!0&&(o=JSON.parse(o)),n.data=o,n.path=t,f=new e.Template(n),r&&r(f)};if(u===!0)s.stat(t,function(n,r){if(n||!r.isFile())throw new e.Error("Unable to find template file "+t);s.readFile(t,"utf8",c)});else{if(!s.statSync(t).isFile())throw new e.Error("Unable to find template file "+t);l=s.readFileSync(t,"utf8"),c(undefined,l)}})();return u===!1?f:!0},e.Template=function(n){var r=n.data,i=n.id,s=n.blocks,o=n.macros||{},u=n.base,a=n.path,f=n.url,l=n.options;this.id=i,this.base=u,this.path=a,this.url=f,this.macros=o,this.options=l,this.reset(s),t("String",r)?this.tokens=e.prepare.apply(this,[r]):this.tokens=r,i!==undefined&&e.Templates.save(this)},e.Template.prototype.reset=function(t){e.log.debug("Twig.Template.reset","Reseting template "+this.id),this.blocks={},this.child={blocks:t||{}},this.extend=null},e.Template.prototype.render=function(t,r){r=r||{};var i,s;this.context=t||{},this.reset(),r.blocks&&(this.blocks=r.blocks),r.macros&&(this.macros=r.macros),i=e.parse.apply(this,[this.tokens,this.context]);if(this.extend){var o;return this.options.allowInlineIncludes&&(o=e.Templates.load(this.extend),o&&(o.options=this.options)),o||(s=n(this,this.extend),o=e.Templates.loadRemote(s,{method:this.url?"ajax":"fs",base:this.base,async:!1,id:s,options:this.options})),this.parent=o,this.parent.render(this.context,{blocks:this.blocks})}return r.output=="blocks"?this.blocks:r.output=="macros"?this.macros:i},e.Template.prototype.importFile=function(t){var r,i;if(!this.url&&!this.path&&this.options.allowInlineIncludes){i=e.Templates.load(t),i.options=this.options;if(i)return i;throw new e.Error("Didn't find the inline template by id")}return r=n(this,t),i=e.Templates.loadRemote(r,{method:this.url?"ajax":"fs",base:this.base,async:!1,options:this.options,id:r}),i},e.Template.prototype.importBlocks=function(t,n){var r=this.importFile(t),i=this.context,s=this,o;n=n||!1,r.render(i),e.forEach(Object.keys(r.blocks),function(e){if(n||s.blocks[e]===undefined)s.blocks[e]=r.blocks[e]})},e.Template.prototype.importMacros=function(t){var r=n(this,t),i=e.Templates.loadRemote(r,{method:this.url?"ajax":"fs",async:!1,id:r});return i},e.Template.prototype.compile=function(t){return e.compiler.compile(this,t)},e}(Twig||{});(function(){String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),Object.keys||(Object.keys=function(e){if(e!==Object(e))throw new TypeError("Object.keys called on non-object");var t=[],n;for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t})})();var Twig=function(e){e.lib={};var t=function(){function e(e){return Object.prototype.toString.call(e).slice(8,-1).toLowerCase()}function n(e,t){for(var n=[];t>0;n[--t]=e);return n.join("")}var r=function(){return r.cache.hasOwnProperty(arguments[0])||(r.cache[arguments[0]]=r.parse(arguments[0])),r.format.call(null,r.cache[arguments[0]],arguments)};return r.format=function(r,i){var s=1,o=r.length,u="",a,f=[],l,c,h,p,d,v;for(l=0;l<o;l++){u=e(r[l]);if(u==="string")f.push(r[l]);else if(u==="array"){h=r[l];if(h[2]){a=i[s];for(c=0;c<h[2].length;c++){if(!a.hasOwnProperty(h[2][c]))throw t('[sprintf] property "%s" does not exist',h[2][c]);a=a[h[2][c]]}}else h[1]?a=i[h[1]]:a=i[s++];if(/[^s]/.test(h[8])&&e(a)!="number")throw t("[sprintf] expecting number but found %s",e(a));switch(h[8]){case"b":a=a.toString(2);break;case"c":a=String.fromCharCode(a);break;case"d":a=parseInt(a,10);break;case"e":a=h[7]?a.toExponential(h[7]):a.toExponential();break;case"f":a=h[7]?parseFloat(a).toFixed(h[7]):parseFloat(a);break;case"o":a=a.toString(8);break;case"s":a=(a=String(a))&&h[7]?a.substring(0,h[7]):a;break;case"u":a=Math.abs(a);break;case"x":a=a.toString(16);break;case"X":a=a.toString(16).toUpperCase()}a=/[def]/.test(h[8])&&h[3]&&a>=0?"+"+a:a,d=h[4]?h[4]=="0"?"0":h[4].charAt(1):" ",v=h[6]-String(a).length,p=h[6]?n(d,v):"",f.push(h[5]?a+p:p+a)}}return f.join("")},r.cache={},r.parse=function(e){var t=e,n=[],r=[],i=0;while(t){if((n=/^[^\x25]+/.exec(t))!==null)r.push(n[0]);else if((n=/^\x25{2}/.exec(t))!==null)r.push("%");else{if((n=/^\x25(?:([1-9]\d*)\$|\(([^\)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(t))===null)throw"[sprintf] huh?";if(n[2]){i|=1;var s=[],o=n[2],u=[];if((u=/^([a-z_][a-z_\d]*)/i.exec(o))===null)throw"[sprintf] huh?";s.push(u[1]);while((o=o.substring(u[0].length))!=="")if((u=/^\.([a-z_][a-z_\d]*)/i.exec(o))!==null)s.push(u[1]);else{if((u=/^\[(\d+)\]/.exec(o))===null)throw"[sprintf] huh?";s.push(u[1])}n[2]=s}else i|=2;if(i===3)throw"[sprintf] mixing positional and named placeholders is not (yet) supported";r.push(n)}t=t.substring(n[0].length)}return r},r}(),n=function(e,n){return n.unshift(e),t.apply(null,n)};return e.lib.sprintf=t,e.lib.vsprintf=n,function(){function s(e){return(e=Math.abs(e)%100)%10==1&&e!=11?"st":e%10==2&&e!=12?"nd":e%10==3&&e!=13?"rd":"th"}function o(e){var t=new Date(e.getFullYear()+1,0,4);return(t-e)/864e5<7&&(e.getDay()+6)%7<(t.getDay()+6)%7?t.getFullYear():e.getMonth()>0||e.getDate()>=4?e.getFullYear():e.getFullYear()-((e.getDay()+6)%7-e.getDate()>2?1:0)}function u(e){var t=new Date(o(e),0,4);return t.setDate(t.getDate()-(t.getDay()+6)%7),parseInt((e-t)/6048e5)+1}var t="Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),n="Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),r="Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),i="January,February,March,April,May,June,July,August,September,October,November,December".split(",");e.lib.formatDate=function(e,a){if(typeof a!="string"||/^\s*$/.test(a))return e+"";var f=new Date(e.getFullYear(),0,1),l=e;return a.replace(/[dDjlNSwzWFmMntLoYyaABgGhHisuU]/g,function(e){switch(e){case"d":return("0"+l.getDate()).replace(/^.+(..)$/,"$1");case"D":return t[l.getDay()];case"j":return l.getDate();case"l":return n[l.getDay()];case"N":return(l.getDay()+6)%7+1;case"S":return s(l.getDate());case"w":return l.getDay();case"z":return Math.ceil((f-l)/864e5);case"W":return("0"+u(l)).replace(/^.(..)$/,"$1");case"F":return i[l.getMonth()];case"m":return("0"+(l.getMonth()+1)).replace(/^.+(..)$/,"$1");case"M":return r[l.getMonth()];case"n":return l.getMonth()+1;case"t":return(new Date(l.getFullYear(),l.getMonth()+1,-1)).getDate();case"L":return(new Date(l.getFullYear(),1,29)).getDate()==29?1:0;case"o":return o(l);case"Y":return l.getFullYear();case"y":return(l.getFullYear()+"").replace(/^.+(..)$/,"$1");case"a":return l.getHours()<12?"am":"pm";case"A":return l.getHours()<12?"AM":"PM";case"B":return Math.floor(((l.getUTCHours()+1)%24+l.getUTCMinutes()/60+l.getUTCSeconds()/3600)*1e3/24);case"g":return l.getHours()%12!=0?l.getHours()%12:12;case"G":return l.getHours();case"h":return("0"+(l.getHours()%12!=0?l.getHours()%12:12)).replace(/^.+(..)$/,"$1");case"H":return("0"+l.getHours()).replace(/^.+(..)$/,"$1");case"i":return("0"+l.getMinutes()).replace(/^.+(..)$/,"$1");case"s":return("0"+l.getSeconds()).replace(/^.+(..)$/,"$1");case"u":return l.getMilliseconds();case"U":return l.getTime()/1e3}})}}(),e.lib.strip_tags=function(e,t){t=(((t||"")+"").toLowerCase().match(/<[a-z][a-z0-9]*>/g)||[]).join("");var n=/<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,r=/<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;return e.replace(r,"").replace(n,function(e,n){return t.indexOf("<"+n.toLowerCase()+">")>-1?e:""})},e.lib.parseISO8601Date=function(e){var t=/(\d{4})-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d)(\.\d+)?(Z|([+-])(\d\d):(\d\d))/,n=[];n=e.match(t);if(!n)throw"Couldn't parse ISO 8601 date string '"+e+"'";var r=[1,2,3,4,5,6,10,11];for(var i in r)n[r[i]]=parseInt(n[r[i]],10);n[7]=parseFloat(n[7]);var s=Date.UTC(n[1],n[2]-1,n[3],n[4],n[5],n[6]);n[7]>0&&(s+=Math.round(n[7]*1e3));if(n[8]!="Z"&&n[10]){var o=n[10]*60*60*1e3;n[11]&&(o+=n[11]*60*1e3),n[9]=="-"?s-=o:s+=o}return new Date(s)},e.lib.strtotime=function(t,n){var r,i,s,o,u="";t=t.replace(/\s{2,}|^\s|\s$/g," "),t=t.replace(/[\t\r\n]/g,"");if(t==="now")return n===null||isNaN(n)?(new Date).getTime()/1e3|0:n|0;if(!isNaN(u=Date.parse(t)))return u/1e3|0;n?n=new Date(n*1e3):n=new Date;var a=t;t=t.toLowerCase();var f={day:{sun:0,mon:1,tue:2,wed:3,thu:4,fri:5,sat:6},mon:["jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"]},l=function(e){var t=e[2]&&e[2]==="ago",r=(r=e[0]==="last"?-1:1)*(t?-1:1);switch(e[0]){case"last":case"next":switch(e[1].substring(0,3)){case"yea":n.setFullYear(n.getFullYear()+r);break;case"wee":n.setDate(n.getDate()+r*7);break;case"day":n.setDate(n.getDate()+r);break;case"hou":n.setHours(n.getHours()+r);break;case"min":n.setMinutes(n.getMinutes()+r);break;case"sec":n.setSeconds(n.getSeconds()+r);break;case"mon":if(e[1]==="month"){n.setMonth(n.getMonth()+r);break};default:var i=f.day[e[1].substring(0,3)];if(typeof i!="undefined"){var s=i-n.getDay();s===0?s=7*r:s>0?e[0]==="last"&&(s-=7):e[0]==="next"&&(s+=7),n.setDate(n.getDate()+s),n.setHours(0,0,0,0)}}break;default:if(!/\d+/.test(e[0]))return!1;r*=parseInt(e[0],10);switch(e[1].substring(0,3)){case"yea":n.setFullYear(n.getFullYear()+r);break;case"mon":n.setMonth(n.getMonth()+r);break;case"wee":n.setDate(n.getDate()+r*7);break;case"day":n.setDate(n.getDate()+r);break;case"hou":n.setHours(n.getHours()+r);break;case"min":n.setMinutes(n.getMinutes()+r);break;case"sec":n.setSeconds(n.getSeconds()+r)}}return!0};s=t.match(/^(\d{2,4}-\d{2}-\d{2})(?:\s(\d{1,2}:\d{2}(:\d{2})?)?(?:\.(\d+))?)?$/);if(s!==null)return s[2]?s[3]||(s[2]+=":00"):s[2]="00:00:00",o=s[1].split(/-/g),o[1]=f.mon[o[1]-1]||o[1],o[0]=+o[0],o[0]=o[0]>=0&&o[0]<=69?"20"+(o[0]<10?"0"+o[0]:o[0]+""):o[0]>=70&&o[0]<=99?"19"+o[0]:o[0]+"",parseInt(this.strtotime(o[2]+" "+o[1]+" "+o[0]+" "+s[2])+(s[4]?s[4]/1e3:""),10);var c="([+-]?\\d+\\s(years?|months?|weeks?|days?|hours?|min|minutes?|sec|seconds?|sun\\.?|sunday|mon\\.?|monday|tue\\.?|tuesday|wed\\.?|wednesday|thu\\.?|thursday|fri\\.?|friday|sat\\.?|saturday)|(last|next)\\s(years?|months?|weeks?|days?|hours?|min|minutes?|sec|seconds?|sun\\.?|sunday|mon\\.?|monday|tue\\.?|tuesday|wed\\.?|wednesday|thu\\.?|thursday|fri\\.?|friday|sat\\.?|saturday))(\\sago)?";s=t.match(new RegExp(c,"gi"));if(s===null){try{num=e.lib.parseISO8601Date(a);if(num)return num/1e3|0}catch(h){return!1}return!1}for(r=0,i=s.length;r<i;r++)if(!l(s[r].split(" ")))return!1;return n.getTime()/1e3|0},e.lib.is=function(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e},e.lib.copy=function(e){var t={},n;for(n in e)t[n]=e[n];return t},e.lib.replaceAll=function(e,t,n){return e.split(t).join(n)},e.lib.chunkArray=function(t,n){var r=[],i=0,s=t.length;if(n<1||!e.lib.is("Array",t))return[];while(i<s)r.push(t.slice(i,i+=n));return r},e.lib.round=function(t,n,r){var i,s,o,u;n|=0,i=Math.pow(10,n),t*=i,u=t>0|-(t<0),o=t%1===.5*u,s=Math.floor(t);if(o)switch(r){case"PHP_ROUND_HALF_DOWN":t=s+(u<0);break;case"PHP_ROUND_HALF_EVEN":t=s+s%2*u;break;case"PHP_ROUND_HALF_ODD":t=s+!(s%2);break;default:t=s+(u>0)}return(o?t:Math.round(t))/i},e}(Twig||{}),Twig=function(e){e.logic={},e.logic.type={if_:"Twig.logic.type.if",endif:"Twig.logic.type.endif",for_:"Twig.logic.type.for",endfor:"Twig.logic.type.endfor",else_:"Twig.logic.type.else",elseif:"Twig.logic.type.elseif",set:"Twig.logic.type.set",setcapture:"Twig.logic.type.setcapture",endset:"Twig.logic.type.endset",filter:"Twig.logic.type.filter",endfilter:"Twig.logic.type.endfilter",block:"Twig.logic.type.block",endblock:"Twig.logic.type.endblock",extends_:"Twig.logic.type.extends",use:"Twig.logic.type.use",include:"Twig.logic.type.include",spaceless:"Twig.logic.type.spaceless",endspaceless:"Twig.logic.type.endspaceless",macro:"Twig.logic.type.macro",endmacro:"Twig.logic.type.endmacro",import_:"Twig.logic.type.import",from:"Twig.logic.type.from"},e.logic.definitions=[{type:e.logic.type.if_,regex:/^if\s+([^\s].+)$/,next:[e.logic.type.else_,e.logic.type.elseif,e.logic.type.endif],open:!0,compile:function(t){var n=t.match[1];return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i="",s=e.expression.parse.apply(this,[t.stack,n]);return r=!0,s&&(r=!1,i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.elseif,regex:/^elseif\s+([^\s].*)$/,next:[e.logic.type.else_,e.logic.type.elseif,e.logic.type.endif],open:!1,compile:function(t){var n=t.match[1];return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i="";return r&&e.expression.parse.apply(this,[t.stack,n])===!0&&(r=!1,i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.else_,regex:/^else$/,next:[e.logic.type.endif,e.logic.type.endfor],open:!1,parse:function(t,n,r){var i="";return r&&(i=e.parse.apply(this,[t.output,n])),{chain:r,output:i}}},{type:e.logic.type.endif,regex:/^endif$/,next:[],open:!1},{type:e.logic.type.for_,regex:/^for\s+([a-zA-Z0-9_,\s]+)\s+in\s+([^\s].*?)(?:\s+if\s+([^\s].*))?$/,next:[e.logic.type.else_,e.logic.type.endfor],open:!0,compile:function(t){var n=t.match[1],r=t.match[2],i=t.match[3],s=null;t.key_var=null,t.value_var=null;if(n.indexOf(",")>=0){s=n.split(",");if(s.length!==2)throw new e.Error("Invalid expression in for loop: "+n);t.key_var=s[0].trim(),t.value_var=s[1].trim()}else t.value_var=n;return t.expression=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:r}]).stack,i&&(t.conditional=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:i}]).stack),delete t.match,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.expression,n]),s=[],o,u=0,a,f=this,l=t.conditional,c=function(e,t){var r=l!==undefined;return{index:e+1,index0:e,revindex:r?undefined:t-e,revindex0:r?undefined:t-e-1,first:e===0,last:r?undefined:e===t-1,length:r?undefined:t,parent:n}},h=function(r,i){var a=e.lib.copy(n);a[t.value_var]=i,t.key_var&&(a[t.key_var]=r),a.loop=c(u,o);if(l===undefined||e.expression.parse.apply(f,[l,a]))s.push(e.parse.apply(f,[t.output,a])),u+=1};return i instanceof Array?(o=i.length,e.forEach(i,function(e){var t=u;h(t,e)})):i instanceof Object&&(i._keys!==undefined?a=i._keys:a=Object.keys(i),o=a.length,e.forEach(a,function(e){if(e==="_keys")return;h(e,i[e])})),r=s.length===0,{chain:r,output:s.join("")}}},{type:e.logic.type.endfor,regex:/^endfor$/,next:[],open:!1},{type:e.logic.type.set,regex:/^set\s+([a-zA-Z0-9_,\s]+)\s*=\s*(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2],i=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:r}]).stack;return t.key=n,t.expression=i,delete t.match,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.expression,n]),s=t.key;return this.context[s]=i,n[s]=i,{chain:r,context:n}}},{type:e.logic.type.setcapture,regex:/^set\s+([a-zA-Z0-9_,\s]+)$/,next:[e.logic.type.endset],open:!0,compile:function(e){var t=e.match[1].trim();return e.key=t,delete e.match,e},parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=t.key;return this.context[s]=i,n[s]=i,{chain:r,context:n}}},{type:e.logic.type.endset,regex:/^endset$/,next:[],open:!1},{type:e.logic.type.filter,regex:/^filter\s+(.+)$/,next:[e.logic.type.endfilter],open:!0,compile:function(t){var n="|"+t.match[1].trim();return t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,delete t.match,t},parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=[{type:e.expression.type.string,value:i}].concat(t.stack),o=e.expression.parse.apply(this,[s,n]);return{chain:r,output:o}}},{type:e.logic.type.endfilter,regex:/^endfilter$/,next:[],open:!1},{type:e.logic.type.block,regex:/^block\s+([a-zA-Z0-9_]+)$/,next:[e.logic.type.endblock],open:!0,compile:function(e){return e.block=e.match[1].trim(),delete e.match,e},parse:function(t,n,r){var i="",s="",o=this.blocks[t.block]&&this.blocks[t.block].indexOf(e.placeholders.parent)>-1;if(this.blocks[t.block]===undefined||o||n.loop)i=e.expression.parse.apply(this,[{type:e.expression.type.string,value:e.parse.apply(this,[t.output,n])},n]),o?this.blocks[t.block]=this.blocks[t.block].replace(e.placeholders.parent,i):this.blocks[t.block]=i;return this.child.blocks[t.block]?s=this.child.blocks[t.block]:s=this.blocks[t.block],{chain:r,output:s}}},{type:e.logic.type.endblock,regex:/^endblock(?:\s+([a-zA-Z0-9_]+))?$/,next:[],open:!1},{type:e.logic.type.extends_,regex:/^extends\s+(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim();return delete t.match,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.stack,n]);return this.extend=i,{chain:r,output:""}}},{type:e.logic.type.use,regex:/^use\s+(.+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim();return delete t.match,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i=e.expression.parse.apply(this,[t.stack,n]);return this.importBlocks(i),{chain:r,output:""}}},{type:e.logic.type.include,regex:/^include\s+(ignore missing\s+)?(.+?)\s*(?:with\s+(.+?))?\s*(only)?$/,next:[],open:!0,compile:function(t){var n=t.match,r=n[1]!==undefined,i=n[2].trim(),s=n[3],o=n[4]!==undefined&&n[4].length;return delete t.match,t.only=o,t.includeMissing=r,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:i}]).stack,s!==undefined&&(t.withStack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:s.trim()}]).stack),t},parse:function(t,n,r){var i={},s,o,u;if(!t.only)for(o in n)n.hasOwnProperty(o)&&(i[o]=n[o]);if(t.withStack!==undefined){s=e.expression.parse.apply(this,[t.withStack,n]);for(o in s)s.hasOwnProperty(o)&&(i[o]=s[o])}var a=e.expression.parse.apply(this,[t.stack,i]);return u=this.importFile(a),{chain:r,output:u.render(i)}}},{type:e.logic.type.spaceless,regex:/^spaceless$/,next:[e.logic.type.endspaceless],open:!0,parse:function(t,n,r){var i=e.parse.apply(this,[t.output,n]),s=/>\s+</g,o=i.replace(s,"><").trim();return{chain:r,output:o}}},{type:e.logic.type.endspaceless,regex:/^endspaceless$/,next:[],open:!1},{type:e.logic.type.macro,regex:/^macro\s+([a-zA-Z0-9_]+)\s?\((([a-zA-Z0-9_]+(,\s?)?)*)\)$/,next:[e.logic.type.endmacro],open:!0,compile:function(t){var n=t.match[1],r=t.match[2].split(/[ ,]+/);for(var i=0;i<r.length;i++)for(var s=0;s<r.length;s++)if(r[i]===r[s]&&i!==s)throw new e.Error("Duplicate arguments for parameter: "+r[i]);return t.macroName=n,t.parameters=r,delete t.match,t},parse:function(t,n,r){var i=this;return this.macros[t.macroName]=function(){var n={_self:i.macros};for(var r=0;r<t.parameters.length;r++){var s=t.parameters[r];typeof arguments[r]!="undefined"?n[s]=arguments[r]:n[s]=undefined}return e.parse.apply(i,[t.output,n])},{chain:r,output:""}}},{type:e.logic.type.endmacro,regex:/^endmacro$/,next:[],open:!1},{type:e.logic.type.import_,regex:/^import\s+(.+)\s+as\s+([a-zA-Z0-9_]+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2].trim();return delete t.match,t.expression=n,t.contextName=r,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){if(t.expression!=="_self"){var i=e.expression.parse.apply(this,[t.stack,n]),s=this.importMacros(i||t.expression);n[t.contextName]=s.render({},{output:"macros"})}else n[t.contextName]=this.macros;return{chain:r,output:""}}},{type:e.logic.type.from,regex:/^from\s+(.+)\s+import\s+([a-zA-Z0-9_, ]+)$/,next:[],open:!0,compile:function(t){var n=t.match[1].trim(),r=t.match[2].trim().split(/[ ,]+/),i={};for(var s=0;s<r.length;s++){var o=r[s],u=o.match(/^([a-zA-Z0-9_]+)\s+(.+)\s+as\s+([a-zA-Z0-9_]+)$/);u?i[u[1].trim()]=u[2].trim():o.match(/^([a-zA-Z0-9_]+)$/)&&(i[o]=o)}return delete t.match,t.expression=n,t.macroNames=i,t.stack=e.expression.compile.apply(this,[{type:e.expression.type.expression,value:n}]).stack,t},parse:function(t,n,r){var i;if(t.expression!=="_self"){var s=e.expression.parse.apply(this,[t.stack,n]),o=this.importMacros(s||t.expression);i=o.render({},{output:"macros"})}else i=this.macros;for(var u in t.macroNames)i.hasOwnProperty(u)&&(n[t.macroNames[u]]=i[u]);return{chain:r,output:""}}}],e.logic.handler={},e.logic.extendType=function(t,n){n=n||"Twig.logic.type"+t,e.logic.type[t]=n},e.logic.extend=function(t){if(!t.type)throw new e.Error("Unable to extend logic definition. No type provided for "+t);if(e.logic.type[t.type])throw new e.Error("Unable to extend logic definitions. Type "+t.type+" is already defined.");e.logic.extendType(t.type),e.logic.handler[t.type]=t};while(e.logic.definitions.length>0)e.logic.extend(e.logic.definitions.shift());return e.logic.compile=function(t){var n=t.value.trim(),r=e.logic.tokenize.apply(this,[n]),i=e.logic.handler[r.type];return i.compile&&(r=i.compile.apply(this,[r]),e.log.trace("Twig.logic.compile: ","Compiled logic token to ",r)),r},e.logic.tokenize=function(t){var n={},r=null,i=null,s=null,o=null,u=null,a=null;t=t.trim();for(r in e.logic.handler)if(e.logic.handler.hasOwnProperty(r)){i=e.logic.handler[r].type,s=e.logic.handler[r].regex,o=[],s instanceof Array?o=s:o.push(s);while(o.length>0){u=o.shift(),a=u.exec(t.trim());if(a!==null)return n.type=i,n.match=a,e.log.trace("Twig.logic.tokenize: ","Matched a ",i," regular expression of ",a),n}}throw new e.Error("Unable to parse '"+t.trim()+"'")},e.logic.parse=function(t,n,r){var i="",s;return n=n||{},e.log.debug("Twig.logic.parse: ","Parsing logic token ",t),s=e.logic.handler[t.type],s.parse&&(i=s.parse.apply(this,[t,n,r])),i},e}(Twig||{}),Twig=function(e){e.expression={},e.expression.reservedWords=["true","false","null","_context"],e.expression.type={comma:"Twig.expression.type.comma",operator:{unary:"Twig.expression.type.operator.unary",binary:"Twig.expression.type.operator.binary"},string:"Twig.expression.type.string",bool:"Twig.expression.type.bool",array:{start:"Twig.expression.type.array.start",end:"Twig.expression.type.array.end"},object:{start:"Twig.expression.type.object.start",end:"Twig.expression.type.object.end"},parameter:{start:"Twig.expression.type.parameter.start",end:"Twig.expression.type.parameter.end"},key:{period:"Twig.expression.type.key.period",brackets:"Twig.expression.type.key.brackets"},filter:"Twig.expression.type.filter",_function:"Twig.expression.type._function",variable:"Twig.expression.type.variable",number:"Twig.expression.type.number",_null:"Twig.expression.type.null",context:"Twig.expression.type.context",test:"Twig.expression.type.test"},e.expression.set={operations:[e.expression.type.filter,e.expression.type.operator.unary,e.expression.type.operator.binary,e.expression.type.array.end,e.expression.type.object.end,e.expression.type.parameter.end,e.expression.type.comma,e.expression.type.test],expressions:[e.expression.type._function,e.expression.type.bool,e.expression.type.string,e.expression.type.variable,e.expression.type.number,e.expression.type._null,e.expression.type.context,e.expression.type.parameter.start,e.expression.type.array.start,e.expression.type.object.start]},e.expression.set.operations_extended=e.expression.set.operations.concat([e.expression.type.key.period,e.expression.type.key.brackets]),e.expression.fn={compile:{push:function(e,t,n){n.push(e)},push_both:function(e,t,n){n.push(e),t.push(e)}},parse:{push:function(e,t,n){t.push(e)},push_value:function(e,t,n){t.push(e.value)}}},e.expression.definitions=[{type:e.expression.type.test,regex:/^is\s+(not)?\s*([a-zA-Z_][a-zA-Z0-9_]*)/,next:e.expression.set.operations.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.filter=e.match[2],e.modifier=e.match[1],delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=n.pop(),s=t.params&&e.expression.parse.apply(this,[t.params,r]),o=e.test(t.filter,i,s);t.modifier=="not"?n.push(!o):n.push(o)}},{type:e.expression.type.comma,regex:/^,/,next:e.expression.set.expressions.concat([e.expression.type.array.end,e.expression.type.object.end]),compile:function(t,n,r){var i=n.length-1,s;delete t.match,delete t.value;for(;i>=0;i--){s=n.pop();if(s.type===e.expression.type.object.start||s.type===e.expression.type.parameter.start||s.type===e.expression.type.array.start){n.push(s);break}r.push(s)}r.push(t)}},{type:e.expression.type.operator.binary,regex:/(^[\+\-~%\?\:]|^[!=]==?|^[!<>]=?|^\*\*?|^\/\/?|^and\s+|^or\s+|^in\s+|^not in\s+|^\.\.)/,next:e.expression.set.expressions.concat([e.expression.type.operator.unary]),compile:function(t,n,r){delete t.match,t.value=t.value.trim();var i=t.value,s=e.expression.operator.lookup(i,t);e.log.trace("Twig.expression.compile: ","Operator: ",s," from ",i);while(n.length>0&&(n[n.length-1].type==e.expression.type.operator.unary||n[n.length-1].type==e.expression.type.operator.binary)&&(s.associativity===e.expression.operator.leftToRight&&s.precidence>=n[n.length-1].precidence||s.associativity===e.expression.operator.rightToLeft&&s.precidence>n[n.length-1].precidence)){var o=n.pop();r.push(o)}if(i===":"){if(!n[n.length-1]||n[n.length-1].value!=="?"){var u=r.pop();if(u.type!==e.expression.type.string&&u.type!==e.expression.type.variable&&u.type!==e.expression.type.number)throw new e.Error("Unexpected value before ':' of "+u.type+" = "+u.value);t.key=u.value,r.push(t);return}}else n.push(s)},parse:function(t,n,r){t.key?n.push(t):e.expression.operator.parse(t.value,n)}},{type:e.expression.type.operator.unary,regex:/(^not\s+)/,next:e.expression.set.expressions,compile:function(t,n,r){delete t.match,t.value=t.value.trim();var i=t.value,s=e.expression.operator.lookup(i,t);e.log.trace("Twig.expression.compile: ","Operator: ",s," from ",i);while(n.length>0&&(n[n.length-1].type==e.expression.type.operator.unary||n[n.length-1].type==e.expression.type.operator.binary)&&(s.associativity===e.expression.operator.leftToRight&&s.precidence>=n[n.length-1].precidence||s.associativity===e.expression.operator.rightToLeft&&s.precidence>n[n.length-1].precidence)){var o=n.pop();r.push(o)}n.push(s)},parse:function(t,n,r){e.expression.operator.parse(t.value,n)}},{type:e.expression.type.string,regex:/^(["'])(?:(?=(\\?))\2.)*?\1/,next:e.expression.set.operations,compile:function(t,n,r){var i=t.value;delete t.match,i.substring(0,1)==='"'?i=i.replace('\\"','"'):i=i.replace("\\'","'"),t.value=i.substring(1,i.length-1).replace(/\\n/g,"\n").replace(/\\r/g,"\r"),e.log.trace("Twig.expression.compile: ","String value: ",t.value),r.push(t)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.parameter.start,regex:/^\(/,next:e.expression.set.expressions.concat([e.expression.type.parameter.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.parameter.end,regex:/^\)/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i,s=t;i=n.pop();while(n.length>0&&i.type!=e.expression.type.parameter.start)r.push(i),i=n.pop();var o=[];while(t.type!==e.expression.type.parameter.start)o.unshift(t),t=r.pop();o.unshift(t);var u=!1;t=r[r.length-1],t===undefined||t.type!==e.expression.type._function&&t.type!==e.expression.type.filter&&t.type!==e.expression.type.test&&t.type!==e.expression.type.key.brackets&&t.type!==e.expression.type.key.period?(s.expression=!0,o.pop(),o.shift(),s.params=o,r.push(s)):(s.expression=!1,t.params=o)},parse:function(t,n,r){var i=[],s=!1,o=null;if(t.expression)o=e.expression.parse.apply(this,[t.params,r]),n.push(o);else{while(n.length>0){o=n.pop();if(o&&o.type&&o.type==e.expression.type.parameter.start){s=!0;break}i.unshift(o)}if(!s)throw new e.Error("Expected end of parameter set.");n.push(i)}}},{type:e.expression.type.array.start,regex:/^\[/,next:e.expression.set.expressions.concat([e.expression.type.array.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.array.end,regex:/^\]/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i=n.length-1,s;for(;i>=0;i--){s=n.pop();if(s.type===e.expression.type.array.start)break;r.push(s)}r.push(t)},parse:function(t,n,r){var i=[],s=!1,o=null;while(n.length>0){o=n.pop();if(o.type&&o.type==e.expression.type.array.start){s=!0;break}i.unshift(o)}if(!s)throw new e.Error("Expected end of array.");n.push(i)}},{type:e.expression.type.object.start,regex:/^\{/,next:e.expression.set.expressions.concat([e.expression.type.object.end]),compile:e.expression.fn.compile.push_both,parse:e.expression.fn.parse.push},{type:e.expression.type.object.end,regex:/^\}/,next:e.expression.set.operations_extended,compile:function(t,n,r){var i=n.length-1,s;for(;i>=0;i--){s=n.pop();if(s&&s.type===e.expression.type.object.start)break;r.push(s)}r.push(t)},parse:function(t,n,r){var i={},s=!1,o=null,u=null,a=!1,f=null;while(n.length>0){o=n.pop();if(o&&o.type&&o.type===e.expression.type.object.start){s=!0;break}if(o&&o.type&&(o.type===e.expression.type.operator.binary||o.type===e.expression.type.operator.unary)&&o.key){if(!a)throw new e.Error("Missing value for key '"+o.key+"' in object definition.");i[o.key]=f,i._keys===undefined&&(i._keys=[]),i._keys.unshift(o.key),f=null,a=!1}else a=!0,f=o}if(!s)throw new e.Error("Unexpected end of object.");n.push(i)}},{type:e.expression.type.filter,regex:/^\|\s?([a-zA-Z_][a-zA-Z0-9_\-]*)/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.value=e.match[1],n.push(e)},parse:function(t,n,r){var i=n.pop(),s=t.params&&e.expression.parse.apply(this,[t.params,r]);n.push(e.filter.apply(this,[t.value,i,s]))}},{type:e.expression.type._function,regex:/^([a-zA-Z_][a-zA-Z0-9_]*)\s*\(/,next:e.expression.type.parameter.start,transform:function(e,t){return"("},compile:function(e,t,n){var r=e.match[1];e.fn=r,delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=t.fn,o;if(e.functions[s])o=e.functions[s].apply(this,i);else{if(typeof r[s]!="function")throw new e.Error(s+" function does not exist and is not defined in the context");o=r[s].apply(r,i)}n.push(o)}},{type:e.expression.type.variable,regex:/^[a-zA-Z_][a-zA-Z0-9_]*/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:e.expression.fn.compile.push,validate:function(t,n){return e.indexOf(e.expression.reservedWords,t[0])<0},parse:function(t,n,r){var i=e.expression.resolve(r[t.value],r);n.push(i)}},{type:e.expression.type.key.period,regex:/^\.([a-zA-Z0-9_]+)/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(e,t,n){e.key=e.match[1],delete e.match,delete e.value,n.push(e)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=t.key,o=n.pop(),u;if(o===null||o===undefined){if(this.options.strict_variables)throw new e.Error("Can't access a key "+s+" on an null or undefined object.");return null}var a=function(e){return e.substr(0,1).toUpperCase()+e.substr(1)};typeof o=="object"&&s in o?u=o[s]:o["get"+a(s)]!==undefined?u=o["get"+a(s)]:o["is"+a(s)]!==undefined?u=o["is"+a(s)]:u=null,n.push(e.expression.resolve(u,o,i))}},{type:e.expression.type.key.brackets,regex:/^\[([^\]]*)\]/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:function(t,n,r){var i=t.match[1];delete t.value,delete t.match,t.stack=e.expression.compile({value:i}).stack,r.push(t)},parse:function(t,n,r){var i=t.params&&e.expression.parse.apply(this,[t.params,r]),s=e.expression.parse.apply(this,[t.stack,r]),o=n.pop(),u;if(o===null||o===undefined){if(this.options.strict_variables)throw new e.Error("Can't access a key "+s+" on an null or undefined object.");return null}typeof o=="object"&&s in o?u=o[s]:u=null,n.push(e.expression.resolve(u,o,i))}},{type:e.expression.type._null,regex:/^null/,next:e.expression.set.operations,compile:function(e,t,n){delete e.match,e.value=null,n.push(e)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.context,regex:/^_context/,next:e.expression.set.operations_extended.concat([e.expression.type.parameter.start]),compile:e.expression.fn.compile.push,parse:function(e,t,n){t.push(n)}},{type:e.expression.type.number,regex:/^\-?\d+(\.\d+)?/,next:e.expression.set.operations,compile:function(e,t,n){e.value=Number(e.value),n.push(e)},parse:e.expression.fn.parse.push_value},{type:e.expression.type.bool,regex:/^(true|false)/,next:e.expression.set.operations,compile:function(e,t,n){e.value=e.match[0]=="true",delete e.match,n.push(e)},parse:e.expression.fn.parse.push_value}],e.expression.resolve=function(e,t,n){return typeof e=="function"?e.apply(t,n||[]):e},e.expression.handler={},e.expression.extendType=function(t){e.expression.type[t]="Twig.expression.type."+t},e.expression.extend=function(t){if(!t.type)throw new e.Error("Unable to extend logic definition. No type provided for "+t);e.expression.handler[t.type]=t};while(e.expression.definitions.length>0)e.expression.extend(e.expression.definitions.shift());return e.expression.tokenize=function(t){var n=[],r=0,i=null,s,o,u,a,f,l=[],c;c=function(){var t=Array.prototype.slice.apply(arguments),o=t.pop(),u=t.pop();return e.log.trace("Twig.expression.tokenize","Matched a ",s," regular expression of ",t),i&&e.indexOf(i,s)<0?(l.push(s+" cannot follow a "+n[n.length-1].type+" at template:"+r+" near '"+t[0].substring(0,20)+"...'"),t[0]):e.expression.handler[s].validate&&!e.expression.handler[s].validate(t,n)?t[0]:(l=[],n.push({type:s,value:t[0],match:t}),f=!0,i=a,r+=t[0].length,e.expression.handler[s].transform?e.expression.handler[s].transform(t,n):"")},e.log.debug("Twig.expression.tokenize","Tokenizing expression ",t);while(t.length>0){t=t.trim();for(s in e.expression.handler)if(e.expression.handler.hasOwnProperty(s)){a=e.expression.handler[s].next,o=e.expression.handler[s].regex,o instanceof Array?u=o:u=[o],f=!1;while(u.length>0)o=u.pop(),t=t.replace(o,c);if(f)break}if(!f)throw l.length>0?new e.Error(l.join(" OR ")):new e.Error("Unable to parse '"+t+"' at template position"+r)}return e.log.trace("Twig.expression.tokenize","Tokenized to ",n),n},e.expression.compile=function(t){var n=t.value,r=e.expression.tokenize(n),i=null,s=[],o=[],u=null;e.log.trace("Twig.expression.compile: ","Compiling ",n);while(r.length>0)i=r.shift(),u=e.expression.handler[i.type],e.log.trace("Twig.expression.compile: ","Compiling ",i),u.compile&&u.compile(i,o,s),e.log.trace("Twig.expression.compile: ","Stack is",o),e.log.trace("Twig.expression.compile: ","Output is",s);while(o.length>0)s.push(o.pop());return e.log.trace("Twig.expression.compile: ","Final output is",s),t.stack=s,delete t.value,t},e.expression.parse=function(t,n){var r=this;t instanceof Array||(t=[t]);var i=[],s=null;return e.forEach(t,function(t){s=e.expression.handler[t.type],s.parse&&s.parse.apply(r,[t,i,n])}),i.pop()},e}(Twig||{}),Twig=function(e){e.expression.operator={leftToRight:"leftToRight",rightToLeft:"rightToLeft"};var t=function(e,t){if(t.indexOf!==undefined)return e===t||e!==""&&t.indexOf(e)>-1;var n;for(n in t)if(t.hasOwnProperty(n)&&t[n]===e)return!0;return!1};return e.expression.operator.lookup=function(t,n){switch(t){case"..":case"not in":case"in":n.precidence=20,n.associativity=e.expression.operator.leftToRight;break;case",":n.precidence=18,n.associativity=e.expression.operator.leftToRight;break;case"?":case":":n.precidence=16,n.associativity=e.expression.operator.rightToLeft;break;case"or":n.precidence=14,n.associativity=e.expression.operator.leftToRight;break;case"and":n.precidence=13,n.associativity=e.expression.operator.leftToRight;break;case"==":case"!=":n.precidence=9,n.associativity=e.expression.operator.leftToRight;break;case"<":case"<=":case">":case">=":n.precidence=8,n.associativity=e.expression.operator.leftToRight;break;case"~":case"+":case"-":n.precidence=6,n.associativity=e.expression.operator.leftToRight;break;case"//":case"**":case"*":case"/":case"%":n.precidence=5,n.associativity=e.expression.operator.leftToRight;break;case"not":n.precidence=3,n.associativity=e.expression.operator.rightToLeft;break;default:throw new e.Error(t+" is an unknown operator.")}return n.operator=t,n},e.expression.operator.parse=function(n,r){e.log.trace("Twig.expression.operator.parse: ","Handling ",n);var i,s,o;switch(n){case":":break;case"?":o=r.pop(),s=r.pop(),i=r.pop(),i?r.push(s):r.push(o);break;case"+":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i+s);break;case"-":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i-s);break;case"*":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i*s);break;case"/":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i/s);break;case"//":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(parseInt(i/s));break;case"%":s=parseFloat(r.pop()),i=parseFloat(r.pop()),r.push(i%s);break;case"~":s=r.pop(),i=r.pop(),r.push((i!==undefined?i.toString():"")+(s!==undefined?s.toString():""));break;case"not":case"!":r.push(!r.pop());break;case"<":s=r.pop(),i=r.pop(),r.push(i<s);break;case"<=":s=r.pop(),i=r.pop(),r.push(i<=s);break;case">":s=r.pop(),i=r.pop(),r.push(i>s);break;case">=":s=r.pop(),i=r.pop(),r.push(i>=s);break;case"===":s=r.pop(),i=r.pop(),r.push(i===s);break;case"==":s=r.pop(),i=r.pop(),r.push(i==s);break;case"!==":s=r.pop(),i=r.pop(),r.push(i!==s);break;case"!=":s=r.pop(),i=r.pop(),r.push(i!=s);break;case"or":s=r.pop(),i=r.pop(),r.push(i||s);break;case"and":s=r.pop(),i=r.pop(),r.push(i&&s);break;case"**":s=r.pop(),i=r.pop(),r.push(Math.pow(i,s));break;case"not in":s=r.pop(),i=r.pop(),r.push(!t(i,s));break;case"in":s=r.pop(),i=r.pop(),r.push(t(i,s));break;case"..":s=r.pop(),i=r.pop(),r.push(e.functions.range(i,s));break;default:throw new e.Error(n+" is an unknown operator.")}},e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}return e.filters={upper:function(e){return typeof e!="string"?e:e.toUpperCase()},lower:function(e){return typeof e!="string"?e:e.toLowerCase()},capitalize:function(e){return typeof e!="string"?e:e.substr(0,1).toUpperCase()+e.toLowerCase().substr(1)},title:function(e){return typeof e!="string"?e:e.toLowerCase().replace(/(^|\s)([a-z])/g,function(e,t,n){return t+n.toUpperCase()})},length:function(t){return e.lib.is("Array",t)||typeof t=="string"?t.length:e.lib.is("Object",t)?t._keys===undefined?Object.keys(t).length:t._keys.length:0},reverse:function(e){if(t("Array",e))return e.reverse();if(t("String",e))return e.split("").reverse().join("");if(e instanceof Object){var n=e._keys||Object.keys(e).reverse();return e._keys=n,e}},sort:function(e){if(t("Array",e))return e.sort();if(e instanceof Object){delete e._keys;var n=Object.keys(e),r=n.sort(function(t,n){return e[t]>e[n]});return e._keys=r,e}},keys:function(t){if(t===undefined||t===null)return;var n=t._keys||Object.keys(t),r=[];return e.forEach(n,function(e){if(e==="_keys")return;t.hasOwnProperty(e)&&r.push(e)}),r},url_encode:function(e){if(e===undefined||e===null)return;return encodeURIComponent(e)},join:function(t,n){if(t===undefined||t===null)return;var r="",i=[],s=null;return n&&n[0]&&(r=n[0]),t instanceof Array?i=t:(s=t._keys||Object.keys(t),e.forEach(s,function(e){if(e==="_keys")return;t.hasOwnProperty(e)&&i.push(t[e])})),i.join(r)},"default":function(t,n){if(n===undefined||n.length!==1)throw new e.Error("default filter expects one argument");return t===undefined||t===null||t===""?n[0]:t},json_encode:function(e){return e&&e.hasOwnProperty("_keys")&&delete e._keys,e===undefined||e===null?"null":JSON.stringify(e)},merge:function(t,n){var r=[],i=0,s=[];t instanceof Array?e.forEach(n,function(e){e instanceof Array||(r={})}):r={},r instanceof Array||(r._keys=[]),t instanceof Array?e.forEach(t,function(e){r._keys&&r._keys.push(i),r[i]=e,i++}):(s=t._keys||Object.keys(t),e.forEach(s,function(e){r[e]=t[e],r._keys.push(e);var n=parseInt(e,10);!isNaN(n)&&n>=i&&(i=n+1)})),e.forEach(n,function(t){t instanceof Array?e.forEach(t,function(e){r._keys&&r._keys.push(i),r[i]=e,i++}):(s=t._keys||Object.keys(t),e.forEach(s,function(e){r[e]||r._keys.push(e),r[e]=t[e];var n=parseInt(e,10);!isNaN(n)&&n>=i&&(i=n+1)}))});if(n.length===0)throw new e.Error("Filter merge expects at least one parameter");return r},date:function(t,n){if(t===undefined||t===null)return;var r=e.functions.date(t);return e.lib.formatDate(r,n[0])},date_modify:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length!==1)throw new e.Error("date_modify filter expects 1 argument");var r=n[0],i;return e.lib.is("Date",t)&&(i=e.lib.strtotime(r,t.getTime()/1e3)),e.lib.is("String",t)&&(i=e.lib.strtotime(r,e.lib.strtotime(t))),e.lib.is("Number",t)&&(i=e.lib.strtotime(r,t)),new Date(i*1e3)},replace:function(t,n){if(t===undefined||t===null)return;var r=n[0],i;for(i in r)r.hasOwnProperty(i)&&i!=="_keys"&&(t=e.lib.replaceAll(t,i,r[i]));return t},format:function(t,n){if(t===undefined||t===null)return;return e.lib.vsprintf(t,n)},striptags:function(t){if(t===undefined||t===null)return;return e.lib.strip_tags(t)},escape:function(e){if(e===undefined||e===null)return;return e.toString().replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")},e:function(t){return e.filters.escape(t)},nl2br:function(t){if(t===undefined||t===null)return;var n="BACKSLASH_n_replace",r="<br />"+n;return t=e.filters.escape(t).replace(/\r\n/g,r).replace(/\r/g,r).replace(/\n/g,r),e.lib.replaceAll(t,n,"\n")},number_format:function(e,t){var n=e,r=t&&t[0]?t[0]:undefined,i=t&&t[1]!==undefined?t[1]:".",s=t&&t[2]!==undefined?t[2]:",";n=(n+"").replace(/[^0-9+\-Ee.]/g,"");var o=isFinite(+n)?+n:0,u=isFinite(+r)?Math.abs(r):0,a="",f=function(e,t){var n=Math.pow(10,t);return""+Math.round(e*n)/n};return a=(u?f(o,u):""+Math.round(o)).split("."),a[0].length>3&&(a[0]=a[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,s)),(a[1]||"").length<u&&(a[1]=a[1]||"",a[1]+=(new Array(u-a[1].length+1)).join("0")),a.join(i)},trim:function(t,n){if(t===undefined||t===null)return;var r=e.filters.escape(""+t),i;n&&n[0]?i=""+n[0]:i=" \n\r \f            ​\u2028\u2029 ";for(var s=0;s<r.length;s++)if(i.indexOf(r.charAt(s))===-1){r=r.substring(s);break}for(s=r.length-1;s>=0;s--)if(i.indexOf(r.charAt(s))===-1){r=r.substring(0,s+1);break}return i.indexOf(r.charAt(0))===-1?r:""},slice:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length<1)throw new e.Error("slice filter expects at least 1 argument");var r=n[0]||0,i=n.length>1?n[1]:t.length,s=r>=0?r:Math.max(t.length+r,0);if(e.lib.is("Array",t)){var o=[];for(var u=s;u<s+i&&u<t.length;u++)o.push(t[u]);return o}if(e.lib.is("String",t))return t.substr(s,i);throw new e.Error("slice filter expects value to be an array or string")},abs:function(e){if(e===undefined||e===null)return;return Math.abs(e)},first:function(e){if(e instanceof Array)return e[0];if(e instanceof Object){if("_keys"in e)return e[e._keys[0]]}else if(typeof e=="string")return e.substr(0,1);return},split:function(t,n){if(t===undefined||t===null)return;if(n===undefined||n.length<1||n.length>2)throw new e.Error("split filter expects 1 or 2 argument");if(e.lib.is("String",t)){var r=n[0],i=n[1],s=t.split(r);if(i===undefined)return s;if(i<0)return t.split(r,s.length+i);var o=[];if(r=="")while(s.length>0){var u="";for(var a=0;a<i&&s.length>0;a++)u+=s.shift();o.push(u)}else{for(var a=0;a<i-1&&s.length>0;a++)o.push(s.shift());s.length>0&&o.push(s.join(r))}return o}throw new e.Error("split filter expects value to be a string")},last:function(t){if(e.lib.is("Object",t)){var n;return t._keys===undefined?n=Object.keys(t):n=t._keys,t[n[n.length-1]]}return t[t.length-1]},raw:function(e){return e},batch:function(t,n){var r=n.shift(),i=n.shift(),s,o,u;if(!e.lib.is("Array",t))throw new e.Error("batch filter expects items to be an array");if(!e.lib.is("Number",r))throw new e.Error("batch filter expects size to be a number");r=Math.ceil(r),s=e.lib.chunkArray(t,r);if(i&&t.length%r!=0){o=s.pop(),u=r-o.length;while(u--)o.push(i);s.push(o)}return s},round:function(t,n){n=n||[];var r=n.length>0?n[0]:0,i=n.length>1?n[1]:"common";t=parseFloat(t);if(r&&!e.lib.is("Number",r))throw new e.Error("round filter expects precision to be a number");if(i==="common")return e.lib.round(t,r);if(!e.lib.is("Function",Math[i]))throw new e.Error("round filter expects method to be 'floor', 'ceil', or 'common'");return Math[i](t*Math.pow(10,r))/Math.pow(10,r)}},e.filter=function(t,n,r){if(!e.filters[t])throw"Unable to find filter "+t;return e.filters[t].apply(this,[n,r])},e.filter.extend=function(t,n){e.filters[t]=n},e}(Twig||{}),Twig=function(e){function t(e,t){var n=Object.prototype.toString.call(t).slice(8,-1);return t!==undefined&&t!==null&&n===e}return e.functions={range:function(e,t,n){var r=[],i,s,o,u=n||1,a=!1;!isNaN(e)&&!isNaN(t)?(i=parseInt(e,10),s=parseInt(t,10)):isNaN(e)&&isNaN(t)?(a=!0,i=e.charCodeAt(0),s=t.charCodeAt(0)):(i=isNaN(e)?0:e,s=isNaN(t)?0:t),o=i>s?!1:!0;if(o)while(i<=s)r.push(a?String.fromCharCode(i):i),i+=u;else while(i>=s)r.push(a?String.fromCharCode(i):i),i-=u;return r},cycle:function(e,t){var n=t%e.length;return e[n]},dump:function(){var t="\n",n=" ",r=0,i="",s=Array.prototype.slice.call(arguments),o=function(e){var t="";while(e>0)e--,t+=n;return t},u=function(e){i+=o(r),typeof e=="object"?a(e):typeof e=="function"?i+="function()"+t:typeof e=="string"?i+="string("+e.length+') "'+e+'"'+t:typeof e=="number"?i+="number("+e+")"+t:typeof e=="boolean"&&(i+="bool("+e+")"+t)},a=function(e){var n;if(e===null)i+="NULL"+t;else if(e===undefined)i+="undefined"+t;else if(typeof e=="object"){i+=o(r)+typeof e,r++,i+="("+function(e){var t=0,n;for(n in e)e.hasOwnProperty(n)&&t++;return t}(e)+") {"+t;for(n in e)i+=o(r)+"["+n+"]=> "+t,u(e[n]);r--,i+=o(r)+"}"+t}else u(e)};return s.length==0&&s.push(this.context),e.forEach(s,function(e){a(e)}),i},date:function(t,n){var r;if(t===undefined)r=new Date;else if(e.lib.is("Date",t))r=t;else if(e.lib.is("String",t))r=new Date(e.lib.strtotime(t)*1e3);else{if(!e.lib.is("Number",t))throw new e.Error("Unable to parse date "+t);r=new Date(t*1e3)}return r},block:function(e){return this.blocks[e]},parent:function(){return e.placeholders.parent},attribute:function(e,t,n){return e instanceof Object&&e.hasOwnProperty(t)?typeof e[t]=="function"?e[t].apply(undefined,n):e[t]:e[t]||undefined}},e._function=function(t,n,r){if(!e.functions[t])throw"Unable to find function "+t;return e.functions[t](n,r)},e._function.extend=function(t,n){e.functions[t]=n},e}(Twig||{}),Twig=function(e){return e.tests={empty:function(e){if(e===null||e===undefined)return!0;if(typeof e=="number")return!1;if(e.length&&e.length>0)return!1;for(var t in e)if(e.hasOwnProperty(t))return!1;return!0},odd:function(e){return e%2===1},even:function(e){return e%2===0},divisibleby:function(e,t){return e%t[0]===0},defined:function(e){return e!==undefined},none:function(e){return e===null},"null":function(e){return this.none(e)},sameas:function(e,t){return e===t[0]}},e.test=function(t,n,r){if(!e.tests[t])throw"Test "+t+" is not defined.";return e.tests[t](n,r)},e.test.extend=function(t,n){e.tests[t]=n},e}(Twig||{}),Twig=function(e){return e.exports={VERSION:e.VERSION},e.exports.twig=function(n){var r=n.id,i={strict_variables:n.strict_variables||!1,allowInlineIncludes:n.allowInlineIncludes||!1,rethrow:n.rethrow||!1};r&&e.validateId(r),n.debug!==undefined&&(e.debug=n.debug),n.trace!==undefined&&(e.trace=n.trace);if(n.data!==undefined)return new e.Template({data:n.data,module:n.module,id:r,options:i});if(n.ref!==undefined){if(n.id!==undefined)throw new e.Error("Both ref and id cannot be set on a twig.js template.");return e.Templates.load(n.ref)}if(n.href!==undefined)return e.Templates.loadRemote(n.href,{id:r,method:"ajax",base:n.base,module:n.module,precompiled:n.precompiled,async:n.async,options:i},n.load,n.error);if(n.path!==undefined)return e.Templates.loadRemote(n.path,{id:r,method:"fs",base:n.base,module:n.module,precompiled:n.precompiled,async:n.async,options:i},n.load,n.error)},e.exports.extendFilter=function(t,n){e.filter.extend(t,n)},e.exports.extendFunction=function(t,n){e._function.extend(t,n)},e.exports.extendTest=function(t,n){e.test.extend(t,n)},e.exports.extendTag=function(t){e.logic.extend(t)},e.exports.extend=function(t){t(e)},e.exports.compile=function(t,n){var r=n.filename,i=n.filename,s;return s=new e.Template({data:t,path:i,id:r,options:n.settings["twig options"]}),function(e){return s.render(e)}},e.exports.renderFile=function(t,n,r){"function"==typeof n&&(r=n,n={}),n=n||{};var i={path:t,base:n.settings.views,load:function(e){r(null,e.render(n))}},s=n.settings["twig options"];if(s)for(var o in s)s.hasOwnProperty(o)&&(i[o]=s[o]);e.exports.twig(i)},e.exports.__express=e.exports.renderFile,e.exports.cache=function(t){e.cache=t},e}(Twig||{}),Twig=function(e){return e.compiler={module:{}},e.compiler.compile=function(t,n){var r=JSON.stringify(t.tokens),i=t.id,s;if(n.module){if(e.compiler.module[n.module]===undefined)throw new e.Error("Unable to find module type "+n.module);s=e.compiler.module[n.module](i,r,n.twig)}else s=e.compiler.wrap(i,r);return s},e.compiler.module={amd:function(t,n,r){return'define(["'+r+'"], function (Twig) {\n var twig, templates;\ntwig = Twig.twig;\ntemplates = '+e.compiler.wrap(t,n)+"\n return templates;\n});"},node:function(t,n){return'var twig = require("twig").twig;\nexports.template = '+e.compiler.wrap(t,n)},cjs2:function(t,n,r){return'module.declare([{ twig: "'+r+'" }], function (require, exports, module) {\n'+' var twig = require("twig").twig;\n'+" exports.template = "+e.compiler.wrap(t,n)+"\n});"}},e.compiler.wrap=function(e,t){return'twig({id:"'+e.replace('"','\\"')+'", data:'+t+", precompiled: true});\n"},e}(Twig||{});typeof module!="undefined"&&module.declare?module.declare([],function(e,t,n){for(key in Twig.exports)Twig.exports.hasOwnProperty(key)&&(t[key]=Twig.exports[key])}):typeof define=="function"&&define.amd||1?timely.define("external_libs/twig",[],function(){return Twig.exports}):typeof module!="undefined"&&module.exports?module.exports=Twig.exports:(window.twig=Twig.exports.twig,window.Twig=Twig.exports),timely.define("libs/twig",["external_libs/twig"],function(e){return e.extendFunction("ai1ec_disable_content_output",function(){}),e}),timely.define("agenda",["libs/twig","agenda"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/agenda.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<div class="ai1ec-agenda-view">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"dates",match:["dates"]},{type:"Twig.expression.type.test",filter:"empty"}],output:[{type:"raw",value:' <p class="ai1ec-no-results">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_upcoming_events",match:["text_upcoming_events"]}]},{type:"raw",value:"\n </p>\n "}]}},{type:"logic",token:{type:"Twig.logic.type.else",match:["else"],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"date_info",expression:[{type:"Twig.expression.type.variable",value:"dates",match:["dates"]}],output:[{type:"raw",value:' <div class="ai1ec-date\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n <a class="ai1ec-date-title ai1ec-load-view"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <div class="ai1ec-month">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"month"}]},{type:"raw",value:'</div>\n <div class="ai1ec-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</div>\n <div class="ai1ec-weekday">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</div>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_year_in_agenda_dates",match:["show_year_in_agenda_dates"]}],output:[{type:"raw",value:' <div class="ai1ec-year">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"year"}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' </a>\n <div class="ai1ec-date-events">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"category",expression:[{type:"Twig.expression.type.variable",value:"date_info",match:["date_info"]},{type:"Twig.expression.type.key.period",key:"events"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"category",match:["category"]}],output:[{type:"raw",value:' <div class="ai1ec-event\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"}],output:[{type:"raw",value:"ai1ec-allday"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"expanded",match:["expanded"]}],output:[{type:"raw",value:"ai1ec-expanded"}]}},{type:"raw",value:'"\n data-end="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end"}]},{type:"raw",value:'">\n\n <div class="ai1ec-event-header">\n <div class="ai1ec-event-toggle">\n <i class="ai1ec-fa ai1ec-fa-minus-circle ai1ec-fa-lg"></i>\n <i class="ai1ec-fa ai1ec-fa-plus-circle ai1ec-fa-lg"></i>\n </div>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"edit_post_link",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"edit_post_link",match:["edit_post_link"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <a class="post-edit-link" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"edit_post_link",match:["edit_post_link"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"timespan_short"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n\n "},{type:"raw",value:'\n <div class="ai1ec-event-summary '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"expanded",match:["expanded"]}],output:[{type:"raw",value:"ai1ec-expanded"}]}},{type:"raw",value:'">\n\n <div class="ai1ec-event-description">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"content_img_url"},{type:"Twig.expression.type.test",filter:"empty"},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_content"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <div class="ai1ec-event-summary-footer">\n <div class="ai1ec-btn-group ai1ec-actions">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary\n ai1ec-btn-xs ai1ec-buy-tickets"\n target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:' <a class="ai1ec-read-more ai1ec-btn ai1ec-btn-default\n ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_read_more",match:["text_read_more"]}]},{type:"raw",value:' <i class="ai1ec-fa ai1ec-fa-arrow-right"></i>\n </a>\n </div>\n '},{type:"logic",token:{type:"Twig.logic.type.set",key:"categories",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"categories_html"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"tags",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"tags_html"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"categories",match:["categories"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <span class="ai1ec-categories">\n <span class="ai1ec-field-label">\n <i class="ai1ec-fa ai1ec-fa-folder-open"></i>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_categories",match:["text_categories"]}]},{type:"raw",value:"\n </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"categories",match:["categories"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"tags",match:["tags"]},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:' <span class="ai1ec-tags">\n <span class="ai1ec-field-label">\n <i class="ai1ec-fa ai1ec-fa-tags"></i>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_tags",match:["text_tags"]}]},{type:"raw",value:"\n </span>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"tags",match:["tags"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:" </div>\n </div>\n\n </div>\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n</div>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("oneday",["libs/twig","oneday"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/oneday.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'-view-original">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"date",value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <th class="ai1ec-weekday\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n '},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_reveal_button",match:["show_reveal_button"]},{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"last"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <div class="ai1ec-reveal-full-day">\n <button class="ai1ec-btn ai1ec-btn-info ai1ec-btn-xs\n ai1ec-tooltip-trigger"\n data-placement="left"\n title="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_full_day",match:["text_full_day"]},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-expand"></i>\n </button>\n </div>\n '}]}},{type:"raw",value:' <a class="ai1ec-load-view" href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"href"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'>\n <span class="ai1ec-weekday-date">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"day"}]},{type:"raw",value:'</span>\n <span class="ai1ec-weekday-day">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"weekday"}]},{type:"raw",value:"</span>\n </a>\n </th>\n "}]}},{type:"raw",value:" </tr>\n <tr>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:' <td class="ai1ec-allday-events\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.test",filter:"empty",modifier:"not"}],output:[{type:"raw",value:"ai1ec-today"}]}},{type:"raw",value:'">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-allday-label">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_all_day",match:["text_all_day"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"allday"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n ai1ec-allday\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n\n </thead>\n <tbody>\n <tr class="ai1ec-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"loop",match:["loop"]},{type:"Twig.expression.type.key.period",key:"first"}],output:[{type:"raw",value:' <div class="ai1ec-grid-container">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:"h",value_var:"hour",expression:[{type:"Twig.expression.type.variable",value:"hours",match:["hours"]}],output:[{type:"raw",value:' <div class="ai1ec-hour-marker\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:8,match:["8",null]},{type:"Twig.expression.type.operator.binary",value:">=",precidence:8,associativity:"leftToRight",operator:">="},{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:18,match:["18",null]},{type:"Twig.expression.type.operator.binary",value:"<",precidence:8,associativity:"leftToRight",operator:"<"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:"ai1ec-business-hour"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"hour",match:["hour"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </div>\n </div>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"quarter",expression:[{type:"Twig.expression.type.number",value:1,match:["1",null]},{type:"Twig.expression.type.number",value:3,match:["3",null]},{type:"Twig.expression.type.operator.binary",value:"..",precidence:20,associativity:"leftToRight",operator:".."}],output:[{type:"raw",value:' <div class="ai1ec-quarter-marker"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"h",match:["h"]},{type:"Twig.expression.type.number",value:60,match:["60",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"quarter",match:["quarter"]},{type:"Twig.expression.type.number",value:15,match:["15",null]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:'px;"></div>\n '}]}},{type:"raw",value:" "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"},{type:"Twig.expression.type.variable",value:"show_now",match:["show_now"]},{type:"Twig.expression.type.operator.binary",value:"or",precidence:14,associativity:"leftToRight",operator:"or"}],output:[{type:"raw",value:' <div class="ai1ec-now-marker" style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_top",match:["now_top"]}]},{type:"raw",value:'px;">\n <div>\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_now_label",match:["text_now_label"]}]},{type:"raw",value:" "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"now_text",match:["now_text"]}]},{type:"raw",value:"\n </div>\n </div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day_array",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"notallday"}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"event",expression:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"event"}]}},{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:"ai1ec-start-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:"ai1ec-end-truncated"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n style="top: '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"top"}]},{type:"raw",value:"px;\n height: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"height"}]},{type:"raw",value:"px;\n left: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day_array",match:["day_array"]},{type:"Twig.expression.type.key.period",key:"indent"},{type:"Twig.expression.type.variable",value:"indent_multiplier",match:["indent_multiplier"]},{type:"Twig.expression.type.operator.binary",value:"*",precidence:5,associativity:"leftToRight",operator:"*"},{type:"Twig.expression.type.variable",value:"indent_offset",match:["indent_offset"]},{type:"Twig.expression.type.operator.binary",value:"+",precidence:6,associativity:"leftToRight",operator:"+"}]},{type:"raw",value:"px;\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.set",key:"faded_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"faded_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba_color",expression:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"rgba_color"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba1",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.05"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"rgba3",expression:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.3"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]}},{type:"raw",value:" border: 1px solid "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"faded_color",match:["faded_color"]}]},{type:"raw",value:";\n border-color: "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba_color",match:["rgba_color"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"0.5"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:";\n background-image: -webkit-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -moz-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -ms-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: -o-linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n background-image: linear-gradient( top, "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba1",match:["rgba1"]}]},{type:"raw",value:", "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"rgba3",match:["rgba3"]}]},{type:"raw",value:" 50px );\n "}]}},{type:"raw",value:' ">\n\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-start-truncator">◤</div>\n '}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"}],output:[{type:"raw",value:' <div class="ai1ec-end-truncator">◢</div>\n '}]}},{type:"raw",value:'\n <div class="ai1ec-event">\n <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:'\n </span>\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:' </span>\n </div>\n\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:" ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </div>\n\n </td>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tr>\n </tbody>\n\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("month",["libs/twig","month"],function(e){var t,n;return t=e.twig,n=t({id:"../js_src/month.twig",data:[{type:"output",stack:[{type:"Twig.expression.type.variable",value:"navigation",match:["navigation"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n\n<table class="ai1ec-month-view ai1ec-popover-boundary\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"month_word_wrap",match:["month_word_wrap"]}],output:[{type:"raw",value:"ai1ec-word-wrap"}]}},{type:"raw",value:'">\n <thead>\n <tr>\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"weekday",expression:[{type:"Twig.expression.type.variable",value:"weekdays",match:["weekdays"]}],output:[{type:"raw",value:' <th scope="col" class="ai1ec-weekday">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"weekday",match:["weekday"]}]},{type:"raw",value:"</th>\n "}]}},{type:"raw",value:" </tr>\n </thead>\n <tbody>\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"week",expression:[{type:"Twig.expression.type.variable",value:"cell_array",match:["cell_array"]}],output:[{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.set",key:"added_stretcher",expression:[{type:"Twig.expression.type.bool",value:!1}]}},{type:"raw",value:' <tr class="ai1ec-week">\n '},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"day",expression:[{type:"Twig.expression.type.variable",value:"week",match:["week"]}],output:[{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date"}],output:[{type:"raw",value:" <td "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"today"}],output:[{type:"raw",value:'class="ai1ec-today"'}]}},{type:"raw",value:">\n "},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"added_stretcher",match:["added_stretcher"]},{type:"Twig.expression.type.operator.unary",value:"not",precidence:3,associativity:"rightToLeft",operator:"not"}],output:[{type:"raw",value:' <div class="ai1ec-day-stretcher"></div>\n '},{type:"logic",token:{type:"Twig.logic.type.set",key:"added_stretcher",expression:[{type:"Twig.expression.type.bool",value:!0}]}},{type:"raw",value:" "}]}},{type:"raw",value:'\n <div class="ai1ec-day">\n <div class="ai1ec-date">\n <a class="ai1ec-load-view"\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"data_type",match:["data_type"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date_link"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"date"}]},{type:"raw",value:"</a>\n </div>\n\n "},{type:"logic",token:{type:"Twig.logic.type.for",key_var:null,value_var:"event",expression:[{type:"Twig.expression.type.variable",value:"day",match:["day"]},{type:"Twig.expression.type.key.period",key:"events"}],output:[{type:"raw",value:' <a href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:' data-start-day="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_day"}]},{type:"raw",value:'"\n data-end-day="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"multiday_end_day"}]},{type:"raw",value:'"\n data-start-truncated="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"start_truncated"},{type:"Twig.expression.type.string",value:"true"},{type:"Twig.expression.type.string",value:"false"},{type:"Twig.expression.type.operator.binary",value:"?",precidence:16,associativity:"rightToLeft",operator:"?"}]},{type:"raw",value:'"\n data-end-truncated="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"end_truncated"},{type:"Twig.expression.type.string",value:"true"},{type:"Twig.expression.type.string",value:"false"},{type:"Twig.expression.type.operator.binary",value:"?",precidence:16,associativity:"rightToLeft",operator:"?"}]},{type:"raw",value:'"\n '}]}},{type:"raw",value:' data-instance-id="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'"\n class="ai1ec-event-container ai1ec-load-event\n ai1ec-popup-trigger\n ai1ec-event-id-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:"\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"}],output:[{type:"raw",value:"ai1ec-allday"}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_multiday"}],output:[{type:"raw",value:"ai1ec-multiday"}]}},{type:"raw",value:'"\n >\n\n <div class="ai1ec-event"\n style="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"color_style"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n <span class="ai1ec-event-title">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </span>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"is_allday"},{type:"Twig.expression.type.operator.unary",value:"not",precidence:3,associativity:"rightToLeft",operator:"not"}],output:[{type:"raw",value:' <span class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"short_start_time"}]},{type:"raw",value:"\n </span>\n "}]}},{type:"raw",value:' </div>\n </a>\n\n <div class="ai1ec-popover ai1ec-popup ai1ec-popup-in-'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"type",match:["type"]}]},{type:"raw",value:"-view\n ai1ec-event-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_id"}]},{type:"raw",value:"\n ai1ec-event-instance-id-"},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"instance_id"}]},{type:"raw",value:'">\n '},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"}],output:[{type:"raw",value:' <div class="ai1ec-color-swatches">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"category_colors"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:' <span class="ai1ec-popup-title">\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"filtered_title"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</a>\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"show_location_in_title",match:["show_location_in_title"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <span class="ai1ec-event-location"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_venue_separator",match:["text_venue_separator"]},{type:"Twig.expression.type.filter",value:"format",match:["| format","format"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"venue"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:"</span>\n "}]}},{type:"raw",value:" "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"is_ticket_button_enabled",match:["is_ticket_button_enabled"]},{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.operator.binary",value:"and",precidence:13,associativity:"leftToRight",operator:"and"}],output:[{type:"raw",value:' <a class="ai1ec-pull-right ai1ec-btn ai1ec-btn-primary ai1ec-btn-xs\n ai1ec-buy-tickets" target="_blank"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'"\n >'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"ticket_url_label"}]},{type:"raw",value:"</a>\n "}]}},{type:"raw",value:" </span>\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"}],output:[{type:"raw",value:' <a class="post-edit-link"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"edit_post_link"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'">\n <i class="ai1ec-fa ai1ec-fa-pencil"></i> '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"text_edit",match:["text_edit"]}]},{type:"raw",value:"\n </a>\n "}]}},{type:"raw",value:'\n <div class="ai1ec-event-time">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"popup_timespan"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:'\n </div>\n\n <a class="ai1ec-load-event"\n href="'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"permalink"},{type:"Twig.expression.type.filter",value:"e",match:["| e","e"],params:[{type:"Twig.expression.type.parameter.start",value:"(",match:["("]},{type:"Twig.expression.type.string",value:"html_attr"},{type:"Twig.expression.type.parameter.end",value:")",match:[")"],expression:!1}]}]},{type:"raw",value:'">\n '},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"avatar_not_wrapped"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n </a>\n "},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"action_buttons",match:["action_buttons"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"\n\n "},{type:"logic",token:{type:"Twig.logic.type.if",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"}],output:[{type:"raw",value:' <div class="ai1ec-popup-excerpt">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"event",match:["event"]},{type:"Twig.expression.type.key.period",key:"post_excerpt"},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n "}]}},{type:"raw",value:" </div>\n "}]}},{type:"raw",value:" </div>\n </td>\n "}]}},{type:"logic",token:{type:"Twig.logic.type.else",match:["else"],output:[{type:"raw",value:" "},{type:"raw",value:'\n <td class="ai1ec-empty"></td>\n '}]}},{type:"raw",value:" "},{type:"raw",value:"\n\n "}]}},{type:"raw",value:" "},{type:"raw",value:"\n </tr>\n "}]}},{type:"raw",value:" "},{type:"raw",value:'\n </tbody>\n</table>\n\n<div class="ai1ec-pull-left">'},{type:"output",stack:[{type:"Twig.expression.type.variable",value:"pagination_links",match:["pagination_links"]},{type:"Twig.expression.type.filter",value:"raw",match:["| raw","raw"]}]},{type:"raw",value:"</div>\n"}],precompiled:!0}),n}),timely.define("external_libs/jquery_history",["jquery_timely"],function(e){try{(function(t,n){var r=t.History=t.History||{};if(typeof r.Adapter!="undefined")throw new Error("History.js Adapter has already been loaded...");r.Adapter={bind:function(t,n,r){e(t).bind(n,r)},trigger:function(t,n,r){e(t).trigger(n,r)},extractEventData:function(e,t,r){var i=t&&t.originalEvent&&t.originalEvent[e]||r&&r[e]||n;return i},onDomLoad:function(t){e(t)}},typeof r.init!="undefined"&&r.init()})(window),function(e,t){var n=e.document,r=e.setTimeout||r,i=e.clearTimeout||i,s=e.setInterval||s,o=e.History=e.History||{};if(typeof o.initHtml4!="undefined")throw new Error("History.js HTML4 Support has already been loaded...");o.initHtml4=function(){if(typeof o.initHtml4.initialized!="undefined")return!1;o.initHtml4.initialized=!0,o.enabled=!0,o.savedHashes=[],o.isLastHash=function(e){var t=o.getHashByIndex(),n;return n=e===t,n},o.saveHash=function(e){return o.isLastHash(e)?!1:(o.savedHashes.push(e),!0)},o.getHashByIndex=function(e){var t=null;return typeof e=="undefined"?t=o.savedHashes[o.savedHashes.length-1]:e<0?t=o.savedHashes[o.savedHashes.length+e]:t=o.savedHashes[e],t},o.discardedHashes={},o.discardedStates={},o.discardState=function(e,t,n){var r=o.getHashByState(e),i;return i={discardedState:e,backState:n,forwardState:t},o.discardedStates[r]=i,!0},o.discardHash=function(e,t,n){var r={discardedHash:e,backState:n,forwardState:t};return o.discardedHashes[e]=r,!0},o.discardedState=function(e){var t=o.getHashByState(e),n;return n=o.discardedStates[t]||!1,n},o.discardedHash=function(e){var t=o.discardedHashes[e]||!1;return t},o.recycleState=function(e){var t=o.getHashByState(e);return o.discardedState(e)&&delete o.discardedStates[t],!0},o.emulated.hashChange&&(o.hashChangeInit=function(){o.checkerFunction=null;var t="",r,i,u,a;return o.isInternetExplorer()?(r="historyjs-iframe",i=n.createElement("iframe"),i.setAttribute("id",r),i.style.display="none",n.body.appendChild(i),i.contentWindow.document.open(),i.contentWindow.document.close(),u="",a=!1,o.checkerFunction=function(){if(a)return!1;a=!0;var n=o.getHash()||"",r=o.unescapeHash(i.contentWindow.document.location.hash)||"";return n!==t?(t=n,r!==n&&(u=r=n,i.contentWindow.document.open(),i.contentWindow.document.close(),i.contentWindow.document.location.hash=o.escapeHash(n)),o.Adapter.trigger(e,"hashchange")):r!==u&&(u=r,o.setHash(r,!1)),a=!1,!0}):o.checkerFunction=function(){var n=o.getHash();return n!==t&&(t=n,o.Adapter.trigger(e,"hashchange")),!0},o.intervalList.push(s(o.checkerFunction,o.options.hashChangeInterval)),!0},o.Adapter.onDomLoad(o.hashChangeInit)),o.emulated.pushState&&(o.onHashChange=function(t){var r=t&&t.newURL||n.location.href,i=o.getHashByUrl(r),s=null,u=null,a=null,f;return o.isLastHash(i)?(o.busy(!1),!1):(o.doubleCheckComplete(),o.saveHash(i),i&&o.isTraditionalAnchor(i)?(o.Adapter.trigger(e,"anchorchange"),o.busy(!1),!1):(s=o.extractState(o.getFullUrl(i||n.location.href,!1),!0),o.isLastSavedState(s)?(o.busy(!1),!1):(u=o.getHashByState(s),f=o.discardedState(s),f?(o.getHashByIndex(-2)===o.getHashByState(f.forwardState)?o.back(!1):o.forward(!1),!1):(o.pushState(s.data,s.title,s.url,!1),!0))))},o.Adapter.bind(e,"hashchange",o.onHashChange),o.pushState=function(t,r,i,s){if(o.getHashByUrl(i))throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(s!==!1&&o.busy())return o.pushQueue({scope:o,callback:o.pushState,args:arguments,queue:s}),!1;o.busy(!0);var u=o.createStateObject(t,r,i),a=o.getHashByState(u),f=o.getState(!1),l=o.getHashByState(f),c=o.getHash();return o.storeState(u),o.expectedStateId=u.id,o.recycleState(u),o.setTitle(u),a===l?(o.busy(!1),!1):a!==c&&a!==o.getShortUrl(n.location.href)?(o.setHash(a,!1),!1):(o.saveState(u),o.Adapter.trigger(e,"statechange"),o.busy(!1),!0)},o.replaceState=function(e,t,n,r){if(o.getHashByUrl(n))throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(r!==!1&&o.busy())return o.pushQueue({scope:o,callback:o.replaceState,args:arguments,queue:r}),!1;o.busy(!0);var i=o.createStateObject(e,t,n),s=o.getState(!1),u=o.getStateByIndex(-2);return o.discardState(s,i,u),o.pushState(i.data,i.title,i.url,!1),!0}),o.emulated.pushState&&o.getHash()&&!o.emulated.hashChange&&o.Adapter.onDomLoad(function(){o.Adapter.trigger(e,"hashchange")})},typeof o.init!="undefined"&&o.init()}(window),function(e,t){var n=e.console||t,r=e.document,i=e.navigator,s=e.sessionStorage||!1,o=e.setTimeout,u=e.clearTimeout,a=e.setInterval,f=e.clearInterval,l=e.JSON,c=e.alert,h=e.History=e.History||{},p=e.history;l.stringify=l.stringify||l.encode,l.parse=l.parse||l.decode;if(typeof h.init!="undefined")throw new Error("History.js Core has already been loaded...");h.init=function(){return typeof h.Adapter=="undefined"?!1:(typeof h.initCore!="undefined"&&h.initCore(),typeof h.initHtml4!="undefined"&&h.initHtml4(),!0)},h.initCore=function(){if(typeof h.initCore.initialized!="undefined")return!1;h.initCore.initialized=!0,h.options=h.options||{},h.options.hashChangeInterval=h.options.hashChangeInterval||100,h.options.safariPollInterval=h.options.safariPollInterval||500,h.options.doubleCheckInterval=h.options.doubleCheckInterval||500,h.options.storeInterval=h.options.storeInterval||1e3,h.options.busyDelay=h.options.busyDelay||250,h.options.debug=h.options.debug||!1,h.options.initialTitle=h.options.initialTitle||r.title,h.intervalList=[],h.clearAllIntervals=function(){var e,t=h.intervalList;if(typeof t!="undefined"&&t!==null){for(e=0;e<t.length;e++)f(t[e]);h.intervalList=null}},h.debug=function(){(h.options.debug||!1)&&h.log.apply(h,arguments)},h.log=function(){var e=typeof n!="undefined"&&typeof n.log!="undefined"&&typeof n.log.apply!="undefined",t=r.getElementById("log"),i,s,o,u,a;e?(u=Array.prototype.slice.call(arguments),i=u.shift(),typeof n.debug!="undefined"?n.debug.apply(n,[i,u]):n.log.apply(n,[i,u])):i="\n"+arguments[0]+"\n";for(s=1,o=arguments.length;s<o;++s){a=arguments[s];if(typeof a=="object"&&typeof l!="undefined")try{a=l.stringify(a)}catch(f){}i+="\n"+a+"\n"}return t?(t.value+=i+"\n-----\n",t.scrollTop=t.scrollHeight-t.clientHeight):e||c(i),!0},h.getInternetExplorerMajorVersion=function(){var e=h.getInternetExplorerMajorVersion.cached=typeof h.getInternetExplorerMajorVersion.cached!="undefined"?h.getInternetExplorerMajorVersion.cached:function(){var e=3,t=r.createElement("div"),n=t.getElementsByTagName("i");while((t.innerHTML="<!--[if gt IE "+ ++e+"]><i></i><![endif]-->")&&n[0]);return e>4?e:!1}();return e},h.isInternetExplorer=function(){var e=h.isInternetExplorer.cached=typeof h.isInternetExplorer.cached!="undefined"?h.isInternetExplorer.cached:Boolean(h.getInternetExplorerMajorVersion());return e},h.emulated={pushState:!Boolean(e.history&&e.history.pushState&&e.history.replaceState&&!/ Mobile\/([1-7][a-z]|(8([abcde]|f(1[0-8]))))/i.test(i.userAgent)&&!/AppleWebKit\/5([0-2]|3[0-2])/i.test(i.userAgent)),hashChange:Boolean(!("onhashchange"in e||"onhashchange"in r)||h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8)},h.enabled=!h.emulated.pushState,h.bugs={setHash:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),safariPoll:Boolean(!h.emulated.pushState&&i.vendor==="Apple Computer, Inc."&&/AppleWebKit\/5([0-2]|3[0-3])/.test(i.userAgent)),ieDoubleCheck:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8),hashEscape:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<7)},h.isEmptyObject=function(e){for(var t in e)return!1;return!0},h.cloneObject=function(e){var t,n;return e?(t=l.stringify(e),n=l.parse(t)):n={},n},h.getRootUrl=function(){var e=r.location.protocol+"//"+(r.location.hostname||r.location.host);if(r.location.port||!1)e+=":"+r.location.port;return e+="/",e},h.getBaseHref=function(){var e=r.getElementsByTagName("base"),t=null,n="";return e.length===1&&(t=e[0],n=t.href.replace(/[^\/]+$/,"")),n=n.replace(/\/+$/,""),n&&(n+="/"),n},h.getBaseUrl=function(){var e=h.getBaseHref()||h.getBasePageUrl()||h.getRootUrl();return e},h.getPageUrl=function(){var e=h.getState(!1,!1),t=(e||{}).url||r.location.href,n;return n=t.replace(/\/+$/,"").replace(/[^\/]+$/,function(e,t,n){return/\./.test(e)?e:e+"/"}),n},h.getBasePageUrl=function(){var e=r.location.href.replace(/[#\?].*/,"").replace(/[^\/]+$/,function(e,t,n){return/[^\/]$/.test(e)?"":e}).replace(/\/+$/,"")+"/";return e},h.getFullUrl=function(e,t){var n=e,r=e.substring(0,1);return t=typeof t=="undefined"?!0:t,/[a-z]+\:\/\//.test(e)||(r==="/"?n=h.getRootUrl()+e.replace(/^\/+/,""):r==="#"?n=h.getPageUrl().replace(/#.*/,"")+e:r==="?"?n=h.getPageUrl().replace(/[\?#].*/,"")+e:t?n=h.getBaseUrl()+e.replace(/^(\.\/)+/,""):n=h.getBasePageUrl()+e.replace(/^(\.\/)+/,"")),n.replace(/\#$/,"")},h.getShortUrl=function(e){var t=e,n=h.getBaseUrl(),r=h.getRootUrl();return h.emulated.pushState&&(t=t.replace(n,"")),t=t.replace(r,"/"),h.isTraditionalAnchor(t)&&(t="./"+t),t=t.replace(/^(\.\/)+/g,"./").replace(/\#$/,""),t},h.store={},h.idToState=h.idToState||{},h.stateToId=h.stateToId||{},h.urlToId=h.urlToId||{},h.storedStates=h.storedStates||[],h.savedStates=h.savedStates||[],h.normalizeStore=function(){h.store.idToState=h.store.idToState||{},h.store.urlToId=h.store.urlToId||{},h.store.stateToId=h.store.stateToId||{}},h.getState=function(e,t){typeof e=="undefined"&&(e=!0),typeof t=="undefined"&&(t=!0);var n=h.getLastSavedState();return!n&&t&&(n=h.createStateObject()),e&&(n=h.cloneObject(n),n.url=n.cleanUrl||n.url),n},h.getIdByState=function(e){var t=h.extractId(e.url),n;if(!t){n=h.getStateString(e);if(typeof h.stateToId[n]!="undefined")t=h.stateToId[n];else if(typeof h.store.stateToId[n]!="undefined")t=h.store.stateToId[n];else{for(;;){t=(new Date).getTime()+String(Math.random()).replace(/\D/g,"");if(typeof h.idToState[t]=="undefined"&&typeof h.store.idToState[t]=="undefined")break}h.stateToId[n]=t,h.idToState[t]=e}}return t},h.normalizeState=function(e){var t,n;if(!e||typeof e!="object")e={};if(typeof e.normalized!="undefined")return e;if(!e.data||typeof e.data!="object")e.data={};t={},t.normalized=!0,t.title=e.title||"",t.url=h.getFullUrl(h.unescapeString(e.url||r.location.href)),t.hash=h.getShortUrl(t.url),t.data=h.cloneObject(e.data),t.id=h.getIdByState(t),t.cleanUrl=t.url.replace(/\??\&_suid.*/,""),t.url=t.cleanUrl,n=!h.isEmptyObject(t.data);if(t.title||n)t.hash=h.getShortUrl(t.url).replace(/\??\&_suid.*/,""),/\?/.test(t.hash)||(t.hash+="?"),t.hash+="&_suid="+t.id;return t.hashedUrl=h.getFullUrl(t.hash),(h.emulated.pushState||h.bugs.safariPoll)&&h.hasUrlDuplicate(t)&&(t.url=t.hashedUrl),t},h.createStateObject=function(e,t,n){var r={data:e,title:t,url:n};return r=h.normalizeState(r),r},h.getStateById=function(e){e=String(e);var n=h.idToState[e]||h.store.idToState[e]||t;return n},h.getStateString=function(e){var t,n,r;return t=h.normalizeState(e),n={data:t.data,title:e.title,url:e.url},r=l.stringify(n),r},h.getStateId=function(e){var t,n;return t=h.normalizeState(e),n=t.id,n},h.getHashByState=function(e){var t,n;return t=h.normalizeState(e),n=t.hash,n},h.extractId=function(e){var t,n,r;return n=/(.*)\&_suid=([0-9]+)$/.exec(e),r=n?n[1]||e:e,t=n?String(n[2]||""):"",t||!1},h.isTraditionalAnchor=function(e){var t=!/[\/\?\.]/.test(e);return t},h.extractState=function(e,t){var n=null,r,i;return t=t||!1,r=h.extractId(e),r&&(n=h.getStateById(r)),n||(i=h.getFullUrl(e),r=h.getIdByUrl(i)||!1,r&&(n=h.getStateById(r)),!n&&t&&!h.isTraditionalAnchor(e)&&(n=h.createStateObject(null,null,i))),n},h.getIdByUrl=function(e){var n=h.urlToId[e]||h.store.urlToId[e]||t;return n},h.getLastSavedState=function(){return h.savedStates[h.savedStates.length-1]||t},h.getLastStoredState=function(){return h.storedStates[h.storedStates.length-1]||t},h.hasUrlDuplicate=function(e){var t=!1,n;return n=h.extractState(e.url),t=n&&n.id!==e.id,t},h.storeState=function(e){return h.urlToId[e.url]=e.id,h.storedStates.push(h.cloneObject(e)),e},h.isLastSavedState=function(e){var t=!1,n,r,i;return h.savedStates.length&&(n=e.id,r=h.getLastSavedState(),i=r.id,t=n===i),t},h.saveState=function(e){return h.isLastSavedState(e)?!1:(h.savedStates.push(h.cloneObject(e)),!0)},h.getStateByIndex=function(e){var t=null;return typeof e=="undefined"?t=h.savedStates[h.savedStates.length-1]:e<0?t=h.savedStates[h.savedStates.length+e]:t=h.savedStates[e],t},h.getHash=function(){var e=h.unescapeHash(r.location.hash);return e},h.unescapeString=function(t){var n=t,r;for(;;){r=e.unescape(n);if(r===n)break;n=r}return n},h.unescapeHash=function(e){var t=h.normalizeHash(e);return t=h.unescapeString(t),t},h.normalizeHash=function(e){var t=e.replace(/[^#]*#/,"").replace(/#.*/,"");return t},h.setHash=function(e,t){var n,i,s;return t!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.setHash,args:arguments,queue:t}),!1):(n=h.escapeHash(e),h.busy(!0),i=h.extractState(e,!0),i&&!h.emulated.pushState?h.pushState(i.data,i.title,i.url,!1):r.location.hash!==n&&(h.bugs.setHash?(s=h.getPageUrl(),h.pushState(null,null,s+"#"+n,!1)):r.location.hash=n),h)},h.escapeHash=function(t){var n=h.normalizeHash(t);return n=e.escape(n),h.bugs.hashEscape||(n=n.replace(/\%21/g,"!").replace(/\%26/g,"&").replace(/\%3D/g,"=").replace(/\%3F/g,"?")),n},h.getHashByUrl=function(e){var t=String(e).replace(/([^#]*)#?([^#]*)#?(.*)/,"$2");return t=h.unescapeHash(t),t},h.setTitle=function(e){var t=e.title,n;t||(n=h.getStateByIndex(0),n&&n.url===e.url&&(t=n.title||h.options.initialTitle));try{r.getElementsByTagName("title")[0].innerHTML=t.replace("<","&lt;").replace(">","&gt;").replace(" & "," &amp; ")}catch(i){}return r.title=t,h},h.queues=[],h.busy=function(e){typeof e!="undefined"?h.busy.flag=e:typeof h.busy.flag=="undefined"&&(h.busy.flag=!1);if(!h.busy.flag){u(h.busy.timeout);var t=function(){var e,n,r;if(h.busy.flag)return;for(e=h.queues.length-1;e>=0;--e){n=h.queues[e];if(n.length===0)continue;r=n.shift(),h.fireQueueItem(r),h.busy.timeout=o(t,h.options.busyDelay)}};h.busy.timeout=o(t,h.options.busyDelay)}return h.busy.flag},h.busy.flag=!1,h.fireQueueItem=function(e){return e.callback.apply(e.scope||h,e.args||[])},h.pushQueue=function(e){return h.queues[e.queue||0]=h.queues[e.queue||0]||[],h.queues[e.queue||0].push(e),h},h.queue=function(e,t){return typeof e=="function"&&(e={callback:e}),typeof t!="undefined"&&(e.queue=t),h.busy()?h.pushQueue(e):h.fireQueueItem(e),h},h.clearQueue=function(){return h.busy.flag=!1,h.queues=[],h},h.stateChanged=!1,h.doubleChecker=!1,h.doubleCheckComplete=function(){return h.stateChanged=!0,h.doubleCheckClear(),h},h.doubleCheckClear=function(){return h.doubleChecker&&(u(h.doubleChecker),h.doubleChecker=!1),h},h.doubleCheck=function(e){return h.stateChanged=!1,h.doubleCheckClear(),h.bugs.ieDoubleCheck&&(h.doubleChecker=o(function(){return h.doubleCheckClear(),h.stateChanged||e(),!0},h.options.doubleCheckInterval)),h},h.safariStatePoll=function(){var t=h.extractState(r.location.href),n;if(!h.isLastSavedState(t))return n=t,n||(n=h.createStateObject()),h.Adapter.trigger(e,"popstate"),h;return},h.back=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.back,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.back(!1)}),p.go(-1),!0)},h.forward=function(e){return e!==!1&&h.busy()?(h.pushQueue({scope:h,callback:h.forward,args:arguments,queue:e}),!1):(h.busy(!0),h.doubleCheck(function(){h.forward(!1)}),p.go(1),!0)},h.go=function(e,t){var n;if(e>0)for(n=1;n<=e;++n)h.forward(t);else{if(!(e<0))throw new Error("History.go: History.go requires a positive or negative integer passed.");for(n=-1;n>=e;--n)h.back(t)}return h};if(h.emulated.pushState){var d=function(){};h.pushState=h.pushState||d,h.replaceState=h.replaceState||d}else h.onPopState=function(t,n){var i=!1,s=!1,o,u;return h.doubleCheckComplete(),o=h.getHash(),o?(u=h.extractState(o||r.location.href,!0),u?h.replaceState(u.data,u.title,u.url,!1):(h.Adapter.trigger(e,"anchorchange"),h.busy(!1)),h.expectedStateId=!1,!1):(i=h.Adapter.extractEventData("state",t,n)||!1,i?s=h.getStateById(i):h.expectedStateId?s=h.getStateById(h.expectedStateId):s=h.extractState(r.location.href),s||(s=h.createStateObject(null,null,r.location.href)),h.expectedStateId=!1,h.isLastSavedState(s)?(h.busy(!1),!1):(h.storeState(s),h.saveState(s),h.setTitle(s),h.Adapter.trigger(e,"statechange"),h.busy(!1),!0))},h.Adapter.bind(e,"popstate",h.onPopState),h.pushState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.pushState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.pushState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0},h.replaceState=function(t,n,r,i){if(h.getHashByUrl(r)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(i!==!1&&h.busy())return h.pushQueue({scope:h,callback:h.replaceState,args:arguments,queue:i}),!1;h.busy(!0);var s=h.createStateObject(t,n,r);return h.isLastSavedState(s)?h.busy(!1):(h.storeState(s),h.expectedStateId=s.id,p.replaceState(s.id,s.title,s.url),h.Adapter.trigger(e,"popstate")),!0};if(s){try{h.store=l.parse(s.getItem("History.store"))||{}}catch(v){h.store={}}h.normalizeStore()}else h.store={},h.normalizeStore();h.Adapter.bind(e,"beforeunload",h.clearAllIntervals),h.Adapter.bind(e,"unload",h.clearAllIntervals),h.saveState(h.storeState(h.extractState(r.location.href,!0))),s&&(h.onUnload=function(){var e,t;try{e=l.parse(s.getItem("History.store"))||{}}catch(n){e={}}e.idToState=e.idToState||{},e.urlToId=e.urlToId||{},e.stateToId=e.stateToId||{};for(t in h.idToState){if(!h.idToState.hasOwnProperty(t))continue;e.idToState[t]=h.idToState[t]}for(t in h.urlToId){if(!h.urlToId.hasOwnProperty(t))continue;e.urlToId[t]=h.urlToId[t]}for(t in h.stateToId){if(!h.stateToId.hasOwnProperty(t))continue;e.stateToId[t]=h.stateToId[t]}h.store=e,h.normalizeStore(),s.setItem("History.store",l.stringify(e))},h.intervalList.push(a(h.onUnload,h.options.storeInterval)),h.Adapter.bind(e,"beforeunload",h.onUnload),h.Adapter.bind(e,"unload",h.onUnload));if(!h.emulated.pushState){h.bugs.safariPoll&&h.intervalList.push(a(h.safariStatePoll,h.options.safariPollInterval));if(i.vendor==="Apple Computer, Inc."||(i.appCodeName||"")==="Mozilla")h.Adapter.bind(e,"hashchange",function(){h.Adapter.trigger(e,"popstate")}),h.getHash()&&h.Adapter.onDomLoad(function(){h.Adapter.trigger(e,"hashchange")})}},h.init()}(window)}catch(t){}}),timely.define("external_libs/jquery.tablescroller",["jquery_timely"],function(e){function n(){if(t)return t;var n=e('<div style="width:50px;height:50px;overflow:hidden;position:absolute;top:-200px;left:-200px;"><div style="height:100px;"></div></div>');e("body").append(n);var r=e("div",n).innerWidth();n.css("overflow-y","auto");var i=e("div",n).innerWidth();return e(n).remove(),t=r-i,t}var t=0;e.fn.tableScroll=function(t){if(t=="undo"){var r=e(this).parent().parent();r.hasClass("tablescroll_wrapper")&&(r.find(".tablescroll_head thead").prependTo(this),r.find(".tablescroll_foot tfoot").appendTo(this),r.before(this),r.empty());return}var i=e.extend({},e.fn.tableScroll.defaults,t);return i.scrollbarWidth=n(),this.each(function(){var t=i.flush,n=e(this).addClass("tablescroll_body"),r=e('<div class="tablescroll_wrapper ai1ec-popover-boundary"></div>').insertBefore(n).append(n);r.parent("div").hasClass(i.containerClass)||e("<div></div>").addClass(i.containerClass).insertBefore(r).append(r);var s=i.width?i.width:n.outerWidth(),o=i.scroll?"auto":"hidden";r.css({width:s+"px",height:i.height+"px",overflow:o}),n.css("width",s+"px");var u=r.outerWidth(),a=u-s;r.css({width:s-a-2+"px"}),n.css("width",s-a-i.scrollbarWidth+"px"),n.outerHeight()<=i.height&&(r.css({height:"auto",width:s-a+"px"}),t=!1);var f=e("thead",n).length?!0:!1,l=e("tfoot",n).length?!0:!1,c=e("thead tr:first",n),h=e("tbody tr:first",n),p=e("tfoot tr:first",n),d=0;e("th, td",c).each(function(t){d=e(this).width(),e("th:eq("+t+"), td:eq("+t+")",c).css("width",d+"px"),e("th:eq("+t+"), td:eq("+t+")",h).css("width",d+"px"),l&&e("th:eq("+t+"), td:eq("+t+")",p).css("width",d+"px")});if(f)var v=e('<table class="tablescroll_head" cellspacing="0"></table>').insertBefore(r).prepend(e("thead",n));if(l)var m=e('<table class="tablescroll_foot" cellspacing="0"></table>').insertAfter(r).prepend(e("tfoot",n));v!=undefined&&(v.css("width",s+"px"),t&&(e("tr:first th:last, tr:first td:last",v).css("width",d+i.scrollbarWidth+"px"),v.css("width",r.outerWidth()+"px"))),m!=undefined&&(m.css("width",s+"px"),t&&(e("tr:first th:last, tr:first td:last",m).css("width",d+i.scrollbarWidth+"px"),m.css("width",r.outerWidth()+"px")))}),this},e.fn.tableScroll.defaults={flush:!0,width:null,height:100,containerClass:"tablescroll",scroll:!0}}),timely.define("external_libs/jquery.scrollTo",["jquery_timely"],function(e){function n(e){return typeof e=="object"?e:{top:e,left:e}}var t=e.scrollTo=function(t,n,r){e(window).scrollTo(t,n,r)};t.defaults={axis:"xy",duration:parseFloat(e.fn.jquery)>=1.3?0:1,limit:!0},t.window=function(t){return e(window)._scrollable()},e.fn._scrollable=function(){return this.map(function(){var t=this,n=!t.nodeName||e.inArray(t.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!n)return t;var r=(t.contentWindow||t).document||t.ownerDocument||t;return/webkit/i.test(navigator.userAgent)||r.compatMode=="BackCompat"?r.body:r.documentElement})},e.fn.scrollTo=function(r,i,s){return typeof i=="object"&&(s=i,i=0),typeof s=="function"&&(s={onAfter:s}),r=="max"&&(r=9e9),s=e.extend({},t.defaults,s),i=i||s.duration,s.queue=s.queue&&s.axis.length>1,s.queue&&(i/=2),s.offset=n(s.offset),s.over=n(s.over),this._scrollable().each(function(){function h(e){u.animate(l,i,s.easing,e&&function(){e.call(this,r,s)})}if(r==null)return;var o=this,u=e(o),a=r,f,l={},c=u.is("html,body");switch(typeof a){case"number":case"string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(a)){a=n(a);break}a=e(a,this);if(!a.length)return;case"object":if(a.is||a.style)f=(a=e(a)).offset()}e.each(s.axis.split(""),function(e,n){var r=n=="x"?"Left":"Top",i=r.toLowerCase(),p="scroll"+r,d=o[p],v=t.max(o,n);if(f)l[p]=f[i]+(c?0:d-u.offset()[i]),s.margin&&(l[p]-=parseInt(a.css("margin"+r))||0,l[p]-=parseInt(a.css("border"+r+"Width"))||0),l[p]+=s.offset[i]||0,s.over[i]&&(l[p]+=a[n=="x"?"width":"height"]()*s.over[i]);else{var m=a[i];l[p]=m.slice&&m.slice(-1)=="%"?parseFloat(m)/100*v:m}s.limit&&/^\d+$/.test(l[p])&&(l[p]=l[p]<=0?0:Math.min(l[p],v)),!e&&s.queue&&(d!=l[p]&&h(s.onAfterFirst),delete l[p])}),h(s.onAfter)}).end()},t.max=function(t,n){var r=n=="x"?"Width":"Height",i="scroll"+r;if(!e(t).is("html,body"))return t[i]-e(t)[r.toLowerCase()]();var s="client"+r,o=t.ownerDocument.documentElement,u=t.ownerDocument.body;return Math.max(o[i],u[i])-Math.min(o[s],u[s])}}),timely.define("external_libs/locales/bootstrap-datepicker.bg",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.bg={days:["Неделя","Понеделник","Вторник","Сряда","Четвъртък","Петък","Събота","Неделя"],daysShort:["Нед","Пон","Вто","Сря","Чет","Пет","Съб","Нед"],daysMin:["Н","П","В","С","Ч","П","С","Н"],months:["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември"],monthsShort:["Ян","Фев","Мар","Апр","Май","Юни","Юли","Авг","Сеп","Окт","Ное","Дек"],today:"днес"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.br",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.br={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"]}}}}),timely.define("external_libs/locales/bootstrap-datepicker.cs",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.cs={days:["Neděle","Pondělí","Úterý","Středa","Čtvrtek","Pátek","Sobota","Neděle"],daysShort:["Ned","Pon","Úte","Stř","Čtv","Pát","Sob","Ned"],daysMin:["Ne","Po","Út","St","Čt","Pá","So","Ne"],months:["Leden","Únor","Březen","Duben","Květen","Červen","Červenec","Srpen","Září","Říjen","Listopad","Prosinec"],monthsShort:["Led","Úno","Bře","Dub","Kvě","Čer","Čnc","Srp","Zář","Říj","Lis","Pro"],today:"Dnes"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.da",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.da={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør","Søn"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø","Sø"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",clear:"Nulstil"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.de",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam","Son"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa","So"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.es",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado","Domingo"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb","Dom"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa","Do"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.fi",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.fi={days:["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai","sunnuntai"],daysShort:["sun","maa","tii","kes","tor","per","lau","sun"],daysMin:["su","ma","ti","ke","to","pe","la","su"],months:["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],monthsShort:["tam","hel","maa","huh","tou","kes","hei","elo","syy","lok","mar","jou"],today:"tänään",weekStart:1,format:"d.m.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.fr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.fr={days:["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"],daysShort:["Dim","Lun","Mar","Mer","Jeu","Ven","Sam","Dim"],daysMin:["D","L","Ma","Me","J","V","S","D"],months:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],monthsShort:["Jan","Fév","Mar","Avr","Mai","Jui","Jul","Aou","Sep","Oct","Nov","Déc"],today:"Aujourd'hui",clear:"Effacer",weekStart:1,format:"dd/mm/yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.id",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.id={days:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu","Minggu"],daysShort:["Mgu","Sen","Sel","Rab","Kam","Jum","Sab","Mgu"],daysMin:["Mg","Sn","Sl","Ra","Ka","Ju","Sa","Mg"],months:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ags","Sep","Okt","Nov","Des"],today:"Hari Ini",clear:"Kosongkan"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.is",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.is={days:["Sunnudagur","Mánudagur","Þriðjudagur","Miðvikudagur","Fimmtudagur","Föstudagur","Laugardagur","Sunnudagur"],daysShort:["Sun","Mán","Þri","Mið","Fim","Fös","Lau","Sun"],daysMin:["Su","Má","Þr","Mi","Fi","Fö","La","Su"],months:["Janúar","Febrúar","Mars","Apríl","Maí","Júní","Júlí","Ágúst","September","Október","Nóvember","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Maí","Jún","Júl","Ágú","Sep","Okt","Nóv","Des"],today:"Í Dag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.it",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.it={days:["Domenica","Lunedì","Martedì","Mercoledì","Giovedì","Venerdì","Sabato","Domenica"],daysShort:["Dom","Lun","Mar","Mer","Gio","Ven","Sab","Dom"],daysMin:["Do","Lu","Ma","Me","Gi","Ve","Sa","Do"],months:["Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"],monthsShort:["Gen","Feb","Mar","Apr","Mag","Giu","Lug","Ago","Set","Ott","Nov","Dic"],today:"Oggi",clear:"Cancella",weekStart:1,format:"dd/mm/yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ja",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ja={days:["日曜","月曜","火曜","水曜","木曜","金曜","土曜","日曜"],daysShort:["日","月","火","水","木","金","土","日"],daysMin:["日","月","火","水","木","金","土","日"],months:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今日",format:"yyyy/mm/dd"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.kr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.kr={days:["일요일","월요일","화요일","수요일","목요일","금요일","토요일","일요일"],daysShort:["일","월","화","수","목","금","토","일"],daysMin:["일","월","화","수","목","금","토","일"],months:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],monthsShort:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"]}}}}),timely.define("external_libs/locales/bootstrap-datepicker.lt",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.lt={days:["Sekmadienis","Pirmadienis","Antradienis","Trečiadienis","Ketvirtadienis","Penktadienis","Šeštadienis","Sekmadienis"],daysShort:["S","Pr","A","T","K","Pn","Š","S"],daysMin:["Sk","Pr","An","Tr","Ke","Pn","Št","Sk"],months:["Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","Lapkritis","Gruodis"],monthsShort:["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rugp","Rugs","Spa","Lap","Gru"],today:"Šiandien",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.lv",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.lv={days:["Svētdiena","Pirmdiena","Otrdiena","Trešdiena","Ceturtdiena","Piektdiena","Sestdiena","Svētdiena"],daysShort:["Sv","P","O","T","C","Pk","S","Sv"],daysMin:["Sv","Pr","Ot","Tr","Ce","Pk","Se","Sv"],months:["Janvāris","Februāris","Marts","Aprīlis","Maijs","Jūnijs","Jūlijs","Augusts","Septembris","Oktobris","Novembris","Decembris"],monthsShort:["Jan","Feb","Mar","Apr","Mai","Jūn","Jūl","Aug","Sep","Okt","Nov","Dec"],today:"Šodien",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ms",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ms={days:["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu","Ahad"],daysShort:["Aha","Isn","Sel","Rab","Kha","Jum","Sab","Aha"],daysMin:["Ah","Is","Se","Ra","Kh","Ju","Sa","Ah"],months:["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"],monthsShort:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"],today:"Hari Ini"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.nb",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.nb={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag","Søndag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør","Søn"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø","Sø"],months:["Januar","Februar","Mars","April","Mai","Juni","Juli","August","September","Oktober","November","Desember"],monthsShort:["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Des"],today:"I Dag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.nl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.nl={days:["Zondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag","Zondag"],daysShort:["Zo","Ma","Di","Wo","Do","Vr","Za","Zo"],daysMin:["Zo","Ma","Di","Wo","Do","Vr","Za","Zo"],months:["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mrt","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"Vandaag"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.pl={days:["Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota","Niedziela"],daysShort:["Nie","Pn","Wt","Śr","Czw","Pt","So","Nie"],daysMin:["N","Pn","Wt","Śr","Cz","Pt","So","N"],months:["Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień"],monthsShort:["Sty","Lu","Mar","Kw","Maj","Cze","Lip","Sie","Wrz","Pa","Lis","Gru"],today:"Dzisiaj",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pt-BR",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["pt-BR"]={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",clear:"Limpar"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.pt",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.pt={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado","Domingo"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb","Dom"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa","Do"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",clear:"Limpar"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.ru",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.ru={days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота","Воскресенье"],daysShort:["Вск","Пнд","Втр","Срд","Чтв","Птн","Суб","Вск"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб","Вс"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.sl",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.sl={days:["Nedelja","Ponedeljek","Torek","Sreda","Četrtek","Petek","Sobota","Nedelja"],daysShort:["Ned","Pon","Tor","Sre","Čet","Pet","Sob","Ned"],daysMin:["Ne","Po","To","Sr","Če","Pe","So","Ne"],months:["Januar","Februar","Marec","April","Maj","Junij","Julij","Avgust","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danes"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.sv",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.sv={days:["Söndag","Måndag","Tisdag","Onsdag","Torsdag","Fredag","Lördag","Söndag"],daysShort:["Sön","Mån","Tis","Ons","Tor","Fre","Lör","Sön"],daysMin:["Sö","Må","Ti","On","To","Fr","Lö","Sö"],months:["Januari","Februari","Mars","April","Maj","Juni","Juli","Augusti","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",format:"yyyy-mm-dd",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.th",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.th={days:["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัส","ศุกร์","เสาร์","อาทิตย์"],daysShort:["อา","จ","อ","พ","พฤ","ศ","ส","อา"],daysMin:["อา","จ","อ","พ","พฤ","ศ","ส","อา"],months:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],monthsShort:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],today:"วันนี้"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.tr",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates.tr={days:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi","Pazar"],daysShort:["Pz","Pzt","Sal","Çrş","Prş","Cu","Cts","Pz"],daysMin:["Pz","Pzt","Sa","Çr","Pr","Cu","Ct","Pz"],months:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],monthsShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],today:"Bugün",format:"dd.mm.yyyy"}}}}),timely.define("external_libs/locales/bootstrap-datepicker.zh-CN",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["zh-CN"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日"],daysShort:["周日","周一","周二","周三","周四","周五","周六","周日"],daysMin:["日","一","二","三","四","五","六","日"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],today:"今日",format:"yyyy年mm月dd日",weekStart:1}}}}),timely.define("external_libs/locales/bootstrap-datepicker.zh-TW",["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["zh-TW"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六","星期日"],daysShort:["週日","週一","週二","週三","週四","週五","週六","週日"],daysMin:["日","一","二","三","四","五","六","日"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],today:"今天",format:"yyyy年mm月dd日",weekStart:1}}}}),timely.define("external_libs/bootstrap_datepicker",["jquery_timely","ai1ec_config","external_libs/locales/bootstrap-datepicker.bg","external_libs/locales/bootstrap-datepicker.br","external_libs/locales/bootstrap-datepicker.cs","external_libs/locales/bootstrap-datepicker.da","external_libs/locales/bootstrap-datepicker.de","external_libs/locales/bootstrap-datepicker.es","external_libs/locales/bootstrap-datepicker.fi","external_libs/locales/bootstrap-datepicker.fr","external_libs/locales/bootstrap-datepicker.id","external_libs/locales/bootstrap-datepicker.is","external_libs/locales/bootstrap-datepicker.it","external_libs/locales/bootstrap-datepicker.ja","external_libs/locales/bootstrap-datepicker.kr","external_libs/locales/bootstrap-datepicker.lt","external_libs/locales/bootstrap-datepicker.lv","external_libs/locales/bootstrap-datepicker.ms","external_libs/locales/bootstrap-datepicker.nb","external_libs/locales/bootstrap-datepicker.nl","external_libs/locales/bootstrap-datepicker.pl","external_libs/locales/bootstrap-datepicker.pt-BR","external_libs/locales/bootstrap-datepicker.pt","external_libs/locales/bootstrap-datepicker.ru","external_libs/locales/bootstrap-datepicker.sl","external_libs/locales/bootstrap-datepicker.sv","external_libs/locales/bootstrap-datepicker.th","external_libs/locales/bootstrap-datepicker.tr","external_libs/locales/bootstrap-datepicker.zh-CN","external_libs/locales/bootstrap-datepicker.zh-TW"],function(e,t){function r(){return new Date(Date.UTC.apply(Date,arguments))}function i(){var e=new Date;return r(e.getFullYear(),e.getMonth(),e.getDate())}function s(e){return function(){return this[e].apply(this,arguments)}}function f(t,n){var r=e(t).data(),i={},s,o=new RegExp("^"+n.toLowerCase()+"([A-Z])"),n=new RegExp("^"+n.toLowerCase());for(var u in r)n.test(u)&&(s=u.replace(o,function(e,t){return t.toLowerCase()}),i[s]=r[u]);return i}function l(t){var n={};if(!d[t]){t=t.split("-")[0];if(!d[t])return}var r=d[t];return e.each(p,function(e,t){t in r&&(n[t]=r[t])}),n}var n=e(window),o=function(){var t={get:function(e){return this.slice(e)[0]},contains:function(e){var t=e&&e.valueOf();for(var n=0,r=this.length;n<r;n++)if(this[n].valueOf()===t)return n;return-1},remove:function(e){this.splice(e,1)},replace:function(t){if(!t)return;e.isArray(t)||(t=[t]),this.clear(),this.push.apply(this,t)},clear:function(){this.splice(0)},copy:function(){var e=new o;return e.replace(this),e}};return function(){var n=[];return n.push.apply(n,arguments),e.extend(n,t),n}}(),u=function(t,n){this.dates=new o,this.viewDate=i(),this.focusDate=null,this._process_options(n),this.element=e(t),this.isInline=!1,this.isInput=this.element.is("input"),this.component=this.element.is(".ai1ec-date")?this.element.find(".ai1ec-input-group, .ai1ec-input-group-addon, .ai1ec-btn"):!1,this.hasInput=this.component&&this.element.find("input").length,this.component&&this.component.length===0&&(this.component=!1),this.picker=e(v.template),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("ai1ec-datepicker-inline").appendTo(this.element):this.picker.addClass("ai1ec-datepicker-dropdown ai1ec-dropdown-menu"),this.o.rtl&&this.picker.addClass("ai1ec-datepicker-rtl"),this.viewMode=this.o.startView,this.o.calendarWeeks&&this.picker.find("tfoot th.ai1ec-today").attr("colspan",function(e,t){return parseInt(t)+1}),this._allow_update=!1,this.setStartDate(this._o.startDate),this.setEndDate(this._o.endDate),this.setDaysOfWeekDisabled(this.o.daysOfWeekDisabled),this.fillDow(),this.fillMonths(),this._allow_update=!0,this.update(),this.showMode(),this.isInline&&this.show()};u.prototype={constructor:u,_process_options:function(n){this._o=e.extend({},this._o,n);var r=this.o=e.extend({},this._o),i=r.language;d[i]||(i=i.split("-")[0],d[i]||(i=t.language,d[i]||(i=h.language))),r.language=i;switch(r.startView){case 2:case"decade":r.startView=2;break;case 1:case"year":r.startView=1;break;default:r.startView=0}switch(r.minViewMode){case 1:case"months":r.minViewMode=1;break;case 2:case"years":r.minViewMode=2;break;default:r.minViewMode=0}r.startView=Math.max(r.startView,r.minViewMode),r.multidate!==!0&&(r.multidate=Number(r.multidate)||!1,r.multidate!==!1?r.multidate=Math.max(0,r.multidate):r.multidate=1),r.multidateSeparator=String(r.multidateSeparator),r.weekStart%=7,r.weekEnd=(r.weekStart+6)%7;var s=v.parseFormat(r.format);r.startDate!==-Infinity&&(r.startDate?r.startDate instanceof Date?r.startDate=this._local_to_utc(this._zero_time(r.startDate)):r.startDate=v.parseDate(r.startDate,s,r.language):r.startDate=-Infinity),r.endDate!==Infinity&&(r.endDate?r.endDate instanceof Date?r.endDate=this._local_to_utc(this._zero_time(r.endDate)):r.endDate=v.parseDate(r.endDate,s,r.language):r.endDate=Infinity),r.daysOfWeekDisabled=r.daysOfWeekDisabled||[],e.isArray(r.daysOfWeekDisabled)||(r.daysOfWeekDisabled=r.daysOfWeekDisabled.split(/[,\s]*/)),r.daysOfWeekDisabled=e.map(r.daysOfWeekDisabled,function(e){return parseInt(e,10)});var o=String(r.orientation).toLowerCase().split(/\s+/g),u=r.orientation.toLowerCase();o=e.grep(o,function(e){return/^auto|left|right|top|bottom$/.test(e)}),r.orientation={x:"auto",y:"auto"};if(!!u&&u!=="auto")if(o.length===1)switch(o[0]){case"top":case"bottom":r.orientation.y=o[0];break;case"left":case"right":r.orientation.x=o[0]}else u=e.grep(o,function(e){return/^left|right$/.test(e)}),r.orientation.x=u[0]||"auto",u=e.grep(o,function(e){return/^top|bottom$/.test(e)}),r.orientation.y=u[0]||"auto"},_events:[],_secondaryEvents:[],_applyEvents:function(e){for(var t=0,n,r,i;t<e.length;t++)n=e[t][0],e[t].length==2?(r=undefined,i=e[t][1]):e[t].length==3&&(r=e[t][1],i=e[t][2]),n.on(i,r)},_unapplyEvents:function(e){for(var t=0,n,r,i;t<e.length;t++)n=e[t][0],e[t].length==2?(i=undefined,r=e[t][1]):e[t].length==3&&(i=e[t][1],r=e[t][2]),n.off(r,i)},_buildEvents:function(){this.isInput?this._events=[[this.element,{focus:e.proxy(this.show,this),keyup:e.proxy(function(t){e.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:e.proxy(this.keydown,this)}]]:this.component&&this.hasInput?this._events=[[this.element.find("input"),{focus:e.proxy(this.show,this),keyup:e.proxy(function(t){e.inArray(t.keyCode,[27,37,39,38,40,32,13,9])===-1&&this.update()},this),keydown:e.proxy(this.keydown,this)}],[this.component,{click:e.proxy(this.show,this)}]]:this.element.is("div")?this.isInline=!0:this._events=[[this.element,{click:e.proxy(this.show,this)}]],this._events.push([this.element,"*",{blur:e.proxy(function(e){this._focused_from=e.target},this)}],[this.element,{blur:e.proxy(function(e){this._focused_from=e.target},this)}]),this._secondaryEvents=[[this.picker,{click:e.proxy(this.click,this)}],[e(window),{resize:e.proxy(this.place,this)}],[e(document),{"mousedown touchstart":e.proxy(function(e){this.element.is(e.target)||this.element.find(e.target).length||this.picker.is(e.target)||this.picker.find(e.target).length||this.hide()},this)}]]},_attachEvents:function(){this._detachEvents(),this._applyEvents(this._events)},_detachEvents:function(){this._unapplyEvents(this._events)},_attachSecondaryEvents:function(){this._detachSecondaryEvents(),this._applyEvents(this._secondaryEvents)},_detachSecondaryEvents:function(){this._unapplyEvents(this._secondaryEvents)},_trigger:function(t,n){var r=n||this.dates.get(-1),i=this._utc_to_local(r);this.element.trigger({type:t,date:i,dates:e.map(this.dates,this._utc_to_local),format:e.proxy(function(e,t){arguments.length===0?(e=this.dates.length-1,t=this.o.format):typeof e=="string"&&(t=e,e=this.dates.length-1),t=t||this.o.format;var n=this.dates.get(e);return v.formatDate(n,t,this.o.language)},this)})},show:function(e){this.isInline||this.picker.appendTo("body"),this.picker.show(),this.height=this.component?this.component.outerHeight():this.element.outerHeight(),this.place(),this._attachSecondaryEvents(),this._trigger("show")},hide:function(){if(this.isInline)return;if(!this.picker.is(":visible"))return;this.focusDate=null,this.picker.hide().detach(),this._detachSecondaryEvents(),this.viewMode=this.o.startView,this.showMode(),this.o.forceParse&&(this.isInput&&this.element.val()||this.hasInput&&this.element.find("input").val())&&this.setValue(),this._trigger("hide")},remove:function(){this.hide(),this._detachEvents(),this._detachSecondaryEvents(),this.picker.remove(),delete this.element.data().datepicker,this.isInput||delete this.element.data().date},_utc_to_local:function(e){return e&&new Date(e.getTime()+e.getTimezoneOffset()*6e4)},_local_to_utc:function(e){return e&&new Date(e.getTime()-e.getTimezoneOffset()*6e4)},_zero_time:function(e){return e&&new Date(e.getFullYear(),e.getMonth(),e.getDate())},_zero_utc_time:function(e){return e&&new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()))},getDates:function(){return e.map(this.dates,this._utc_to_local)},getUTCDates:function(){return e.map(this.dates,function(e){return new Date(e)})},getDate:function(){return this._utc_to_local(this.getUTCDate())},getUTCDate:function(){return new Date(this.dates.get(-1))},setDates:function(){this.update.apply(this,arguments),this._trigger("changeDate"),this.setValue()},setUTCDates:function(){this.update.apply(this,e.map(arguments,this._utc_to_local)),this._trigger("changeDate"),this.setValue()},setDate:s("setDates"),setUTCDate:s("setUTCDates"),setValue:function(){var e=this.getFormattedDate();this.isInput?this.element.val(e).change():this.component&&this.element.find("input").val(e).change()},getFormattedDate:function(t){t===undefined&&(t=this.o.format);var n=this.o.language;return e.map(this.dates,function(e){return v.formatDate(e,t,n)}).join(this.o.multidateSeparator)},setStartDate:function(e){this._process_options({startDate:e}),this.update(),this.updateNavArrows()},setEndDate:function(e){this._process_options({endDate:e}),this.update(),this.updateNavArrows()},setDaysOfWeekDisabled:function(e){this._process_options({daysOfWeekDisabled:e}),this.update(),this.updateNavArrows()},place:function(){if(this.isInline)return;var t=this.picker.outerWidth(),r=this.picker.outerHeight(),i=10,s=n.width(),o=n.height(),u=n.scrollTop(),a=parseInt(this.element.parents().filter(function(){return e(this).css("z-index")!="auto"}).first().css("z-index"))+10,f=this.component?this.component.parent().offset():this.element.offset(),l=this.component?this.component.outerHeight(!0):this.element.outerHeight(!1),c=this.component?this.component.outerWidth(!0):this.element.outerWidth(!1),h=f.left,p=f.top;this.picker.removeClass("ai1ec-datepicker-orient-top ai1ec-datepicker-orient-bottom ai1ec-datepicker-orient-right ai1ec-datepicker-orient-left"),this.o.orientation.x!=="auto"?(this.picker.addClass("ai1ec-datepicker-orient-"+this.o.orientation.x),this.o.orientation.x==="right"&&(h-=t-c)):(this.picker.addClass("ai1ec-datepicker-orient-left"),f.left<0?h-=f.left-i:f.left+t>s&&(h=s-t-i));var d=this.o.orientation.y,v,m;d==="auto"&&(v=-u+f.top-r,m=u+o-(f.top+l+r),Math.max(v,m)===m?d="top":d="bottom"),this.picker.addClass("ai1ec-datepicker-orient-"+d),d==="top"?p+=l:p-=r+parseInt(this.picker.css("padding-top")),this.picker.css({top:p,left:h,zIndex:a})},_allow_update:!0,update:function(){if(!this._allow_update)return;var t=this.dates.copy(),n=[],r=!1;arguments.length?(e.each(arguments,e.proxy(function(e,t){t instanceof Date&&(t=this._local_to_utc(t)),n.push(t)},this)),r=!0):(n=this.isInput?this.element.val():this.element.data("date")||this.element.find("input").val(),n&&this.o.multidate?n=n.split(this.o.multidateSeparator):n=[n],delete this.element.data().date),n=e.map(n,e.proxy(function(e){return v.parseDate(e,this.o.format,this.o.language)},this)),n=e.grep(n,e.proxy(function(e){return e<this.o.startDate||e>this.o.endDate||!e},this),!0),this.dates.replace(n),this.dates.length?this.viewDate=new Date(this.dates.get(-1)):this.viewDate<this.o.startDate?this.viewDate=new Date(this.o.startDate):this.viewDate>this.o.endDate&&(this.viewDate=new Date(this.o.endDate)),r?this.setValue():n.length&&String(t)!==String(this.dates)&&this._trigger("changeDate"),!this.dates.length&&t.length&&this._trigger("clearDate"),this.fill()},fillDow:function(){var e=this.o.weekStart,t="<tr>";if(this.o.calendarWeeks){var n='<th class="ai1ec-cw">&nbsp;</th>';t+=n,this.picker.find(".ai1ec-datepicker-days thead tr:first-child").prepend(n)}while(e<this.o.weekStart+7)t+='<th class="ai1ec-dow">'+d[this.o.language].daysMin[e++%7]+"</th>";t+="</tr>",this.picker.find(".ai1ec-datepicker-days thead").append(t)},fillMonths:function(){var e="",t=0;while(t<12)e+='<span class="ai1ec-month">'+d[this.o.language].monthsShort[t++]+"</span>";this.picker.find(".ai1ec-datepicker-months td").html(e)},setRange:function(t){!t||!t.length?delete this.range:this.range=e.map(t,function(e){return e.valueOf()}),this.fill()},getClassNames:function(t){var n=[],r=this.viewDate.getUTCFullYear(),i=this.viewDate.getUTCMonth(),s=new Date;return t.getUTCFullYear()<r||t.getUTCFullYear()==r&&t.getUTCMonth()<i?n.push("ai1ec-old"):(t.getUTCFullYear()>r||t.getUTCFullYear()==r&&t.getUTCMonth()>i)&&n.push("ai1ec-new"),this.focusDate&&t.valueOf()===this.focusDate.valueOf()&&n.push("ai1ec-focused"),this.o.todayHighlight&&t.getUTCFullYear()==s.getFullYear()&&t.getUTCMonth()==s.getMonth()&&t.getUTCDate()==s.getDate()&&n.push("ai1ec-today"),this.dates.contains(t)!==-1&&n.push("ai1ec-active"),(t.valueOf()<this.o.startDate||t.valueOf()>this.o.endDate||e.inArray(t.getUTCDay(),this.o.daysOfWeekDisabled)!==-1)&&n.push("ai1ec-disabled"),this.range&&(t>this.range[0]&&t<this.range[this.range.length-1]&&n.push("ai1ec-range"),e.inArray(t.valueOf(),this.range)!=-1&&n.push("ai1ec-selected")),n},fill:function(){var t=new Date(this.viewDate),n=t.getUTCFullYear(),i=t.getUTCMonth(),s=this.o.startDate!==-Infinity?this.o.startDate.getUTCFullYear():-Infinity,o=this.o.startDate!==-Infinity?this.o.startDate.getUTCMonth():-Infinity,u=this.o.endDate!==Infinity?this.o.endDate.getUTCFullYear():Infinity,a=this.o.endDate!==Infinity?this.o.endDate.getUTCMonth():Infinity,f,l;this.picker.find(".ai1ec-datepicker-days thead th.ai1ec-datepicker-switch").text(d[this.o.language].months[i]+" "+n),this.picker.find("tfoot th.ai1ec-today").text(d[this.o.language].today).toggle(this.o.todayBtn!==!1),this.picker.find("tfoot th.ai1ec-clear").text(d[this.o.language].clear).toggle(this.o.clearBtn!==!1),this.updateNavArrows(),this.fillMonths();var c=r(n,i-1,28),h=v.getDaysInMonth(c.getUTCFullYear(),c.getUTCMonth());c.setUTCDate(h),c.setUTCDate(h-(c.getUTCDay()-this.o.weekStart+7)%7);var p=new Date(c);p.setUTCDate(p.getUTCDate()+42),p=p.valueOf();var m=[],g;while(c.valueOf()<p){if(c.getUTCDay()==this.o.weekStart){m.push("<tr>");if(this.o.calendarWeeks){var y=new Date(+c+(this.o.weekStart-c.getUTCDay()-7)%7*864e5),b=new Date(+y+(11-y.getUTCDay())%7*864e5),w=new Date(+(w=r(b.getUTCFullYear(),0,1))+(11-w.getUTCDay())%7*864e5),E=(b-w)/864e5/7+1;m.push('<td class="ai1ec-cw">'+E+"</td>")}}g=this.getClassNames(c),g.push("ai1ec-day");if(this.o.beforeShowDay!==e.noop){var S=this.o.beforeShowDay(this._utc_to_local(c));S===undefined?S={}:typeof S=="boolean"?S={enabled:S}:typeof S=="string"&&(S={classes:S}),S.enabled===!1&&g.push("ai1ec-disabled"),S.classes&&(g=g.concat(S.classes.split(/\s+/))),S.tooltip&&(f=S.tooltip)}g=e.unique(g),m.push('<td class="'+g.join(" ")+'"'+(f?' title="'+f+'"':"")+">"+c.getUTCDate()+"</td>"),c.getUTCDay()==this.o.weekEnd&&m.push("</tr>"),c.setUTCDate(c.getUTCDate()+1)}this.picker.find(".ai1ec-datepicker-days tbody").empty().append(m.join(""));var x=this.picker.find(".ai1ec-datepicker-months").find("th:eq(1)").text(n).end().find("span").removeClass("ai1ec-active");e.each(this.dates,function(e,t){t.getUTCFullYear()==n&&x.eq(t.getUTCMonth()).addClass("ai1ec-active")}),(n<s||n>u)&&x.addClass("ai1ec-disabled"),n==s&&x.slice(0,o).addClass("ai1ec-disabled"),n==u&&x.slice(a+1).addClass("ai1ec-disabled"),m="",n=parseInt(n/10,10)*10;var T=this.picker.find(".ai1ec-datepicker-years").find("th:eq(1)").text(n+"-"+(n+9)).end().find("td");n-=1;var N=e.map(this.dates,function(e){return e.getUTCFullYear()}),C;for(var k=-1;k<11;k++)C=["ai1ec-year"],k===-1?C.push("ai1ec-old"):k===10&&C.push("ai1ec-new"),e.inArray(n,N)!==-1&&C.push("ai1ec-active"),(n<s||n>u)&&C.push("ai1ec-disabled"),m+='<span class="'+C.join(" ")+'">'+n+"</span>",n+=1;T.html(m)},updateNavArrows:function(){if(!this._allow_update)return;var e=new Date(this.viewDate),t=e.getUTCFullYear(),n=e.getUTCMonth();switch(this.viewMode){case 0:this.o.startDate!==-Infinity&&t<=this.o.startDate.getUTCFullYear()&&n<=this.o.startDate.getUTCMonth()?this.picker.find(".ai1ec-prev").css({visibility:"hidden"}):this.picker.find(".ai1ec-prev").css({visibility:"visible"}),this.o.endDate!==Infinity&&t>=this.o.endDate.getUTCFullYear()&&n>=this.o.endDate.getUTCMonth()?this.picker.find(".ai1ec-next").css({visibility:"hidden"}):this.picker.find(".ai1ec-next").css({visibility:"visible"});break;case 1:case 2:this.o.startDate!==-Infinity&&t<=this.o.startDate.getUTCFullYear()?this.picker.find(".ai1ec-prev").css({visibility:"hidden"}):this.picker.find(".ai1ec-prev").css({visibility:"visible"}),this.o.endDate!==Infinity&&t>=this.o.endDate.getUTCFullYear()?this.picker.find(".ai1ec-next").css({visibility:"hidden"}):this.picker.find(".ai1ec-next").css({visibility:"visible"})}},click:function(t){t.preventDefault();var n=e(t.target).closest("span, td, th"),i,s,o;if(n.length==1)switch(n[0].nodeName.toLowerCase()){case"th":switch(n[0].className){case"ai1ec-datepicker-switch":this.showMode(1);break;case"ai1ec-prev":case"ai1ec-next":var u=v.modes[this.viewMode].navStep*(n[0].className=="ai1ec-prev"?-1:1);switch(this.viewMode){case 0:this.viewDate=this.moveMonth(this.viewDate,u),this._trigger("changeMonth",this.viewDate);break;case 1:case 2:this.viewDate=this.moveYear(this.viewDate,u),this.viewMode===1&&this._trigger("changeYear",this.viewDate)}this.fill();break;case"ai1ec-today":var a=new Date;a=r(a.getFullYear(),a.getMonth(),a.getDate(),0,0,0),this.showMode(-2);var f=this.o.todayBtn=="linked"?null:"view";this._setDate(a,f);break;case"ai1ec-clear":var l;this.isInput?l=this.element:this.component&&(l=this.element.find("input")),l&&l.val("").change(),this.update(),this._trigger("changeDate"),this.o.autoclose&&this.hide()}break;case"span":n.is(".ai1ec-disabled")||(this.viewDate.setUTCDate(1),n.is(".ai1ec-month")?(o=1,s=n.parent().find("span").index(n),i=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(s),this._trigger("changeMonth",this.viewDate),this.o.minViewMode===1&&this._setDate(r(i,s,o))):(o=1,s=0,i=parseInt(n.text(),10)||0,this.viewDate.setUTCFullYear(i),this._trigger("changeYear",this.viewDate),this.o.minViewMode===2&&this._setDate(r(i,s,o))),this.showMode(-1),this.fill());break;case"td":n.is(".ai1ec-day")&&!n.is(".ai1ec-disabled")&&(o=parseInt(n.text(),10)||1,i=this.viewDate.getUTCFullYear(),s=this.viewDate.getUTCMonth(),n.is(".ai1ec-old")?s===0?(s=11,i-=1):s-=1:n.is(".ai1ec-new")&&(s==11?(s=0,i+=1):s+=1),this._setDate(r(i,s,o)))}this.picker.is(":visible")&&this._focused_from&&e(this._focused_from).focus(),delete this._focused_from},_toggle_multidate:function(e){var t=this.dates.contains(e);e?t!==-1?this.dates.remove(t):this.dates.push(e):this.dates.clear();if(typeof this.o.multidate=="number")while(this.dates.length>this.o.multidate)this.dates.remove(0)},_setDate:function(e,t){(!t||t=="date")&&this._toggle_multidate(e&&new Date(e));if(!t||t=="view")this.viewDate=e&&new Date(e);this.fill(),this.setValue(),this._trigger("changeDate");var n;this.isInput?n=this.element:this.component&&(n=this.element.find("input")),n&&n.change(),this.o.autoclose&&(!t||t=="date")&&this.hide()},moveMonth:function(e,t){if(!e)return undefined;if(!t)return e;var n=new Date(e.valueOf()),r=n.getUTCDate(),i=n.getUTCMonth(),s=Math.abs(t),o,u;t=t>0?1:-1;if(s==1){u=t==-1?function(){return n.getUTCMonth()==i}:function(){return n.getUTCMonth()!=o},o=i+t,n.setUTCMonth(o);if(o<0||o>11)o=(o+12)%12}else{for(var a=0;a<s;a++)n=this.moveMonth(n,t);o=n.getUTCMonth(),n.setUTCDate(r),u=function(){return o!=n.getUTCMonth()}}while(u())n.setUTCDate(--r),n.setUTCMonth(o);return n},moveYear:function(e,t){return this.moveMonth(e,t*12)},dateWithinRange:function(e){return e>=this.o.startDate&&e<=this.o.endDate},keydown:function(e){if(this.picker.is(":not(:visible)")){e.keyCode==27&&this.show();return}var t=!1,n,r,s,o=this.focusDate||this.viewDate;switch(e.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),e.preventDefault();break;case 37:case 39:if(!this.o.keyboardNavigation)break;n=e.keyCode==37?-1:1,e.ctrlKey?(r=this.moveYear(this.dates.get(-1)||i(),n),s=this.moveYear(o,n),this._trigger("changeYear",this.viewDate)):e.shiftKey?(r=this.moveMonth(this.dates.get(-1)||i(),n),s=this.moveMonth(o,n),this._trigger("changeMonth",this.viewDate)):(r=new Date(this.dates.get(-1)||i()),r.setUTCDate(r.getUTCDate()+n),s=new Date(o),s.setUTCDate(o.getUTCDate()+n)),this.dateWithinRange(r)&&(this.focusDate=this.viewDate=s,this.setValue(),this.fill(),e.preventDefault());break;case 38:case 40:if(!this.o.keyboardNavigation)break;n=e.keyCode==38?-1:1,e.ctrlKey?(r=this.moveYear(this.dates.get(-1)||i(),n),s=this.moveYear(o,n),this._trigger("changeYear",this.viewDate)):e.shiftKey?(r=this.moveMonth(this.dates.get(-1)||i(),n),s=this.moveMonth(o,n),this._trigger("changeMonth",this.viewDate)):(r=new Date(this.dates.get(-1)||i()),r.setUTCDate(r.getUTCDate()+n*7),s=new Date(o),s.setUTCDate(o.getUTCDate()+n*7)),this.dateWithinRange(r)&&(this.focusDate=this.viewDate=s,this.setValue(),this.fill(),e.preventDefault());break;case 32:break;case 13:o=this.focusDate||this.dates.get(-1)||this.viewDate,this._toggle_multidate(o),t=!0,this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(e.preventDefault(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}if(t){this.dates.length?this._trigger("changeDate"):this._trigger("clearDate");var u;this.isInput?u=this.element:this.component&&(u=this.element.find("input")),u&&u.change()}},showMode:function(e){e&&(this.viewMode=Math.max(this.o.minViewMode,Math.min(2,this.viewMode+e))),this.picker.find(">div").hide().filter(".ai1ec-datepicker-"+v.modes[this.viewMode].clsName).css("display","block"),this.updateNavArrows()}};var a=function(t,n){this.element=e(t),this.inputs=e.map(n.inputs,function(e){return e.jquery?e[0]:e}),delete n.inputs,e(this.inputs).datepicker(n).bind("changeDate",e.proxy(this.dateUpdated,this)),this.pickers=e.map(this.inputs,function(t){return e(t).data("datepicker")}),this.updateDates()};a.prototype={updateDates:function(){this.dates=e.map(this.pickers,function(e){return e.getUTCDate()}),this.updateRanges()},updateRanges:function(){var t=e.map(this.dates,function(e){return e.valueOf()});e.each(this.pickers,function(e,n){n.setRange(t)})},dateUpdated:function(t){if(this.updating)return;this.updating=!0;var n=e(t.target).data("datepicker"),r=n.getUTCDate(),i=e.inArray(t.target,this.inputs),s=this.inputs.length;if(i==-1)return;e.each(this.pickers,function(e,t){t.getUTCDate()||t.setUTCDate(r)});if(r<this.dates[i])while(i>=0&&r<this.dates[i])this.pickers[i--].setUTCDate(r);else if(r>this.dates[i])while(i<s&&r>this.dates[i])this.pickers[i++].setUTCDate(r);this.updateDates(),delete this.updating},remove:function(){e.map(this.pickers,function(e){e.remove()}),delete this.element.data().datepicker}};var c=e.fn.datepicker;e.fn.datepicker=function(t){var n=Array.apply(null,arguments);n.shift();var r;return this.each(function(){var i=e(this),s=i.data("datepicker"),o=typeof t=="object"&&t;if(!s){var c=f(this,"date"),p=e.extend({},h,c,o),d=l(p.language),v=e.extend({},h,d,c,o);if(i.is(".ai1ec-input-daterange")||v.inputs){var m={inputs:v.inputs||i.find("input").toArray()};i.data("datepicker",s=new a(this,e.extend(v,m)))}else i.data("datepicker",s=new u(this,v))}if(typeof t=="string"&&typeof s[t]=="function"){r=s[t].apply(s,n);if(r!==undefined)return!1}}),r!==undefined?r:this};var h=e.fn.datepicker.defaults={autoclose:!1,beforeShowDay:e.noop,calendarWeeks:!1,clearBtn:!1,daysOfWeekDisabled:[],endDate:Infinity,forceParse:!0,format:"mm/dd/yyyy",keyboardNavigation:!0,language:"en",minViewMode:0,multidate:!1,multidateSeparator:",",orientation:"auto",rtl:!1,startDate:-Infinity,startView:0,todayBtn:!1,todayHighlight:!1,weekStart:0},p=e.fn.datepicker.locale_opts=["format","rtl","weekStart"];e.fn.datepicker.Constructor=u;var d=e.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa","Su"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today",clear:"Clear"}},v={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(e){return e%4===0&&e%100!==0||e%400===0},getDaysInMonth:function(e,t){return[31,v.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},validParts:/dd?|DD?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\[\u3400-\u9fff-`{-~\t\n\r]+/g,parseFormat:function(e){var t=e.replace(this.validParts,"\0").split("\0"),n=e.match(this.validParts);if(!t||!t.length||!n||n.length===0)throw new Error("Invalid date format.");return{separators:t,parts:n}},parseDate:function(t,n,i){if(!t)return undefined;if(t instanceof Date)return t;typeof n=="string"&&(n=v.parseFormat(n));if(/^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/.test(t)){var s=/([\-+]\d+)([dmwy])/,o=t.match(/([\-+]\d+)([dmwy])/g),a,f;t=new Date;for(var l=0;l<o.length;l++){a=s.exec(o[l]),f=parseInt(a[1]);switch(a[2]){case"d":t.setUTCDate(t.getUTCDate()+f);break;case"m":t=u.prototype.moveMonth.call(u.prototype,t,f);break;case"w":t.setUTCDate(t.getUTCDate()+f*7);break;case"y":t=u.prototype.moveYear.call(u.prototype,t,f)}}return r(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),0,0,0)}var o=t&&t.match(this.nonpunctuation)||[],t=new Date,c={},h=["yyyy","yy","M","MM","m","mm","d","dd"],p={yyyy:function(e,t){return e.setUTCFullYear(t)},yy:function(e,t){return e.setUTCFullYear(2e3+t)},m:function(e,t){if(isNaN(e))return e;t-=1;while(t<0)t+=12;t%=12,e.setUTCMonth(t);while(e.getUTCMonth()!=t)e.setUTCDate(e.getUTCDate()-1);return e},d:function(e,t){return e.setUTCDate(t)}},m,g,a;p.M=p.MM=p.mm=p.m,p.dd=p.d,t=r(t.getFullYear(),t.getMonth(),t.getDate(),0,0,0);var y=n.parts.slice();o.length!=y.length&&(y=e(y).filter(function(t,n){return e.inArray(n,h)!==-1}).toArray());if(o.length==y.length){for(var l=0,b=y.length;l<b;l++){m=parseInt(o[l],10),a=y[l];if(isNaN(m))switch(a){case"MM":g=e(d[i].months).filter(function(){var e=this.slice(0,o[l].length),t=o[l].slice(0,e.length);return e==t}),m=e.inArray(g[0],d[i].months)+1;break;case"M":g=e(d[i].monthsShort).filter(function(){var e=this.slice(0,o[l].length),t=o[l].slice(0,e.length);return e==t}),m=e.inArray(g[0],d[i].monthsShort)+1}c[a]=m}for(var l=0,w,E;l<h.length;l++)E=h[l],E in c&&!isNaN(c[E])&&(w=new Date(t),p[E](w,c[E]),isNaN(w)||(t=w))}return t},formatDate:function(t,n,r){if(!t)return"";typeof n=="string"&&(n=v.parseFormat(n));var i={d:t.getUTCDate(),D:d[r].daysShort[t.getUTCDay()],DD:d[r].days[t.getUTCDay()],m:t.getUTCMonth()+1,M:d[r].monthsShort[t.getUTCMonth()],MM:d[r].months[t.getUTCMonth()],yy:t.getUTCFullYear().toString().substring(2),yyyy:t.getUTCFullYear()};i.dd=(i.d<10?"0":"")+i.d,i.mm=(i.m<10?"0":"")+i.m;var t=[],s=e.extend([],n.separators);for(var o=0,u=n.parts.length;o<=u;o++)s.length&&t.push(s.shift()),t.push(i[n.parts[o]]);return t.join("")},headTemplate:'<thead><tr><th class="ai1ec-prev"><i class="ai1ec-fa ai1ec-fa-arrow-left"></i></th><th colspan="5" class="ai1ec-datepicker-switch"></th><th class="ai1ec-next"><i class="ai1ec-fa ai1ec-fa-arrow-right"></i></th></tr></thead>',contTemplate:'<tbody><tr><td colspan="7"></td></tr></tbody>',footTemplate:'<tfoot><tr><th colspan="7" class="ai1ec-today"></th></tr><tr><th colspan="7" class="ai1ec-clear"></th></tr></tfoot>'};v.template='<div class="timely ai1ec-datepicker"><div class="ai1ec-datepicker-days"><table class=" ai1ec-table-condensed">'+v.headTemplate+"<tbody></tbody>"+v.footTemplate+"</table>"+"</div>"+'<div class="ai1ec-datepicker-months">'+'<table class="ai1ec-table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+"</table>"+"</div>"+'<div class="ai1ec-datepicker-years">'+'<table class="ai1ec-table-condensed">'+v.headTemplate+v.contTemplate+v.footTemplate+"</table>"+"</div>"+"</div>",e.fn.datepicker.DPGlobal=v,e.fn.datepicker.noConflict=function(){return e.fn.datepicker=c,this},e(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(t){var n=e(this);if(n.data("datepicker"))return;t.preventDefault(),n.datepicker("show")}),e(function(){e('[data-provide="datepicker-inline"]').datepicker()});for(var m=2,g=arguments.length;m<g;m++)arguments[m].localize()}),timely.define("external_libs/bootstrap/alert",["jquery_timely"],function(e){var t='[data-dismiss="ai1ec-alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function s(){i.trigger("closed.bs.alert").remove()}var n=e(this),r=n.attr("data-target");r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));var i=e(r);t&&t.preventDefault(),i.length||(i=n.hasClass("ai1ec-alert")?n:n.parent()),i.trigger(t=e.Event("close.bs.alert"));if(t.isDefaultPrevented())return;i.removeClass("ai1ec-in"),e.support.transition&&i.hasClass("ai1ec-fade")?i.one(e.support.transition.end,s).emulateTransitionEnd(150):s()};var r=e.fn.alert;e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("bs.alert");i||r.data("bs.alert",i=new n(this)),typeof t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e.fn.alert.noConflict=function(){return e.fn.alert=r,this},e(document).on("click.bs.alert.data-api",t,n.prototype.close)}),timely.define("external_libs/jquery_cookie",["jquery_timely"],function(e){function n(e){return u.raw?e:encodeURIComponent(e)}function r(e){return u.raw?e:decodeURIComponent(e)}function i(e){return n(u.json?JSON.stringify(e):String(e))}function s(e){e.indexOf('"')===0&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(t," ")),u.json?JSON.parse(e):e}catch(n){}}function o(t,n){var r=u.raw?t:s(t);return e.isFunction(n)?n(r):r}var t=/\+/g,u=e.cookie=function(t,s,a){if(s!==undefined&&!e.isFunction(s)){a=e.extend({},u.defaults,a);if(typeof a.expires=="number"){var f=a.expires,l=a.expires=new Date;l.setTime(+l+f*864e5)}return document.cookie=[n(t),"=",i(s),a.expires?"; expires="+a.expires.toUTCString():"",a.path?"; path="+a.path:"",a.domain?"; domain="+a.domain:"",a.secure?"; secure":""].join("")}var c=t?undefined:{},h=document.cookie?document.cookie.split("; "):[];for(var p=0,d=h.length;p<d;p++){var v=h[p].split("="),m=r(v.shift()),g=v.join("=");if(t&&t===m){c=o(g,s);break}!t&&(g=o(g))!==undefined&&(c[m]=g)}return c};u.defaults={},e.removeCookie=function(t,n){return e.cookie(t)===undefined?!1:(e.cookie(t,"",e.extend({},n,{expires:-1})),!e.cookie(t))}}),timely.define("scripts/calendar/load_views",["jquery_timely","scripts/calendar/print","scripts/calendar/agenda_view","scripts/calendar/month_view","libs/frontend_utils","libs/utils","ai1ec_calendar","ai1ec_config","scripts/common_scripts/frontend/common_frontend","libs/select2_multiselect_helper","external_libs/twig","agenda","oneday","month","external_libs/jquery_history","external_libs/jquery.tablescroller","external_libs/jquery.scrollTo","external_libs/bootstrap_datepicker","external_libs/bootstrap/alert","external_libs/jquery_cookie"],function(e,t,n,r,i,s,o,u,a,f,l,c,h,p){e.cookie.json=!0;var d="ai1ec_saved_filter",v=!e("#save_filtered_views").hasClass("ai1ec-hide");timely.renderer_map||(timely.renderer_map={}),e.extend(timely.renderer_map,{agenda:c,oneday:h,week:h,month:p});var m=function(e){var t=e.find("#ai1ec-view-dropdown .ai1ec-dropdown-menu .ai1ec-active a"),n=u.week_view_ends_at-u.week_view_starts_at,i=n*60;e.find("table.ai1ec-week-view-original").tableScroll({height:i,containerClass:"ai1ec-week-view ai1ec-popover-boundary",scroll:!1}),e.find("table.ai1ec-oneday-view-original").tableScroll({height:i,containerClass:"ai1ec-oneday-view ai1ec-popover-boundary",scroll:!1});if(e.find(".ai1ec-week-view").length||e.find(".ai1ec-oneday-view").length)e.find(".ai1ec-oneday-view .tablescroll_wrapper, .ai1ec-week-view .tablescroll_wrapper").scrollTo(e.find(".ai1ec-hour-marker:eq("+u.week_view_starts_at+")")),e.find(".ai1ec-hour-marker:eq("+u.week_view_starts_at+")").addClass("ai1ec-first-visible");e.find(".ai1ec-month-view .ai1ec-multiday").length&&r.extend_multiday_events(e),e.find(".ai1ec-calendar-view-container").data("ai1ec-inited",!0).trigger("initialize_view.ai1ec"),e.find(".ai1ec-calendar-toolbar").trigger("ai1ec-affix.reinit")},g=function(t){t.find(".ai1ec-calendar-view-container").trigger("destroy_view.ai1ec");var n=t.find(".ai1ec-minical-trigger").data("datepicker");typeof n!="undefined"&&(n.picker.remove(),e(document).off("changeDate",".ai1ec-minical-trigger")),t.find(".ai1ec-tooltip.ai1ec-in, .ai1ec-popup").remove(),t.find(".ai1ec-calendar-toolbar .ai1ec-btn-toolbar").remove()},y=function(){var t=[],n=[],r=[],i;e(".ai1ec-category-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){t.push(e(this).data("term"))}),e(".ai1ec-tag-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){n.push(e(this).data("term"))}),e(".ai1ec-author-filter .ai1ec-dropdown-menu .ai1ec-active").each(function(){r.push(e(this).data("term"))});var s={};return s.cat_ids=t,s.tag_ids=n,s.auth_ids=r,i=e(".ai1ec-views-dropdown .ai1ec-dropdown-menu .ai1ec-active").data("action"),s.action=i,s},b=function(){var t=History.getState(),n=e.cookie(d);if(null===n||undefined===n)n={};var r=y();u.is_calendar_page?n.calendar_page=r:n[t.url]=r,e.cookie(d,n,{path:"/",expires:365}),e("#save_filtered_views").addClass("ai1ec-active").attr("data-original-title",u.clear_saved_filter_text);var i=s.make_alert(u.save_filter_text_ok,"success");e("#ai1ec-calendar").prepend(i)},w=function(t){t.stopImmediatePropagation();var n=e.cookie(d);if(u.is_calendar_page)delete n.calendar_page;else{var r=History.getState();delete n[r.url]}e.cookie(d,n,{path:"/",expires:365}),e("#save_filtered_views").removeClass("ai1ec-active").attr("data-original-title",u.reset_saved_filter_text),v||e("#save_filtered_views").addClass("ai1ec-hide");var i=s.make_alert(u.remove_filter_text_ok,"success");e("#ai1ec-calendar").prepend(i)},E=!1,S={},x=function(t,n,r){D(t,n),t.find(".ai1ec-calendar-view-loading").fadeIn("fast").end().find(".ai1ec-calendar-view").fadeTo("fast",.3,function(){var i={request_type:r,ai1ec_doing_ajax:!0};e("#ai1ec-container > .ai1ec-alert").remove(),E&&1===E.readyState&&E.abort("ai1ec_abort"),S[n+i]?E=S[n+i]:(E=e.ajax({url:n,dataType:r,data:i,method:"GET"}),S[n+i]=E.promise()),E.done(function(i){e(document).trigger("calendar_view_loaded.ai1ec",t),g(t),typeof i.views_dropdown=="string"&&t.find(".ai1ec-views-dropdown").replaceWith(i.views_dropdown),typeof i.categories=="string"&&t.find(".ai1ec-category-filter").replaceWith(i.categories),typeof i.authors=="string"&&t.find(".ai1ec-author-filter").replaceWith(i.authors),typeof i.tags=="string"&&t.find(".ai1ec-tag-filter").replaceWith(i.tags);if(typeof i.custom_filters=="string"){var s=t.find("li.ai1ec-custom-filter").parent();t.find("li.ai1ec-custom-filter").remove(),s.append(i.custom_filters)}typeof i.subscribe_buttons=="string"&&t.find(".ai1ec-subscribe-container").empty().append(i.subscribe_buttons),typeof i.save_view_btngroup=="string"&&t.find("#save_filtered_views").closest(".ai1ec-btn-group").replaceWith(i.save_view_btngroup),v=i.are_filters_set;var o;if(i.is_json){var u=i.html.type;if(!timely.renderer_map[u]){x(t,n.replace(/\~json/,"~html"),r);return}o=timely.renderer_map[u]}t.find(".ai1ec-calendar-view").html(o?o.render(i.html):e(i.html).find(".ai1ec-calendar-view").length?e(i.html).find(".ai1ec-calendar-view").html():i.html),m(t)}),E.fail(function(n,r,i){if("ai1ec_abort"===r)return;var o=u.load_views_error;o=o.replace("%STATUS%",n.status),o=o.replace("%ERROR%",i);var a=s.make_alert(o,"error",!0);e("#ai1ec-container").prepend(a),g(t),m(t)}),E.always(function(){t.find(".ai1ec-calendar-view-loading").fadeOut("fast"),t.find(".ai1ec-calendar-view").fadeTo("fast",1)})})},T=!1,N=function(t){var n=History.getState(),r=e(".ai1ec-calendar:first");if(n.data.ai1ec!==undefined&&!0===n.data.ai1ec||!0===T)T=!0,x(r,n.url,"json")},C=function(e,t,n){if(t==="json"){var r={ai1ec:!0};History.pushState(r,document.title,decodeURI(n))}else x(e,n,"jsonp")},k=function(t){var n=e(this),r=n.closest(".ai1ec-calendar");t.preventDefault(),C(r,n.data("type"),n.attr("href"))},L=function(t){var n=e(this);t.preventDefault();if(typeof n.data("datepicker")=="undefined"){n.datepicker({todayBtn:"linked",todayHighlight:!0,language:n.data("lang")});var r=n.data("datepicker");if(n.closest(".ai1ec-pull-right").length>0){r.picker.addClass("ai1ec-right-aligned");var i=r.place;r.place=function(){i.call(this);var t=this.component?this.component:this.element,n=t.offset();this.picker.css({left:"auto",right:e(document).width()-n.left-t.outerWidth()})}}e(document).one("changeDate",".ai1ec-minical-trigger",A)}n.datepicker("show")},A=function(t){var n,r=e(this),i=r.closest(".ai1ec-calendar"),s;r.datepicker("hide"),n=r.data("href"),s=t.format(),s=s.replace(/\//g,"-"),n=n.replace("__DATE__",s),C(i,r.data("type"),n)},O=function(t){var n;typeof t.added!="undefined"?n=e(t.added.element).data("href"):n=e("option[value="+t.removed.id+"]",t.target).data("href");var r={ai1ec:!0};History.pushState(r,null,n)},M=function(){var t=e(this).closest(".ai1ec-calendar");return C(t,e(this).attr("data-type"),e(this).attr("data-href")),!1},_=u.ai1ec_permalinks_enabled?"/":"|",D=function(t,n){var r={},i=function(i,s){var o=e(".ai1ec-filters .ai1ec-load-view."+s.filter_class,t),u=e(s.filter_button,t),a=new RegExp(i+"~((,?[0-9]+)+)"),f=n.match(a),f=f&&f[1]?e.map(f[1].split(","),function(e){return parseInt(e,10)}):[];r[i]=f.join(","),o.each(function(){var t=this.href,n=e(this).closest("[data-term]"),r=n.data("term"),s=e.extend(!0,[],f);-1<e.inArray(r,f)?(s=e.grep(s,function(e){return r!=e}),n.addClass("ai1ec-active")):(s.push(r),n.removeClass("ai1ec-active"));var o=s.length?i+"~"+s.join(","):"";t.match(a)?this.href=t.replace(a,o):s.length&&(this.href+=_+o),this.href=P(this.href)}),e(s.filter_items,t).length?u.addClass("ai1ec-active"):u.removeClass("ai1ec-active"),e(".ai1ec-clear-filter",u).each(function(){e(this).attr("data-href",P(e(this).attr("data-href").replace(a,"")))})},s={};e("ul.ai1ec-filters > li",t).each(function(){var t=e(this),n=t.data("slug");s[n+"_ids"]={filter_class:"ai1ec-"+n,filter_button:"li.ai1ec-"+n+"-filter",filter_items:".ai1ec-"+n+"-filter .ai1ec-active"}});for(var o in s)i(o,s[o]);for(var o in r){var u=r[o],a=new RegExp(o+"~((,?[0-9]+)+)");e(".ai1ec-filters .ai1ec-load-view").each(function(){if(e(this).hasClass(s[o].filter_class))return;u?this.href.match(a)?this.href=this.href.replace(a,o+"~"+u):this.href=this.href+_+o+"~"+u:this.href=P(this.href.replace(a,""))}),e(".ai1ec-clear-filter",t).each(function(){var t=e(this),n=t.closest("[data-slug]").data("slug");n===o.substr(0,o.length-4)||!u?t.attr("data-href",P(t.attr("data-href").replace(a,""))):t.attr("data-href").match(a)?t.attr("data-href",P(t.attr("data-href").replace(a,o+"~"+u))):t.attr("data-href",P(t.attr("data-href")+_+o+"~"+u))})}},P=function(e){return"/"===_?e.replace(/\/\//g,"/").replace(/\/\//g,"/").replace(/:\//g,"://"):e.replace(/\|\|/g,"|").replace(/\|\|/g,"|")};return{initialize_view:m,handle_click_on_link_to_load_view:k,handle_minical_trigger:L,handle_minical_change_date:A,clear_filters:M,handle_state_change:N,load_view:x,save_current_filter:b,remove_current_filter:w,load_view_from_select2_filter:O,load_view_according_to_datatype:C}}),timely.define("scripts/calendar/calendar-affix",["jquery_timely","ai1ec_config"],function(e,t){var n=function(n){var r=n.find(".ai1ec-calendar-toolbar");r.length||(r=e("<div />",{"class":"timely ai1ec-calendar-toolbar ai1ec-empty-toolbar ai1ec-clearfix"}),n.prepend(r));var i=n.find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").css("clear","both"),s=r.find(".ai1ec-dropdown-toggle"),o=n.find("#ai1ec-calendar-view"),u=e("#wpadminbar"),a=r.offset().top,f=0,l=null,c=function(){return e("#ai1ec-bs-modes div:visible:first").text()},h=function(){var t=["xs","sm","md","lg"],n=e('<div id="ai1ec-bs-modes"></div>');for(var r in t)e('<div class="ai1ec-device-'+t[r]+" ai1ec-visible-"+t[r]+'">'+t[r]+"</div>").appendTo(n);n.appendTo("body")},p=function(){return parseInt(t["affix_vertical_offset_"+c()]||0)},d=function(){s.each(function(){e(this).contents().eq(-3).wrap('<div class="ai1ec-hidden" />')})},v=function(){s.find(".ai1ec-hidden").contents().unwrap()},m=function(){var e=0;"fixed"===u.css("position")&&(e=u.height()),r.css("top",e+p()+"px")},g=function(){return f},y=function(){f=a-("fixed"===u.css("position")?u.height():0)-p()},b=function(){r.height()>r.data("original_height")?(d(),r.height()>r.data("original_height")&&v()):v()},w=function(){n.find(".ai1ec-affix .ai1ec-views-dropdown").closest("div.ai1ec-clearfix").remove(),i=n.find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix"),s=r.find(".ai1ec-dropdown-toggle"),r.trigger("ai1ec-affix-top.bs.affix").find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").hide().end().end().data({original_height:r.height()}).find(".ai1ec-views-dropdown").closest("div.ai1ec-clearfix").show().end().end().filter(".ai1ec-affix").trigger("ai1ec-affix.bs.affix")},E=function(){r.hasClass("ai1ec-affix")&&r.addClass("ai1ec-was-affixed"),y(),r.removeClass("ai1ec-affix").css("width",n.width()).find(".ai1ec-btn-toolbar").hide().end().data({original_height:r.height()}),m(),a=r.offset().top,r.filter(".ai1ec-was-affixed").addClass("ai1ec-affix").removeClass("ai1ec-was-affixed").find(".ai1ec-btn-toolbar").show(),l=null};return h(),y(),r.data({original_height:r.height()}).css("width",n.width()).affix({offset:{top:g,bottom:0}}).on("ai1ec-affix.bs.affix",function(){var t=o.offset().top;i.hide().appendTo(r).show().css("opacity",0).animate({opacity:1},400),b(),m(),o.css("margin-top",r.outerHeight(!0)+parseInt(r.css("margin-bottom"))+"px"),e("body").addClass("ai1ec-has-affixed-toolbar")}).on("ai1ec-affix-top.bs.affix",function(){i.hide(),o.prepend(i),i.show().css("opacity",0).animate({opacity:1},400),v(),m(),o.css("margin-top",0),r.data("original_height",r.height()),e("body").removeClass("ai1ec-has-affixed-toolbar")}).on("ai1ec-affix.reinit",w).filter(".ai1ec-affix").trigger("ai1ec-affix.bs.affix"),e(window).on("resize.affix",function(){clearTimeout(l),l=setTimeout(E,100)}),n};return{initialize_affixed_toolbar:n}}),timely.define("external_libs/bootstrap/transition",["jquery_timely"],function(e){function t(){var e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var n in t)if(e.style[n]!==undefined)return{end:t[n]}}e.fn.emulateTransitionEnd=function(t){var n=!1,r=this;e(this).one(e.support.transition.end,function(){n=!0});var i=function(){n||e(r).trigger(e.support.transition.end)};return setTimeout(i,t),this},e(function(){e.support.transition=t()})}),timely.define("external_libs/bootstrap/modal",["jquery_timely"],function(e){var t=function(t,n){this.options=n,this.$element=e(t),this.$backdrop=this.isShown=null,this.options.remote&&this.$element.load(this.options.remote)};t.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},t.prototype.toggle=function(e){return this[this.isShown?"hide":"show"](e)},t.prototype.show=function(t){var n=this,r=e.Event("show.bs.modal",{relatedTarget:t});this.$element.trigger(r);if(this.isShown||r.isDefaultPrevented())return;this.isShown=!0,this.escape(),this.$element.on("click.dismiss.modal",'[data-dismiss="ai1ec-modal"]',e.proxy(this.hide,this)),this.backdrop(function(){var r=e.support.transition&&n.$element.hasClass("ai1ec-fade");n.$element.parent().length||n.$element.appendTo(document.body),n.$element.show(),r&&n.$element[0].offsetWidth,n.$element.addClass("ai1ec-in").attr("aria-hidden",!1),n.enforceFocus();var i=e.Event("shown.bs.modal",{relatedTarget:t});r?n.$element.find(".ai1ec-modal-dialog").one(e.support.transition.end,function(){n.$element.focus().trigger(i)}).emulateTransitionEnd(300):n.$element.focus().trigger(i)})},t.prototype.hide=function(t){t&&t.preventDefault(),t=e.Event("hide.bs.modal"),this.$element.trigger(t);if(!this.isShown||t.isDefaultPrevented())return;this.isShown=!1,this.escape(),e(document).off("focusin.bs.modal"),this.$element.removeClass("ai1ec-in").attr("aria-hidden",!0).off("click.dismiss.modal"),e.support.transition&&this.$element.hasClass("ai1ec-fade")?this.$element.one(e.support.transition.end,e.proxy(this.hideModal,this)).emulateTransitionEnd(300):this.hideModal()},t.prototype.enforceFocus=function(){e(document).off("focusin.bs.modal").on("focusin.bs.modal",e.proxy(function(e){this.$element[0]!==e.target&&!this.$element.has(e.target).length&&this.$element.focus()},this))},t.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keyup.dismiss.bs.modal",e.proxy(function(e){e.which==27&&this.hide()},this)):this.isShown||this.$element.off("keyup.dismiss.bs.modal")},t.prototype.hideModal=function(){var e=this;this.$element.hide(),this.backdrop(function(){e.removeBackdrop(),e.$element.trigger("hidden.bs.modal")})},t.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},t.prototype.backdrop=function(t){var n=this,r=this.$element.hasClass("ai1ec-fade")?"ai1ec-fade":"";if(this.isShown&&this.options.backdrop){var i=e.support.transition&&r;this.$backdrop=e('<div class="ai1ec-modal-backdrop '+r+'" />').appendTo(document.body),this.$element.on("click.dismiss.modal",e.proxy(function(e){if(e.target!==e.currentTarget)return;this.options.backdrop=="static"?this.$element[0].focus.call(this.$element[0]):this.hide.call(this)},this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("ai1ec-in");if(!t)return;i?this.$backdrop.one(e.support.transition.end,t).emulateTransitionEnd(150):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("ai1ec-in"),e.support.transition&&this.$element.hasClass("ai1ec-fade")?this.$backdrop.one(e.support.transition.end,t).emulateTransitionEnd(150):t()):t&&t()};var n=e.fn.modal;e.fn.modal=function(n,r){return this.each(function(){var i=e(this),s=i.data("bs.modal"),o=e.extend({},t.DEFAULTS,i.data(),typeof n=="object"&&n);s||i.data("bs.modal",s=new t(this,o)),typeof n=="string"?s[n](r):o.show&&s.show(r)})},e.fn.modal.Constructor=t,e.fn.modal.noConflict=function(){return e.fn.modal=n,this},e(document).on("click.bs.modal.data-api",'[data-toggle="ai1ec-modal"]',function(t){var n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s,this).one("hide",function(){n.is(":visible")&&n.focus()})}),e(document).on("show.bs.modal",".ai1ec-modal",function(){e(document.body).addClass("ai1ec-modal-open")}).on("hidden.bs.modal",".ai1ec-modal",function(){e(document.body).removeClass("ai1ec-modal-open")})}),timely.define("scripts/calendar",["jquery_timely","domReady","scripts/calendar/load_views","scripts/calendar/print","scripts/calendar/agenda_view","scripts/calendar/month_view","scripts/calendar/calendar-affix","ai1ec_calendar","ai1ec_config","scripts/common_scripts/frontend/common_frontend","libs/utils","libs/select2_multiselect_helper","external_libs/bootstrap/transition","external_libs/bootstrap/modal","external_libs/jquery.scrollTo","external_libs/jquery_cookie"],function(e,t,n,r,i,s,o,u,a,f,l,c){var h=function(){if(u.selector!==undefined&&u.selector!==""&&e(u.selector).length===1){var t=e(":header:contains("+u.title+"):first");t.length||(t=e('<h1 class="page-title"></h1>'),t.text(u.title));var n=e(".ai1ec-main-container:first").detach().before(t);e(u.selector).empty().append(n).hide().css("visibility","visible").fadeIn("fast")}},p=function(){var t=e(this).data("instanceId"),n=e(this).closest(".ai1ec-calendar");n.find(".ai1ec-event-instance-id-"+t).addClass("ai1ec-hover")},d=function(){var t=e(this).data("instanceId"),n=e(this).closest(".ai1ec-calendar");n.find(".ai1ec-event-instance-id-"+t).removeClass("ai1ec-hover")},v=function(){var t=e(this),n=t.closest(".ai1ec-calendar"),r=t.data("instanceId");t.delay(500).queue(function(){n.find(".ai1ec-event-instance-id-"+r).addClass("ai1ec-raised")})},m=function(t){var n=e(this),r=n.closest(".ai1ec-calendar"),i=n.data("instanceId"),s=e(t.toElement||t.relatedTarget),o=r.find(".ai1ec-event-instance-id-"+i);if(s.is(o)||s.parent().is(o))return;r.find(".ai1ec-event-instance-id-"+i).clearQueue().removeClass("ai1ec-raised")},g=function(){h()},y=function(){e(document).on({mouseenter:p,mouseleave:d},".ai1ec-event-container.ai1ec-multiday"),e(document).on({mouseenter:v,mouseleave:m},".ai1ec-oneday-view .ai1ec-oneday .ai1ec-event-container, .ai1ec-week-view .ai1ec-week .ai1ec-event-container"),e(document).on("click",".ai1ec-agenda-view .ai1ec-event-header",i.toggle_event),e(document).on("click","#ai1ec-agenda-expand-all",i.expand_all),e(document).on("click","#ai1ec-agenda-collapse-all",i.collapse_all),e(document).on("click","a.ai1ec-load-view",n.handle_click_on_link_to_load_view),e(document).on("click",".ai1ec-minical-trigger",n.handle_minical_trigger),e(document).on("click",".ai1ec-clear-filter",n.clear_filters),e(document).on("click","#ai1ec-print-button",r.handle_click_on_print_button),e(document).on("click",".ai1ec-reveal-full-day button",function(){var t=e(this).closest(".ai1ec-calendar");e(this).fadeOut();var n=t.find(".ai1ec-oneday-view-original, .ai1ec-week-view-original"),r=t.find(".tablescroll_wrapper").offset().top-n.offset().top;e(window).scrollTo("+="+r+"px",400);var i=1442;t.find(".tablescroll_wrapper").scrollTo("-="+r+"px",400).animate({height:i+"px"})}),History.Adapter.bind(window,"statechange",n.handle_state_change),e(document).on("click","#ai1ec-calendar-view .ai1ec-load-event",function(t){e.cookie.raw=!1,e.cookie("ai1ec_calendar_url",document.URL,{path:a.cookie_path})})},b=function(){c.init(e(".ai1ec-select2-filters")),e(document).on("change",".ai1ec-select2-multiselect-selector",n.load_view_from_select2_filter)};t(function(){var t=e(".ai1ec-calendar"),r=e(".ai1ec-calendar:visible").first();g(),a.use_select2&&b(),y(),t.each(function(){n.initialize_view(e(this))}),a.affix_filter_menu&&1===r.length&&o.initialize_affixed_toolbar(r)});var w=function(){};return{start:w,initialize_view:n.initialize_view}}),timely.require(["scripts/calendar"],function(e){e.start()}),timely.define("pages/calendar",function(){});
public/js/pages/event.js CHANGED
@@ -4,4 +4,4 @@
4
  * see: http://github.com/requirejs/domReady for details
5
  */
6
 
7
- timely.define("domReady",[],function(){function u(e){var t;for(t=0;t<e.length;t++)e[t](n)}function a(){var e=r;t&&e.length&&(r=[],u(e))}function f(){t||(t=!0,o&&clearInterval(o),a())}function c(e){return t?e(n):r.push(e),c}var e=typeof window!="undefined"&&window.document,t=!e,n=e?document:null,r=[],i,s,o;if(e){if(document.addEventListener)document.addEventListener("DOMContentLoaded",f,!1),window.addEventListener("load",f,!1);else if(window.attachEvent){window.attachEvent("onload",f),s=document.createElement("div");try{i=window.frameElement===null}catch(l){}s.doScroll&&i&&window.external&&(o=setInterval(function(){try{s.doScroll(),f()}catch(e){}},30))}(document.readyState==="complete"||document.readyState==="interactive")&&f()}return c.version="2.0.0",c.load=function(e,t,n,r){r.isBuild?n(null):c(n)},c}),timely.define("scripts/event/gmaps_helper",["jquery_timely"],function(e){var t=function(){var e={zoom:14,mapTypeId:google.maps.MapTypeId.ROADMAP},t=new google.maps.Map(document.getElementById("ai1ec-gmap-canvas"),e),n=new google.maps.Marker({map:t}),r=new google.maps.Geocoder;r.geocode({address:document.getElementById("ai1ec-gmap-address").value},function(e,r){r===google.maps.GeocoderStatus.OK&&(t.setCenter(e[0].geometry.location),n.setPosition(e[0].geometry.location))})},n=function(){var t=e(".ai1ec-gmap-container-hidden:first");e(this).remove(),t.hide(),t.removeClass("ai1ec-gmap-container-hidden"),t.fadeIn()};return{handle_show_map_when_clicking_on_placeholder:n,init_gmaps:t}}),timely.define("scripts/event",["jquery_timely","domReady","ai1ec_config","scripts/event/gmaps_helper"],function(e,t,n,r){var i=function(){e("#ai1ec-gmap-canvas").length>0&&timely.require(["libs/gmaps"],function(e){e(r.init_gmaps)})},s=function(){e(".ai1ec-gmap-placeholder:first").click(r.handle_show_map_when_clicking_on_placeholder)},o=function(){e("#timely-description img[data-ai1ec-hidden]").each(function(){var t=e(this),n=e("#timely-event-poster img").attr("src");t.attr("src")!=n&&t.removeAttr("data-ai1ec-hidden")})},u=function(){t(function(){i(),s(),o(),e(document).trigger("event_page_ready.ai1ec"),e("body").addClass("ai1ec-event-details-ready")})};return{start:u}}),timely.require(["scripts/event"],function(e){e.start()}),timely.define("pages/event",function(){});
4
  * see: http://github.com/requirejs/domReady for details
5
  */
6
 
7
+ timely.define("domReady",[],function(){function u(e){var t;for(t=0;t<e.length;t++)e[t](n)}function a(){var e=r;t&&e.length&&(r=[],u(e))}function f(){t||(t=!0,o&&clearInterval(o),a())}function c(e){return t?e(n):r.push(e),c}var e=typeof window!="undefined"&&window.document,t=!e,n=e?document:null,r=[],i,s,o;if(e){if(document.addEventListener)document.addEventListener("DOMContentLoaded",f,!1),window.addEventListener("load",f,!1);else if(window.attachEvent){window.attachEvent("onload",f),s=document.createElement("div");try{i=window.frameElement===null}catch(l){}s.doScroll&&i&&window.external&&(o=setInterval(function(){try{s.doScroll(),f()}catch(e){}},30))}(document.readyState==="complete"||document.readyState==="interactive")&&f()}return c.version="2.0.0",c.load=function(e,t,n,r){r.isBuild?n(null):c(n)},c}),timely.define("scripts/event/gmaps_helper",["jquery_timely"],function(e){var t=function(){var t=e("#ai1ec-gmap-address")[0].value.split(","),n=parseFloat(t[0]),r=parseFloat(t[1]),i=new google.maps.LatLng(n,r),s={zoom:14,mapTypeId:google.maps.MapTypeId.ROADMAP,scrollwheel:!1},o=new google.maps.Map(e("#ai1ec-gmap-canvas")[0],s),u=new google.maps.Marker({map:o}),a=new google.maps.Geocoder;n&&r&&i?(o.setCenter(i),u.setPosition(i)):a.geocode({address:e("#ai1ec-gmap-address")[0].value},function(e,t){t===google.maps.GeocoderStatus.OK&&(o.setCenter(e[0].geometry.location),u.setPosition(e[0].geometry.location))})},n=function(){var t=e(".ai1ec-gmap-container-hidden:first");e(this).remove(),t.hide(),t.removeClass("ai1ec-gmap-container-hidden"),t.fadeIn()};return{handle_show_map_when_clicking_on_placeholder:n,init_gmaps:t}}),timely.define("scripts/event",["jquery_timely","domReady","ai1ec_config","scripts/event/gmaps_helper"],function(e,t,n,r){var i=function(){e("#ai1ec-gmap-canvas").length>0&&timely.require(["libs/gmaps"],function(e){e(r.init_gmaps)})},s=function(){e(".ai1ec-gmap-placeholder:first").click(r.handle_show_map_when_clicking_on_placeholder)},o=function(){e("#timely-description img[data-ai1ec-hidden]").each(function(){var t=e(this),n=e("#timely-event-poster img").attr("src");t.attr("src")!=n&&t.removeAttr("data-ai1ec-hidden")})},u=function(){t(function(){i(),s(),o(),e(document).trigger("event_page_ready.ai1ec"),e("body").addClass("ai1ec-event-details-ready")})};return{start:u}}),timely.require(["scripts/event"],function(e){e.start()}),timely.define("pages/event",function(){});
public/js/scripts/calendar.js CHANGED
@@ -358,4 +358,4 @@ OTHER DEALINGS IN THE SOFTWARE.
358
  * limitations under the License.
359
  * ======================================================================== */
360
 
361
- timely.define("domReady",[],function(){function u(e){var t;for(t=0;t<e.length;t++)e[t](n)}function a(){var e=r;t&&e.length&&(r=[],u(e))}function f(){t||(t=!0,o&&clearInterval(o),a())}function c(e){return t?e(n):r.push(e),c}var e=typeof window!="undefined"&&window.document,t=!e,n=e?document:null,r=[],i,s,o;if(e){if(document.addEventListener)document.addEventListener("DOMContentLoaded",f,!1),window.addEventListener("load",f,!1);else if(window.attachEvent){window.attachEvent("onload",f),s=document.createElement("div");try{i=window.frameElement===null}catch(l){}s.doScroll&&i&&window.external&&(o=setInterval(function(){try{s.doScroll(),f()}catch(e){}},30))}(document.readyState==="complete"||document.readyState==="interactive")&&f()}return c.version="2.0.0",c.load=function(e,t,n,r){r.isBuild?n(null):c(n)},c}),timely.define("scripts/calendar/print",["jquery_timely"],function(e){var t=function(t){t.preventDefault();var n=e("body"),r=e("html"),i=e(this).closest(".ai1ec-calendar").html(),s=n.html();s=s.replace(/<script.*?>([\s\S]*?)<\/script>/gmi,""),n.empty(),n.addClass("timely"),r.addClass("ai1ec-print"),n.html(i),e("span").click(function(){return!1}),e(".ai1ec-agenda-view a").each(function(){e(this).data("href",e(this).attr("href")),e(this).attr("href","#")}),window.print(),e(".ai1ec-agenda-view a").each(function(){e(this).attr("href",e(this).data("href")),e(this).data("href","")}),n.removeClass("timely"),r.removeClass("ai1ec-print"),n.html(s)};return{handle_click_on_print_button:t}}),timely.define("scripts/calendar/agenda_view",["jquery_timely"],function(e){var t=function(){e(this).closest(".ai1ec-event").toggleClass("ai1ec-expanded").find(".ai1ec-event-summary").slideToggle(300)},n=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-expanded .ai1ec-event-toggle").click()},r=function(){var t=e(this).closest(".ai1ec-calendar");t.find(".ai1ec-event:not(.ai1ec-expanded) .ai1ec-event-toggle").click()};return{toggle_event:t,collapse_all:n,expand_all:r}}),timely.define("external_libs/modernizr",[],function(){var e=function(e,t,n){function S(e){f.cssText=e}function x(e,t){return S(h.join(e+";")+(t||""))}function T(e,t){return typeof e===t}function N(e,t){return!!~(""+e).indexOf(t)}function C(e,t,r){for(var i in e){var s=t[e[i]];if(s!==n)return r===!1?e[i]:T(s,"function")?s.bind(r||t):s}return!1}var r="2.5.3",i={},s=!0,o=t.documentElement,u="modernizr",a=t.createElement(u),f=a.style,l,c={}.toString,h=" -webkit- -moz- -o- -ms- ".split(" "),p={},d={},v={},m=[],g=m.slice,y,b=function(e,n,r,i){var s,a,f,l=t.createElement("div"),c=t.body,h=c?c:t.createElement("body");if(parseInt(r,10))while(r--)f=t.createElement("div"),f.id=i?i[r]:u+(r+1),l.appendChild(f);return s=["&#173;","<style>",e,"</style>"].join(""),l.id=u,(c?l:h).innerHTML+=s,h.appendChild(l),c||(h.style.background="",o.appendChild(h)),a=n(l,e),c?l.parentNode.removeChild(l):h.parentNode.removeChild(h),!!a},w={}.hasOwnProperty,E;!T(w,"undefined")&&!T(w.call,"undefined")?E=function(e,t){return w.call(e,t)}:E=function(e,t){return t in e&&T(e.constructor.prototype[t],"undefined")},Fun
358
  * limitations under the License.
359
  * ======================================================================== */
360