<?php
// phpcs:disable WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound
// phpcs:disable WordPress.WP.I18n.MissingTranslatorsComment

// Don't load directly
if (!defined('ABSPATH')) { exit; }

// Dynamically load ACF field groups, allowing for translation and other dynamic settings
if (function_exists('acf_add_local_field_group')) {
	include_once(ABSPATH . WPINC . '/class-wp-locale.php');
	$wp_locale = new WP_Locale;
	
	// Define field group
	$field_group = array(
		'key' => 'group_5e0b65c271d0a',

		'title' => sprintf(__('%1$s Configuration', 'ics-calendar-pro'), 'ICS Calendar'),
		'fields' => array(
		
			/***********************************************************************
			 *  GENERAL
			 ***********************************************************************/
		
			array(
				'key' => 'field_5e0b8b701203e',
				'label' => __('General', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_5e0b6b022916c',

				'label' => __('Calendar Source Feeds', 'ics-calendar-pro'),
				'name' => 'feeds',
				'type' => 'repeater',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' .
					(!get_option('r34icspro_enable_event_cpt')

						?	' ' . sprintf(__('If the %1$s source option is not appearing, you can turn it on with %2$s on the %3$s page.', 'ics-calendar-pro'),
								'<em>' . __('ICS Events', 'ics-calendar-pro') . '</em>',
								'<strong>' . __('Enable ICS Events', 'ics-calendar-pro') . '</strong>',
								'<a href="' . admin_url('edit.php?post_type=r34icspro_calendar&page=ics-calendar-pro-settings#settings') . '" target="_blank">' . __('Settings', 'ics-calendar-pro') . '</a>'
							) . '<br /><br />'
						: ''
					) .

					sprintf(__('For %1$sURL%2$s, make sure you are using the iCalendar subscription URL, not a web view URL. You can test the URL by loading it directly in your web browser. If this does not download an %3$s file, your feed will not display properly.', 'ics-calendar-pro'),
						'<strong>',
						'</strong>',
						'<strong>.ics</strong>'
					) .
					'<br /><br />' .

					sprintf(__('%1$sTimezone%2$s defaults to your WordPress %3$sTimezone%4$s setting.', 'ics-calendar-pro'),
						'<strong>',
						'</strong>',
						'<a href="' . admin_url('options-general.php#timezone_string') . '" target="_blank">',
						'</a>'
					) .
					'<br /><br />' .

					sprintf(__('With the %1$sHidden on Load%2$s option checked, when the page loads this feed will be %3$sunchecked%4$s in the legend, and its events will be hidden or de-emphasized.', 'ics-calendar-pro'),
						'<strong>',
						'</strong>',
						'<em>',
						'</em>'
					) .
					'</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'collapsed' => 'field_5e0b6b422916d',
				'min' => 1,
				'max' => '',
				'layout' => 'block',
				'button_label' => __('Add Another Feed', 'ics-calendar-pro'),
				'sub_fields' => array(
					array(
						'key' => 'field_666b056e863b0',
						'label' => __('Source', 'ics-calendar-pro'),
						'name' => 'icsfeedsource',
						'type' => 'radio',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '25',
							'class' => '',
							'id' => '',
						),
						'choices' => array(
							'feed_url' => __('URL', 'ics-calendar-pro'),
							'ics_events' => __('ICS Events', 'ics-calendar-pro'),
						),
						'default_value' => 'feed_url',
						'allow_null' => 0,
						'layout' => 'horizontal',
						'return_format' => 'value',
						'ajax' => 0,
						'placeholder' => '',
					),
					array(
						'key' => 'field_5e0b6b422916d',
						'label' => __('ICS Feed URL', 'ics-calendar-pro'),
						'name' => 'url',
						'type' => 'url',
						'instructions' => '',
						'required' => 1,
						'conditional_logic' => array(
							array(
								array(
									'field' => 'field_666b056e863b0',
									'operator' => '==',
									'value' => 'feed_url',
								),
							),
						),
						'wrapper' => array(
							'width' => (get_option('r34icspro_enable_event_cpt') ? '50' : '75'),
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => __('Enter feed URL...', 'ics-calendar-pro'),
					),
					array(
						'key' => 'field_666b07f33ec78',
						'label' => __('Category', 'ics-calendar-pro') . ' ' . __('(optional)', 'ics-calendar-pro'),
						'name' => 'icseventscategory',
						'type' => 'taxonomy',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => array(
							array(
								array(
									'field' => 'field_666b056e863b0',
									'operator' => '==',
									'value' => 'ics_events',
								),
							),
						),
						'wrapper' => array(
							'width' => (get_option('r34icspro_enable_event_cpt') ? '50' : '75'),
							'class' => '',
							'id' => '',
						),
						'taxonomy' => 'r34icspro_event_category',
						'add_term' => 0,
						'save_terms' => 0,
						'load_terms' => 0,
						'return_format' => 'id',
						'field_type' => 'radio', // @todo Determine why 'select' stopped working and why changing the key seemed like it might fix it!
						'allow_null' => 1,
						'bidirectional' => 0,
						'multiple' => 0,
					),
					array(
						'key' => 'field_5f81ed79c528e',
						'label' => __('Timezone', 'ics-calendar-pro'),
						'name' => 'tz',
						'type' => 'select',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => 25,
							'class' => '',
							'id' => '',
						),
						'choices' => r34icspro_tz_dropdown(array(), false, true),
						'default_value' => get_option('timezone_string'),
						'allow_null' => 1,
						'multiple' => 0,
						'ui' => 0,
						'return_format' => 'value',
						'ajax' => 0,
						'placeholder' => '',
					),
					array(
						'key' => 'field_66d86ae49e463',
						'label' => '&nbsp;',
						'name' => 'hiddenonload',
						'type' => 'true_false',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '25',
							'class' => 'clear small',
							'id' => '',
						),
						'message' => __('Hidden on Load', 'ics-calendar-pro'),
						'default_value' => 0,
						'ui' => 0,
						'ui_on_text' => '',
						'ui_off_text' => '',
					),
					array(
						'key' => 'field_5e0b9139119b6',
						'label' => __('Label', 'ics-calendar-pro'),
						'name' => 'feedlabel',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => 50,
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '',
						'append' => '',
						'maxlength' => '',
					),
					array(
						'key' => 'field_5e0b7daf4a1e6',
						'label' => __('Color', 'ics-calendar-pro'),
						'name' => 'color',
						'type' => 'color_picker',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '25',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
					),
				),
			),
			array(
				'key' => 'field_5e0b6d6103f5c',
				'label' => __('View', 'ics-calendar-pro'),
				'name' => 'view',
				'type' => 'radio',
				'instructions' => '',
				'allow_bulkedit' => 1,
				'allow_quickedit' => 1,
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-1000-max',
					'id' => '',
				),
				'choices' => array(
					'month' => '<strong>' . __('Month', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('month table view (default)', 'ics-calendar-pro') . '</span>',
					'basic' => '<strong>' . __('Basic', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('basic event list', 'ics-calendar-pro') . '</span>',
					'list' => '<strong>' . __('List', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('a simple day-by-day list', 'ics-calendar-pro') . '</span>',
					'week' => '<strong>' . __('Week', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('single week table view', 'ics-calendar-pro') . '</span>',
					'full' => '<strong>' . __('Full', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('month/week/day/list/year tabs', 'ics-calendar-pro') . '</span>',
					'masonry' => '<strong>' . __('Masonry', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('dynamic tiled layout', 'ics-calendar-pro') . '</span>',
					'month-with-sidebar' => '<strong>' . __('Month with Sidebar', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('month view with day list in sidebar', 'ics-calendar-pro') . '</span>',
					'up-next' => '<strong>' . __('Up Next', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('the current or next upcoming event', 'ics-calendar-pro') . '</span>',
					'widget' => '<strong>' . __('Widget', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('mini month with day list below', 'ics-calendar-pro') . '</span>',
					'widget-availability' => '<strong>' . __('Widget Availability', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('mini month optimized for rental bookings', 'ics-calendar-pro') . '</span>',
					'year-availability' => '<strong>' . __('Year Availability', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('year view optimized for rental bookings', 'ics-calendar-pro') . '</span>',
					'year-with-sidebar' => '<strong>' . __('Year with Sidebar', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('year-at-a-glance with day list in sidebar', 'ics-calendar-pro') . '</span>',
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'month',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_65a0526e9a940',
				'label' => __('Use Local (Client) Timezone', 'ics-calendar-pro'),
				'name' => 'use_client_tz',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Uses JavaScript to detect the timezone on the client side and renders the calendar with all event times in that timezone. Does not store any cookies.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_63a5de25f1fba',
						'operator' => '==',
						'value' => '1',
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Display all events in the local timezone of the user', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6415c5662989a',
				'label' => __('Combined Availability', 'ics-calendar-pro'),
				'name' => 'combined_availability',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Applies only to calendars that contain multiple feed URLs', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),

				'message' => sprintf(__('Only indicate a date as booked if %1$sall%2$s feeds are booked for that date', 'ics-calendar-pro'), '<em>', '</em>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6415c7da86bb1',
				'label' => __('No Angled Backgrounds', 'ics-calendar-pro'),
				'name' => 'no_angled_backgrounds',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),

				'message' => sprintf(__('Do not show angled backgrounds on "check-in"/"check-out" dates', 'ics-calendar-pro'), '<em>', '</em>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6047ce1d71f1f',
				'label' => __('Widget Availability / Year Availability Usage Notes', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'message',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('This view is intended to show booking availability for holiday rentals. Please note the following when using this view:%1$s This view only blocks out dates; no additional event details are displayed.%2$s If your calendar contains multiple feeds, check the %3$sCombined Availability%4$s box above to show the date as "empty" (available) if %5$sany%6$s units are available; by default, a date will be shown as "booked" if %7$sany%8$s units are booked.%9$s Unless %10$sNo Angled Backgrounds%11$s is checked above, the beginning and end dates of a multi-date booking are shown with an angled background to indicate partial availability on the given dates (i.e. "check-in"/"check-out" dates). %12$s If your bookings are ending one day early, check the "Extend Multiday Events" box under the "Advanced" tab above.%13$s Background colors for "booked" and "empty" dates can be customized under the  %14$sAdvanced%15$s tab above.%16$s', 'ics-calendar-pro'), '<br /><ol><li>', '</li><li>', '<strong>', '</strong>', '<em>', '</em>', '<em>', '</em>', '</li><li>', '<strong>', '</strong>', '<strong style="color: var(--r34ics--color--ics-red);">', '</strong></li><li>', '<strong>', '</strong>', '</li></ol>'),
				'new_lines' => '',
				'esc_html' => 0,
			),
			array(
				'key' => 'field_5e0b779e3469c',
				'label' => __('Count', 'ics-calendar-pro'),
				'name' => 'count',
				'type' => 'number',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Number of events to display in List or Basic view. If also using %1$sPagination%2$s, this should be set to the %3$stotal number of events%4$s you wish to include across all of the pages.', 'ics-calendar-pro'), '<strong>', '</strong>', '<em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => '5',
				'placeholder' => '5',
				'prepend' => '',
				'append' => __('events', 'ics-calendar-pro'),
				'min' => 0,
				'max' => '',
				'step' => 1,
			),
			array(
				'key' => 'field_63c5d15ec1177',
				'label' => __('Pagination', 'ics-calendar-pro'),
				'name' => 'pagination',
				'type' => 'number',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Enter the number of events to display per page. Be sure to set %1$sCount%2$s to the %3$stotal number of events%4$s you wish to include across all of the pages. Note: Pagination is approximate in List view; events occurring on the same date will not be split across multiple pages. Pagination is exact in Basic view.', 'ics-calendar-pro'), '<strong>', '</strong>', '<em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => '0',
				'placeholder' => '',
				'prepend' => '',
				'append' => __('events', 'ics-calendar-pro'),
				'min' => 0,
				'max' => '',
				'step' => 1,
			),
			array(
				'key' => 'field_641e05d688644',
				'label' => __('Pagination Position', 'ics-calendar-pro'),
				'name' => 'paginationposition',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
						array(
							'field' => 'field_63c5d15ec1177',
							'operator' => '>',
							'value' => 0
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
						array(
							'field' => 'field_63c5d15ec1177',
							'operator' => '>',
							'value' => 0
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'choices' => array(
					'above' => __('above', 'ics-calendar-pro'),
					'below' => __('below', 'ics-calendar-pro'),
					'both' => __('both', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'above',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_67a1270355099',
				'label' => __('Pagination Auto-cycle', 'ics-calendar-pro'),
				'name' => 'pagination_auto_cycle',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Creates a slideshow that automatically advances through the pagination every 5 seconds. Any user interaction with the previous/next links stops the cycle.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
						array(
							'field' => 'field_63c5d15ec1177',
							'operator' => '>',
							'value' => 0
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
						array(
							'field' => 'field_63c5d15ec1177',
							'operator' => '>',
							'value' => 0
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Cycle page every 5 seconds', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_625471d807454',
				'label' => __('Reverse', 'ics-calendar-pro'),
				'name' => 'reverse',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Display past events, rather than future events, in reverse chronological order (most recent first).', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Display past events, in reverse order', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6564febe47465',
				'label' => __('Basic View Style', 'ics-calendar-pro'),
				'name' => 'basic_style',
				'type' => 'select',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('default', 'ics-calendar-pro'),
					1 => __('no style', 'ics-calendar-pro'),
					'flexbox' => __('flexbox', 'ics-calendar-pro'),
				),
				'default_value' => 'feed_url',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_691cd5ff9fb85',
				'label' => __('Masonry Tile Grouping', 'ics-calendar-pro'),
				'name' => 'masonry_grouping',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'event' => __('event', 'ics-calendar-pro'),
					'date' => __('date', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'event',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e0b80dc1d22f',
				'label' => __('Column Labels', 'ics-calendar-pro'),
				'name' => 'columnlabels',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Format for day name labels in column headers.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'week',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					0 => __('Default for view', 'ics-calendar-pro'),
					'full' => '<strong>' . __('Full', 'ics-calendar-pro') . '</strong> ' . __('("Monday")', 'ics-calendar-pro'),
					'short' => '<strong>' . __('Abbreviated', 'ics-calendar-pro') . '</strong> ' . __('("Mon")', 'ics-calendar-pro'),
					'min' => '<strong>' . __('Initials', 'ics-calendar-pro') . '</strong> ' . __('("M")', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => '',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5f9326ff0e5e9',
				'label' => __('Month Navigation Style', 'ics-calendar-pro'),
				'name' => 'monthnav',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					'select' => '<strong>' . __('Select', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('dropdown menu', 'ics-calendar-pro') . '</span>',
					'arrows' => '<strong>' . __('Arrows', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('previous/next', 'ics-calendar-pro') . '</span>',
					'both' => '<strong>' . __('Both', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('select and arrows', 'ics-calendar-pro') . '</span>',
					'compact' => '<strong>' . __('Compact', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('both, inline without header', 'ics-calendar-pro') . '</span>',
					'none' => '<strong>' . __('None', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('show current month only', 'ics-calendar-pro') . '</span>',
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'select',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_63acc0992cb9b',
				'label' => __('Tabs', 'ics-calendar-pro'),
				'name' => 'fc_tabs',
				'type' => 'checkbox',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Select the tabs you wish to include in your full calendar view on desktop and tablet displays.', 'ics-calendar-pro') . '</span></span>',
				'required' => 1,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					'dayGridMonth' => __('month', 'ics-calendar-pro'),
					'timeGridWeek' => __('week', 'ics-calendar-pro'),
					'timeGridDay' => __('day', 'ics-calendar-pro'),
					'listMonth' => __('list', 'ics-calendar-pro'),
					'multiMonthYear' => __('year', 'ics-calendar-pro'),
				),
				'allow_custom' => 0,
				'default_value' => array(
					0 => 'dayGridMonth',
					1 => 'timeGridWeek',
					2 => 'timeGridDay',
					3 => 'listMonth',
					4 => 'multiMonthYear',
				),
				'layout' => 'vertical',
				'toggle' => 0,
				'return_format' => 'value',
				'save_custom' => 0,
			),
			array(
				'key' => 'field_63ace22144217',
				'label' => __('Default Tab', 'ics-calendar-pro'),
				'name' => 'fc_tab_default',
				'type' => 'radio',
				'instructions' => '',
				'required' => 1,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					'dayGridMonth' => __('month', 'ics-calendar-pro'),
					'timeGridWeek' => __('week', 'ics-calendar-pro'),
					'timeGridDay' => __('day', 'ics-calendar-pro'),
					'listMonth' => __('list', 'ics-calendar-pro'),
					'multiMonthYear' => __('year', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'dayGridMonth',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_61312e7c2c833',
				'label' => __('Table/List Toggle', 'ics-calendar-pro'),
				'name' => 'month_table_list_toggle',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Allow users to toggle between month table and list layout', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_61312da0cf880',
				'label' => __('List All', 'ics-calendar-pro'),
				'name' => 'month_list_all',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('This setting applies only to list-style layouts (e.g. the mobile breakpoint, or the list tab when %1$s is checked).', 'ics-calendar-pro'), '<strong>' . __('Table/List Toggle', 'ics-calendar-pro') . '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('List shows all events at once (no month dropdown)', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_613a29297ac8b',
				'label' => __('Table Cell Contents', 'ics-calendar-pro'),
				'name' => 'table_cell_contents',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('The "events" option shows up to three events for each day in the month table. For narrow page layouts, the "dot" option will present a more usable interface. All events for the current or selected date will display in the sidebar. Both options display the table as dots, with the full day list below the table, on phones and small screens.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(

					'events' => '<strong>' . __('Events', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('first few events on the day;', 'ics-calendar-pro') . '<br />' . sprintf(__('exact number set by %1$sLimit in Table%2$s', 'ics-calendar-pro'), '<strong>', '</strong>') . '</span>',
					'dot' => '<strong>' . __('Dot', 'ics-calendar-pro') . '</strong> <span class="r34icspro-radio-desc">' . __('dot indicating day has events', 'ics-calendar-pro') . '</span>',
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'events',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_616ef4802806c',
				'label' => __('Limit in Table', 'ics-calendar-pro'),
				'name' => 'limit_in_table',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('By default, a maximum of 3 events per day will be shown in the month table. Clicking a date shows the full list of events for that day in the sidebar. Change this value to show more or fewer events in the table. Set it to 0 to show all events.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
						array(
							'field' => 'field_613a29297ac8b',
							'operator' => '==',
							'value' => 'events',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => 3,
				'placeholder' => '',
				'prepend' => '',
				'append' => '<small>' . __('events/day', 'ics-calendar-pro') . '</small>',
				'min' => 0,
				'max' => '',
				'step' => 1,
			),
			array(
				'key' => 'field_61ca0188e29df',
				'label' => __('Week Numbers', 'ics-calendar-pro'),
				'name' => 'weeknumbers',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'week',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Show week numbers in table', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_691f3b59cba76',
				'label' => __('Mobile Tabs', 'ics-calendar-pro'),
				'name' => 'fc_tabs_mobile',
				'type' => 'checkbox',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the tabs you wish to include in your full calendar view on mobile devices (phones). %1$sImportant!%2$s Any tabs selected here %3$smust%4$s also be selected under %1$sTabs%2$s above, or they will not be included in the calendar output.', 'ics-calendar-pro'), '<strong>', '</strong>', '<em>', '</em>', '<strong>', '</strong>') . '</span></span>',
				'required' => 1,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					'dayGridMonth' => __('month', 'ics-calendar-pro'),
					'timeGridWeek' => __('week', 'ics-calendar-pro'),
					'timeGridDay' => __('day', 'ics-calendar-pro'),
					'listMonth' => __('list', 'ics-calendar-pro'),
					'multiMonthYear' => __('year', 'ics-calendar-pro'),
				),
				'allow_custom' => 0,
				'default_value' => array(
					//0 => 'dayGridMonth',
					//1 => 'timeGridWeek',
					2 => 'timeGridDay',
					3 => 'listMonth',
					4 => 'multiMonthYear',
				),
				'layout' => 'vertical',
				'toggle' => 0,
				'return_format' => 'value',
				'save_custom' => 0,
			),
			array(
				'key' => 'field_691f3b6015093',
				'label' => __('Default Mobile Tab', 'ics-calendar-pro'),
				'name' => 'fc_tab_default_mobile',
				'type' => 'radio',
				'instructions' => '',
				'required' => 1,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => 'r34icspro-min-height-200-max',
					'id' => '',
				),
				'choices' => array(
					'dayGridMonth' => __('month', 'ics-calendar-pro'),
					'timeGridWeek' => __('week', 'ics-calendar-pro'),
					'timeGridDay' => __('day', 'ics-calendar-pro'),
					'listMonth' => __('list', 'ics-calendar-pro'),
					'multiMonthYear' => __('year', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'multiMonthYear',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_63ace58e63c94',
				'label' => __('Hide Weekends', 'ics-calendar-pro'),
				'name' => 'hideweekends',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Hide Saturday and Sunday', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_65d7934ccccb5',
				'label' => __('Hide All Day', 'ics-calendar-pro'),
				'name' => 'fc_hide_alldayslot',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Hide "All Day" at top of day and week tabs', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_678ed04132211',
				'label' => __('No Overlap', 'ics-calendar-pro'),
				'name' => 'fc_no_overlap',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Do not overlap concurrent events in time grid', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_68727f53cf320',
				'label' => __('Year Tab Max Columns', 'ics-calendar-pro'),
				'name' => 'fc_year_tab_max_columns',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Only applies if the "year" tab option above is checked. Actual number of tabs that displays may be fewer, depending on the browser window width.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'choices' => array(
					'1' => '1',
					'2' => '2',
					'3' => '3',
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => '3',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_63b9a4e38089f',
				'label' => __('Business Days', 'ics-calendar-pro'),
				'name' => 'fc_business_days',
				'type' => 'checkbox',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Select the days to be treated as "business" days in the calendar. Non-business days have a tinted background.', 'ics-calendar-pro') . '</span></span>',
				'required' => 1,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'choices' => array(
					0 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(0)),
					1 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(1)),
					2 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(2)),
					3 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(3)),
					4 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(4)),
					5 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(5)),
					6 => $wp_locale->get_weekday_abbrev($wp_locale->get_weekday(6)),
				),
				'allow_custom' => 0,
				'default_value' => array(
					0 => 0,
					1 => 1,
					2 => 2,
					3 => 3,
					4 => 4,
					5 => 5,
					6 => 6,
				),
				'layout' => 'horizontal',
				'toggle' => 0,
				'return_format' => 'value',
				'save_custom' => 0,
			),
			array(
				'key' => 'field_5e0b8732c5102',
				'label' => __('Mobile', 'ics-calendar-pro'),
				'name' => 'nomobile',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'week',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Do not collapse layout to a list on mobile views', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6254744d420e8',
				'label' => __('Sticky Months', 'ics-calendar-pro'),
				'name' => 'stickymonths',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('When the user selects a month from the dropdown menu, a query string variable will be appended to the URL in the address bar, making it possible to link to the page with that month pre-selected.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Create "sticky" month URLs when user selects a month.', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b9c810be33',
				'label' => __('Zoom', 'ics-calendar-pro'),
				'name' => 'zoom',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Relative size of hour blocks in grid.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '26.667',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '0.6',
				'prepend' => '',
				'append' => '',
				'min' => '0.1',
				'max' => '5',
				'step' => '0.1',
			),
			array(
				'key' => 'field_668c49eb2e417',
				'label' => __('Calendar Height', 'ics-calendar-pro'),
				'name' => 'fc_height',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Maximum height of calendar. If calendar content exceeds this height, an internal scrollbar will appear. Leave blank for "auto" height (full calendar displays on page, with no internal scrolling).', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '40',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => '80',
				'placeholder' => '100',
				'prepend' => '',
				'append' => __('% view height', 'ics-calendar-pro'),
				'min' => '25',
				'max' => '100',
				'step' => '5',
			),
			array(
				'key' => 'field_5e0b9d41d6b8a',
				'label' => __('Daily Start Time', 'ics-calendar-pro'),
				'name' => 'hours_start',
				'type' => 'time_picker',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Start time for grid. Leave blank to show all hours.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => '',
					'id' => '',
				),
				'display_format' => 'Hi',
				'return_format' => 'Hi',
			),
			array(
				'key' => 'field_5e0b9d97d6b8b',
				'label' => __('Daily End Time', 'ics-calendar-pro'),
				'name' => 'hours_end',
				'type' => 'time_picker',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('End time for grid. Leave blank to show all hours.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '16.667',
					'class' => '',
					'id' => '',
				),
				'display_format' => 'Hi',
				'return_format' => 'Hi',
			),
			array(
				'key' => 'field_668c3ebad4f89',
				'label' => __('Show All Hours', 'ics-calendar-pro'),
				'name' => 'fc_timegrid_all_hours',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Default when setting %1$s and %2$s is that only those hours appear in the grid. Check this box to show all 24 hours, and highlight the start/end range instead.', 'ics-calendar-pro'), '<strong>' . __('Daily Start Time', 'ics-calendar-pro') . '</strong>', '<strong>' . __('Daily End Time', 'ics-calendar-pro') . '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Show all 24 hours in time grids', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_662152669a5f3',
				'label' => __('Now Label', 'ics-calendar-pro'),
				'name' => 'upnext_now_label',
				'type' => 'text',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Heading above the event that is currently happening. Leave blank for no heading.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'up-next',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => __('Happening Now', 'ics-calendar-pro'),
				'placeholder' => '',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_6621526d16cfa',
				'label' => __('Future Label', 'ics-calendar-pro'),
				'name' => 'upnext_future_label',
				'type' => 'text',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Heading above the next future event. Leave blank for no heading.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'up-next',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'default_value' => __('Up Next', 'ics-calendar-pro'),
				'placeholder' => '',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_6632a2c33849a',
				'label' => __('Show Date', 'ics-calendar-pro'),
				'name' => 'upnext_show_date',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('By default %1$sUp Next%2$s only shows the date if the event is %3$snot%4$s occurring today. Check this box to show the date even if it is today.', 'ics-calendar-pro'), '<strong>', '</strong>', '<em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'up-next',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Show date on events that are happening today', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_662152741d374',
				'label' => __('Show Next Future Event', 'ics-calendar-pro'),
				'name' => 'upnext_show_future',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('When checked, both the currently occurring event(s) and the next upcoming future event will be displayed.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'up-next',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Show next future event in addition to any events currently happening', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_69fdbf8e81c61',
				'label' => __('No Sidebar Scroll', 'ics-calendar-pro'),
				'name' => 'no_sidebar_scroll',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Select this option if you do not want the page to scroll to the top of the daily event details sidebar when the user clicks on a date in the calendar grid. Note: In situations where the sidebar is not currently visible to the user, this setting may make it appear that clicking the date had no effect. Use with caution.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => 'r34icspro-min-height-100-max',
					'id' => '',
				),
				'message' => __('Do not scroll page to top of sidebar when user clicks on a date', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
		
			/***********************************************************************
			 *  HEADER & FOOTER
			 ***********************************************************************/
		
			array(
				'key' => 'field_613a2b57bcbb2',
				'label' => __('Header &amp; Footer', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_5f904b30063af',
				'label' => __('Hide Calendar Title and Description', 'ics-calendar-pro'),
				'name' => 'hide_calendar_title_and_description',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Hide title and description displayed above calendar', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b7f8c4466f',
				'label' => __('Customize Title and Description', 'ics-calendar-pro'),
				'name' => 'customize_title_and_description',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5f904b30063af',
							'operator' => '!=',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Customize title and description displayed above calendar', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b6c9b2705a',
				'label' => __('Title', 'ics-calendar-pro'),
				'name' => 'title',
				'type' => 'text',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Leave blank to use calendar default title.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b7f8c4466f',
							'operator' => '==',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_5e0b6cb52705b',
				'label' => __('Description', 'ics-calendar-pro'),
				'name' => 'description',
				'type' => 'wysiwyg',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Leave blank to use calendar default description.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b7f8c4466f',
							'operator' => '==',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'tabs' => 'all',
				'toolbar' => 'basic',
				'media_upload' => 0,
				'delay' => 0,
			),
			array(
				'key' => 'field_5e23682c6983b',
				'label' => __('Filter (Event Search)', 'ics-calendar-pro'),
				'name' => 'showfilter',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Adds a simple form above the calendar to filter the events being displayed. Helps users locate specific items on calendars with a large number of events.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'month-with-sidebar',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'up-next',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Show event filter form', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5f8f6e49f832c',
				'label' => __('Legend Style', 'ics-calendar-pro'),
				'name' => 'legendstyle',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('The legend is a list of the calendars shown in the feed, with color indicators (if color is being used), and checkboxes to toggle the events for each calendar on and off. If the calendar only contains one feed, the legend will not appear.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					'block' => __('block', 'ics-calendar-pro'),
					'inline' => __('inline', 'ics-calendar-pro'),
					'none' => __('none', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'inline',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5eb1d21d81081',
				'label' => __('Legend Position', 'ics-calendar-pro'),
				'name' => 'legendposition',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Determines placement of the legend relative to the calendar itself, as well as the subscribe link, if that option is enabled.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5f8f6e49f832c',
							'operator' => '!=',
							'value' => 'none',
						),
					),
					array(
						array(
							'field' => 'field_5e67bb80330e0',
							'operator' => '!=',
							'value' => '0',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'above' => __('above', 'ics-calendar-pro'),
					'below' => __('below', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'above',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5f81f1009c42b',
				'label' => __('Timezones in Legend', 'ics-calendar-pro'),
				'name' => 'tzinlegend',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Displays the timezone next to the name of each feed in the legend. If only a single feed is included in the calendar, the legend does not appear, and the timezone will be displayed below the calendar instead.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Display feed timezones in legend', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e67bb80330e0',
				'label' => __('Subscribe Link', 'ics-calendar-pro'),
				'name' => 'subscribelink',
				'type' => 'radio',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Adds a subscribe link to the calendar. Placement of the link is determined by the %1$sLegend Position%2$s setting. (For multi-feed calendars, the subscribe links will be in the color key next to the calendar names.) Note: This will make the direct URL of your feed publicly available.', 'ics-calendar-pro'), '<strong>', '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					1 => __('text', 'ics-calendar-pro'),
					'both' => __('icon and text', 'ics-calendar-pro'),
					'icon' => __('icon only', 'ics-calendar-pro'),
				),
				'allow_null' => 1,
				'other_choice' => 0,
				'default_value' => '',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_691f5b491d7e5',
				'label' => __('Print Button', 'ics-calendar-pro'),
				'name' => 'print',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Adds a print button to the top of the calendar. Clicking the print button will load a new tab containing only the calendar, and open the print dialog. Choose "basic" for a calendar including only event times and titles, or "with descriptions" to include full event descriptions.', 'ics-calendar-pro') . '</span></span><small class="beta-indicator">' . __('beta', 'ics-calendar-pro') . '</small>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'masonry',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'up-next',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					1 => __('basic', 'ics-calendar-pro'),
					'descriptions' => __('with descriptions', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'above',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
		
			/***********************************************************************
			 *  DATES & TIMES
			 ***********************************************************************/
		
			array(
				'key' => 'field_5e10e387ae534',
				'label' => __('Dates &amp; Times', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_5e0b77ed3469d',
				'label' => __('Date Format', 'ics-calendar-pro'),
				'name' => 'format',
				'type' => 'text',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Format to display date headers in list-type views (including mobile responsive layout for month/week views). Accepts a %1$sPHP date format string%2$s. Example: %3$s will display as "%4$s". Default output varies by view.', 'ics-calendar-pro'), '<a href="https://secure.php.net/manual/en/function.date.php" target="_blank">', '</a>', '<code>l, F j</code>', 'Thursday, March 14') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => get_option('date_format'),
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_6655f8df1e93b',
				'label' => __('Full Date in Table', 'ics-calendar-pro'),
				'name' => 'fulldateintable',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('By default, table-based views only show the day number in each table cell on desktop breakpoints. Turning this option will show the full date string, as specified by the %1$sDate Format%2$s field, in every table cell.', 'ics-calendar-pro'), '<strong>', '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'week',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('Use full %1$sDate Format%2$s in each table cell', 'ics-calendar-pro'), '<strong>', '</strong>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e27201111fff',
				'label' => __('Month/Year Format', 'ics-calendar-pro'),
				'name' => 'formatmonthyear',
				'type' => 'text',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Format to display month/year in headers and dropdown menus. Accepts a %1$sPHP date format string%2$s. Example: %3$s (default) will display as "March 2020". Only accepts month/year formatting characters plus space, hyphen, period and slash. Leave blank to use default settings.', 'ics-calendar-pro'), '<a href="https://secure.php.net/manual/en/function.date.php" target="_blank">', '</a>', '<code>F Y</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => 'F Y',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_5e0b855a1d232',
				'label' => __('Limit Days', 'ics-calendar-pro'),
				'name' => 'limitdays',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Sets the maximum number of days in the future to display. Note: Default value varies by view, and in some cases is approximate, to include a full calendar time period.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '455',
				'prepend' => '',
				'append' => '<small>' . __('days', 'ics-calendar-pro') . '</small>',
				'min' => 1,
				'max' => 3652,
				'step' => 1,
			),
			array(
				'key' => 'field_5e10e3f2ae535',
				'label' => __('Start On', 'ics-calendar-pro'),
				'name' => 'start_on',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_625471d807454',
							'operator' => '!=',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'pastdays' => __('Rolling date', 'ics-calendar-pro'),
					'startdate' => __('Fixed date', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'pastdays',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e10e2bdbef58',
				'label' => __('Past Days', 'ics-calendar-pro'),
				'name' => 'pastdays',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Sets the number of days in the past to display. Use negative values to set future days. (Affects range of Limit Days.) Note: Default value varies by view, and in some cases is approximate, to include a full calendar time period.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e10e3f2ae535',
							'operator' => '==',
							'value' => 'pastdays',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '90',
				'prepend' => '',
				'append' => '<small>' . __('days', 'ics-calendar-pro') . '</small>',
				'min' => -3652,
				'max' => 3652,
				'step' => 1,
			),
			array(
				'key' => 'field_5e0b8d215ea5e',
				'label' => __('Start Date', 'ics-calendar-pro'),
				'name' => 'startdate',
				'type' => 'date_picker',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Earliest date to include in the calendar output (defaults to current date if left blank). Enter in %1$s format or select from date picker. (Note: Most views display the current date on load; this setting affects how far into the past events will be %2$savailable%3$s to view.)', 'ics-calendar-pro'), '<code>YYYYMMDD</code>', '<em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e10e3f2ae535',
							'operator' => '==',
							'value' => 'startdate',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'display_format' => 'Ymd',
				'return_format' => 'Ymd',
				'first_day' => 0,
			),
			array(
				'key' => 'field_636982de41d01',
				'label' => __('Time Format', 'ics-calendar-pro'),
				'name' => 'timeformat',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Format to display event times. Accepts a %1$sPHP date format string%2$s. Example: %3$s will display as "%4$s". If omitted, the time format from your WordPress General Settings will be used.', 'ics-calendar-pro'), '<a href="https://secure.php.net/manual/en/function.date.php" target="_blank">', '</a>', '<code>g:i a</code>', r34ics_date('g:i a')) . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					__('Common', 'ics-calendar-pro') => array(
						'g:i a' => 'g:i a (' . r34ics_time_format(r34ics_date('g:i a'), 'g:i a') . ')',
						'g:i A' => 'g:i A (' . r34ics_time_format(r34ics_date('g:i a'), 'g:i A') . ')',
						'H:i' => 'H:i (' . r34ics_time_format(r34ics_date('g:i a'), 'H:i') . ')',
						'G\hi' => 'G\hi (' . r34ics_time_format(r34ics_date('g:i a'), 'G\hi') . ')',
					),
					__('Other', 'ics-calendar-pro') => array(
						'g:ia' => 'g:ia (' . r34ics_time_format(r34ics_date('g:i a'), 'g:ia') . ')',
						'g:iA' => 'g:iA (' . r34ics_time_format(r34ics_date('g:i a'), 'g:iA') . ')',
						'h:i a' => 'h:i a (' . r34ics_time_format(r34ics_date('g:i a'), 'h:i a') . ')',
						'h:ia' => 'h:ia (' . r34ics_time_format(r34ics_date('g:i a'), 'h:ia') . ')',
						'h:i A' => 'h:i A (' . r34ics_time_format(r34ics_date('g:i a'), 'h:i A') . ')',
						'h:iA' => 'h:iA (' . r34ics_time_format(r34ics_date('g:i a'), 'h:iA') . ')',
						'G:i' => 'G:i (' . r34ics_time_format(r34ics_date('g:i a'), 'G:i') . ')',
						'G.i' => 'G.i (' . r34ics_time_format(r34ics_date('g:i a'), 'G.i') . ')',
						'Gi' => 'Gi (' . r34ics_time_format(r34ics_date('g:i a'), 'Gi') . ')',
						'Hi' => 'Hi (' . r34ics_time_format(r34ics_date('g:i a'), 'Hi') . ')',
						'G \h i \m\i\n' => 'G \h i \m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'G \h i \m\i\n') . ')',
						'G\h i\m\i\n' => 'G\h i\m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'G\h i\m\i\n') . ')',
						'G\hi\m\i\n' => 'G\hi\m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'G\hi\m\i\n') . ')',
						'G \h i \m' => 'G \h i \m (' . r34ics_time_format(r34ics_date('g:i a'), 'G \h i \m') . ')',
						'G\h i\m' => 'G\h i\m (' . r34ics_time_format(r34ics_date('g:i a'), 'G\h i\m') . ')',
						'G\hi\m' => 'G\hi\m (' . r34ics_time_format(r34ics_date('g:i a'), 'G\hi\m') . ')',
						'H \h i \m\i\n' => 'H \h i \m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'H \h i \m\i\n') . ')',
						'H\h i\m\i\n' => 'H\h i\m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'H\h i\m\i\n') . ')',
						'H\hi\m\i\n' => 'H\hi\m\i\n (' . r34ics_time_format(r34ics_date('g:i a'), 'H\hi\m\i\n') . ')',
						'H \h i \m' => 'H \h i \m (' . r34ics_time_format(r34ics_date('g:i a'), 'H \h i \m') . ')',
						'H\h i\m' => 'H\h i\m (' . r34ics_time_format(r34ics_date('g:i a'), 'H\h i\m') . ')',
						'H\hi\m' => 'H\hi\m (' . r34ics_time_format(r34ics_date('g:i a'), 'H\hi\m') . ')',
					),
				),
				'default_value' => get_option('time_format'),
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_6658b25b477da',
				'label' => __('Event Local Time', 'ics-calendar-pro'),
				'name' => 'eventlocaltime',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Displays all times in the local timezone assigned to each individual event. Automatically appends the standard three- or four-letter timezone abbreviation to the end of all event times.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_65a0526e9a940',
							'operator' => '!=',
							'value' => 1,
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_65a0526e9a940',
							'operator' => '!=',
							'value' => 1,
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '66.666',
					'class' => '',
					'id' => '',
				),
				'message' => __('Display all events in their respective local times, with timezone abbreviations', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b85201d231',
				'label' => __('Hide Times', 'ics-calendar-pro'),
				'name' => 'hidetimes',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Hide event times (e.g. if times are included in event titles)', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b8b1fab6ef',
				'label' => __('Show End Times', 'ics-calendar-pro'),
				'name' => 'showendtimes',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('By default, event end times only display on hover.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b85201d231',
						'operator' => '!=',
						'value' => '1',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Always show event end times', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
		
			/***********************************************************************
			 *  EVENTS
			 ***********************************************************************/
		
			array(
				'key' => 'field_5f904a630c31f',
				'label' => __('Events', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_5e0b84f71d230',
				'label' => __('Event Descriptions', 'ics-calendar-pro'),
				'name' => 'eventdesc',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Show event descriptions and links', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_66635ac187059',
				'label' => __('Labels', 'ics-calendar-pro'),
				'name' => 'feedlabelindesc',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('If calendar includes multiple feeds with custom labels, the label will appear in the details hover box for each event.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Show calendar feed label for each event', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5f77386b6257a',
				'label' => __('Details Toggle', 'ics-calendar-pro'),
				'name' => 'toggle',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('When this option is set to "off", the description / location / organizer info appears in a fly-out box on hover. You can also choose to have descriptions appear on click, either inline or in a lightbox.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b85f6851ab',
							'operator' => '!=',
							'value' => '0',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b88955294f',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => '',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => 'false',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					'true' => __('inline', 'ics-calendar-pro'),
					'lightbox' => __('lightbox', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 0,
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_64adc3c44303f',
				'label' => __('Details Toggle', 'ics-calendar-pro'),
				'name' => 'toggle',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('When this option is set to "off", the description / location / organizer info appears in a fly-out box on hover. You can also choose to have descriptions appear on click, either inline or in a lightbox.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b85f6851ab',
							'operator' => '!=',
							'value' => '0',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b88955294f',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => '',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => 'false',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b85f6851ab',
							'operator' => '!=',
							'value' => '0',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e0b88955294f',
							'operator' => '==',
							'value' => '1',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => '',
						),
						array(
							'field' => 'field_5e594f33bb6ae',
							'operator' => '!=',
							'value' => 'false',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					'lightbox' => __('lightbox', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 0,
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e10c8a009b8c',
				'label' => __('Description Excerpt', 'ics-calendar-pro'),
				'name' => 'eventdesc_length',
				'type' => 'number',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Optional. If your event descriptions are long, enter a number of words to display as an excerpt instead. Full description text will appear if the user clicks the excerpt.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'list',
						),
					),
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'masonry',
						),
					),
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget',
						),
					),
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'month-with-sidebar',
						),
					),
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-with-sidebar',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '',
				'prepend' => '',
				'append' => '<small>' . __('words', 'ics-calendar-pro') . '</small>',
				'min' => 0,
				'max' => 1000,
				'step' => 1,
			),
			array(
				'key' => 'field_5e0b88955294f',
				'label' => __('Organizers/Contacts', 'ics-calendar-pro'),
				'name' => 'organizer',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Show event organizers and contacts', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b85f6851ab',
				'label' => __('Event Locations', 'ics-calendar-pro'),
				'name' => 'location',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('The "on, with map links" option will automatically convert the location text into a clickable link to a Google Maps search. Only use this option if your events include a complete, real physical address in the location field, as incomplete addresses (e.g. the names of conference rooms within your office) may yield nonsensical results.' , 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					'true' => __('on', 'ics-calendar-pro'),
					'maplinks' => __('on, with map links', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'true',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_641e07df73b22',
				'label' => __('Map Source', 'ics-calendar-pro'),
				'name' => 'mapsource',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b85f6851ab',
							'operator' => '==',
							'value' => 'maplinks',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'google' => __('Google Maps', 'ics-calendar-pro'),
					'bing' => __('Bing Maps', 'ics-calendar-pro'),
					'openstreetmap' => __('OpenStreetMap', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'google',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e0b86ab851ad',
				'label' => __('Links', 'ics-calendar-pro'),
				'name' => 'nolink',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Do not show individual event links', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b85d9851aa',
				'label' => ' ',
				'name' => 'linktitles',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b86ab851ad',
							'operator' => '!=',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Make titles clickable if event has a URL', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6398ed426b71c',
				'label' => __('Open links...', 'ics-calendar-pro'),
				'name' => 'sametab',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b84f71d230',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b86ab851ad',
							'operator' => '!=',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'local' => __('Local links in same tab, off-site in new tab', 'ics-calendar-pro'),

					'all' => sprintf(__('All links in %1$ssame%2$s tab', 'ics-calendar-pro'), '<strong>', '</strong>'),

					'none' => sprintf(__('All links in %1$snew%2$s tab', 'ics-calendar-pro'), '<strong>', '</strong>'),
				),
				'allow_null' => 1,
				'other_choice' => 0,
				'default_value' => 'local',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e594f33bb6ae',
				'label' => __('Attachments', 'ics-calendar-pro'),
				'name' => 'attach',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Optional. If omitted, attachments will display only if "Event Descriptions" is checked. Note: Some source calendar providers do not include attachments in the ICS feed, or (including Google and Microsoft) may link to permission-restricted "wrapper" pages, rather than directly to the file. In these cases, ICS Calendar cannot display the attachments.' , 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					'true' => __('Show all attachments', 'ics-calendar-pro'),
					'false' => __('Hide all attachments', 'ics-calendar-pro'),
					'image' => __('Show images only', 'ics-calendar-pro'),
					'download' => __('Show downloads only', 'ics-calendar-pro'),
				),
				'allow_null' => 1,
				'other_choice' => 0,
				'default_value' => '',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_61eee77d4e841',
				'label' => __('Event Downloads', 'ics-calendar-pro'),
				'name' => 'eventdl',
				'type' => 'radio',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Adds an individual %1$s.ics%2$s download button to each event in the calendar.', 'ics-calendar-pro'), '<code>', '</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					1 => __('icon and text', 'ics-calendar-pro'),
					'minimal' => __('icon only', 'ics-calendar-pro'),
				),
				'allow_null' => 1,
				'other_choice' => 0,
				'default_value' => '',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_641e0aaff37ad',
				'label' => __('Resources', 'ics-calendar-pro'),
				'name' => 'resources',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Show event resources (e.g. room and equipment reservations)', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e15f5465b6b8',
				'label' => __('"All Day" Indicator', 'ics-calendar-pro'),
				'name' => 'hidealldayindicator',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Hide "ALL DAY" label above all-day events', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e666f7f02d07',
				'label' => __('Recurrence', 'ics-calendar-pro'),
				'name' => 'skiprecurrence',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('In general use of this setting is discouraged, as it may omit important events from your calendar. However, this can improve performance with very large calendars, if you do not need to display recurring events.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('Do not display recurring events %1$s(not recommended)%2$s', 'ics-calendar-pro'), '<span class="r34icspro-checkbox-desc">', '</span>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_611d162bbca8c',
				'label' => ' ',
				'name' => 'hiderecurrence',
				'type' => 'true_false',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e666f7f02d07',
							'operator' => '!=',
							'value' => 1,
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Hide recurrence frequency text', 'ics-calendar-pro'),
				'default_value' => 1,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
		
			/***********************************************************************
			 *  FILTERS
			 ***********************************************************************/
		
			array(
				'key' => 'field_6632a8daa64e9',
				'label' => __('Filters', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_6632a8f566e8a',
				'label' => __('About Filters', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'message',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('This tab provides access to basic logic for some %1$sICS Calendar Filters%2$s without the need for any custom PHP coding. Filters configured here will %3$sonly%4$s apply to this calendar. These filters will work with (not override) any other existing filters you may already have in your theme or another plugin.', 'ics-calendar-pro'), '<a href="https://icscalendar.com/developer/" target="_blank">', '</a>', '<em>', '</em>'),
				'new_lines' => 'wpautop',
				'esc_html' => 0,
			),
			array(
				'key' => 'field_6632b2fd3b024',
				'label' => __('Event CSS Classes', 'ics-calendar-pro'),
				'name' => 'filtereventcssclasses_enable',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Enter a text string to match in the event title or description, along with the custom CSS class name that should be applied to matching events. Matching string is case-insensitive. CSS class name must be lowercase alphanumeric with no spaces, and must start with a letter; hyphens and underscores are allowed. %1$sYou will still need to add appropriate CSS to your theme or in the %2$sAdditional CSS%3$s section of the %4$sCustomizer%5$s.%6$s', 'ics-calendar-pro'), '<em>', '<strong>', '</strong>', '<a href="' . admin_url('customize.php') . '" target="_blank">', '</a>', '</em>') . '<br /><small><a href="https://icscalendar.com/developer/#r34ics_event_css_classes" target="_blank">' . __('Documentation', 'ics-calendar-pro') . '</a></small></span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('Enable %1$sEvent CSS Classes%2$s filter', 'ics-calendar-pro'), '<strong>', '</strong>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6632ac0e86470',
				'label' => '',
				'name' => 'filtereventcssclasses',
				'type' => 'repeater',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_6632b2fd3b024',
							'operator' => '==',
							'value' => 1,
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => 'r34icspro-tight-top',
					'id' => '',
				),
				'collapsed' => '',
				'min' => 1,
				'max' => '',
				'layout' => 'table',
				'button_label' => __('Add a Class', 'ics-calendar-pro'),
				'sub_fields' => array(
					array(
						'key' => 'field_6632aee140af3',
						'label' => __('Text to match in event title/description', 'ics-calendar-pro'),
						'name' => 'filtereventcssclasses_match',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '50',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '%',
						'append' => '%',
						'maxlength' => '',
					),
					array(
						'key' => 'field_6632af8256c6c',
						'label' => __('CSS class to add to matching events', 'ics-calendar-pro'),
						'name' => 'filtereventcssclasses_classname',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '50',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '.',
						'append' => '',
						'maxlength' => '',
					),
				),
			),
			array(
				'key' => 'field_68726d7db7528',
				'label' => __('Event Text Replacement', 'ics-calendar-pro'),
				'name' => 'filtereventtextreplacement_enable',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Enter a text string to match in the event title or description, along with the text that should replace that string. Matching string is case-insensitive.', 'ics-calendar-pro') . '<br /><small><a href="https://icscalendar.com/developer/#r34ics_display_calendar_event_item" target="_blank">' . __('Documentation', 'ics-calendar-pro') . '</a></small></span></span><div><small>' .

				sprintf(__('%1$sNote:%2$s Do not use this filter if you want to hide %3$sall%4$s event details with a generic message, e.g. "Booked." Use the %1$sMask Info%2$s field under the %1$sAdvanced%2$s tab instead.', 'ics-calendar-pro'), '<strong>', '</strong>', '<em>', '</em>') . '</small></div>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('Enable %1$sEvent Text Replacement%2$s filter', 'ics-calendar-pro'), '<strong>', '</strong>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_68726e43edfb1',
				'label' => '',
				'name' => 'filtereventtextreplacement',
				'type' => 'repeater',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_68726d7db7528',
							'operator' => '==',
							'value' => 1,
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => 'r34icspro-tight-top',
					'id' => '',
				),
				'collapsed' => '',
				'min' => 1,
				'max' => '',
				'layout' => 'table',
				'button_label' => __('Add a Text Replacement', 'ics-calendar-pro'),
				'sub_fields' => array(
					array(
						'key' => 'field_68726e5e4ed6d',
						'label' => __('Text to match in event title/description', 'ics-calendar-pro'),
						'name' => 'filtereventtextreplacement_match',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '50',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '%',
						'append' => '%',
						'maxlength' => '',
					),
					array(
						'key' => 'field_68726e7a00a15',
						'label' => __('Replacement text', 'ics-calendar-pro'),
						'name' => 'filtereventtextreplacement_replace',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '50',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '',
						'append' => '',
						'maxlength' => '',
					),
				),
			),
			array(
				'key' => 'field_6632b399061ee',
				'label' => __('Include/Exclude Events', 'ics-calendar-pro'),
				'name' => 'filterexcludeevent_enable',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Select whether to include or exclude matching events, then enter one or more text strings to match in the event title or description.', 'ics-calendar-pro') . '<br /><small><a href="https://icscalendar.com/developer/#r34ics_display_calendar_exclude_event" target="_blank">' . __('Documentation', 'ics-calendar-pro') . '</a></small></span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),

				'message' => sprintf(__('Enable %1$sInclude/Exclude Events%2$s filter', 'ics-calendar-pro'), '<strong>', '</strong>'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6632b2ac8601e',
				'label' => '',
				'name' => 'filterexcludeevent_inclexcl',
				'type' => 'radio',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_6632b399061ee',
							'operator' => '==',
							'value' => 1,
						),
					),
				),
				'wrapper' => array(
					'width' => '',
					'class' => 'r34icspro-tight',
					'id' => '',
				),
				'choices' => array(
					// phpcs:disable WordPressVIPMinimum.Performance.WPQueryParams.PostNotIn_exclude

					'exclude' => sprintf(__('%1$sExclude all%2$s matching events', 'ics-calendar-pro'), '<strong>', '</strong>'),

					'include' => sprintf(__('%1$sInclude only%2$s matching events', 'ics-calendar-pro'), '<strong>', '</strong>'),
					// phpcs:enable WordPressVIPMinimum.Performance.WPQueryParams.PostNotIn_exclude
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 'exclude',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_6632b0f17d04c',
				'label' => '',
				'name' => 'filterexcludeevent',
				'type' => 'repeater',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_6632b399061ee',
							'operator' => '==',
							'value' => 1,
						),
					),
				),
				'wrapper' => array(
					'width' => '100',
					'class' => 'r34icspro-tight-top',
					'id' => '',
				),
				'collapsed' => '',
				'min' => 1,
				'max' => '',
				'layout' => 'table',
				'button_label' => __('Add a Condition', 'ics-calendar-pro'),
				'sub_fields' => array(
					array(
						'key' => 'field_6632b1b12d1b6',
						'label' => __('Text to match in event title/description', 'ics-calendar-pro'),
						'name' => 'filterexcludeevent_exclusion',
						'type' => 'text',
						'instructions' => '',
						'required' => 0,
						'conditional_logic' => 0,
						'wrapper' => array(
							'width' => '100',
							'class' => '',
							'id' => '',
						),
						'default_value' => '',
						'placeholder' => '',
						'prepend' => '%',
						'append' => '%',
						'maxlength' => '',
					),
				),
			),
			
			/***********************************************************************
			 *  ADVANCED
			 ***********************************************************************/
		
			array(
				'key' => 'field_5f3e8b4b1d0a8',
				'label' => __('Advanced', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_64496ae3cd0c9',
				'label' => __('HTML/CSS Customizations', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'message',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),
				'message' => '',
				'new_lines' => 'wpautop',
				'esc_html' => 0,
			),
			array(
				'key' => 'field_611d164673191',
				'label' => __('ID Attribute', 'ics-calendar-pro'),
				'name' => 'guid',
				'type' => 'text',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Must consist of only lowercase letters or numerals. Cannot start with a numeral. Once set, you can use this string as an anchor link or in creating custom CSS specific to this calendar.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => 'ics-calendar-' . uniqid(),
				'placeholder' => __('Enter a unique value for the calendar "id" attribute...', 'ics-calendar-pro'),
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_6196a3102b37e',
				'label' => __('Compact', 'ics-calendar-pro'),
				'name' => 'compact',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('This feature is experimental and subject to change.', 'ics-calendar-pro') . '<br /><br />' . __('Applies various CSS changes to create a more compact overall layout, depending on which View is selected.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'full',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					1 => __('on', 'ics-calendar-pro'),
					'mobile' => __('mobile', 'ics-calendar-pro'),
					'desktop' => __('desktop', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => 0,
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_6196a396c57c1',
				'label' => __('No Month Headers', 'ics-calendar-pro'),
				'name' => 'nomonthheaders',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Reduces overall layout size by removing the month headers. Does not apply to views where month headers are necessary for usability.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'full',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Do not display month headers', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6449610d28b7c',
				'label' => __('Calendar Title Heading Tag', 'ics-calendar-pro'),
				'name' => 'htmltagtitle',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for the main calendar title. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.ics-calendar-title</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_64496119906c9',
				'label' => __('Month/Year Heading Tag', 'ics-calendar-pro'),
				'name' => 'htmltagmonth',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for month/year headings. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.ics-calendar-label</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_6449618daf069',
				'label' => __('Date Heading Tag', 'ics-calendar-pro'),
				'name' => 'htmltagdate',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for date headings. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.ics-calendar-date</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'month',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'week',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_656502000083e',
				'label' => __('Event Title Tag', 'ics-calendar-pro'),
				'name' => 'htmltageventtitle',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for event titles. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.title</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_6565022bda4bf',
				'label' => __('Event Description Tag', 'ics-calendar-pro'),
				'name' => 'htmltageventdesc',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for event descriptions. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.descloc</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_65650217ce315',
				'label' => __('Event Time Tag', 'ics-calendar-pro'),
				'name' => 'htmltagtime',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Select the HTML tag to use for event times. The tag will always include the %1$s CSS class. Leave blank to use the default tag for this view.', 'ics-calendar-pro'), '<code>.time</code>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'basic',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'h2' => 'h2',
					'h3' => 'h3',
					'h4' => 'h4',
					'h5' => 'h5',
					'h6' => 'h6',
					'p' => 'p',
					'div' => 'div',
					'span' => 'span',
				),
				'default_value' => '',
				'allow_null' => 1,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_63f3d47963a3c',
				'label' => __('Table Background Color', 'ics-calendar-pro'),
				'name' => 'tablebg',
				'type' => 'color_picker',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'default_value' => '',
			),
			array(
				'key' => 'field_6920fb0621fb2',
				'label' => __('Dark Mode', 'ics-calendar-pro'),
				'name' => 'darkmode',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Displays calendar with an inverted color palette. Will be ignored if the Dark Mode is turned in the %1$s settings.', 'ics-calendar-pro') , 'ICS Calendar Pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Display calendar in dark mode', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_61eeef837ac96',
				'label' => __('Solid Colors', 'ics-calendar-pro'),
				'name' => 'solidcolors',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('By default, %1$s styles feed colors as a solid left border combined with a lighter "tint" color, which works best with dark text. If your selected feed colors are light, or if your text is light and your feed colors are dark, check this box to make the entire event block display in full-saturation color. %2$sImportant: If using this option, be sure to test color contrast accessibility.%3$s', 'ics-calendar-pro'), 'ICS Calendar', '<strong>', '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'full',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_6920fb0621fb2',
						'operator' => '!=',
						'value' => 1,
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Use solid feed highlight colors', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			/* Note: This appears in two separate locations (with different keys) based on the conditional logic. */
			array(
				'key' => 'field_63f3d5bed592b',
				'label' => __('Empty Day Background Color', 'ics-calendar-pro'),
				'name' => 'empty_day_bg_color',
				'type' => 'color_picker',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
			),
			array(
				'key' => 'field_6415c8fa45a12',
				'label' => __('Booked Day Background Color', 'ics-calendar-pro'),
				'name' => 'booked_day_bg_color',
				'type' => 'color_picker',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'widget-availability',
						),
					),
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '==',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
			),
			array(
				'key' => 'field_64496bd911fda',
				'label' => __('Combine Multiday Events', 'ics-calendar-pro'),
				'name' => 'combinemultiday',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('This feature is experimental and subject to change.', 'ics-calendar-pro') . '<br /><br />' . __('Changes the visual style of multiday events to show them as a continuous block extending across days in the table.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'basic',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'list',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'full',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'masonry',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '50',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Combine multiday events across table cells', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_661811760dc49',
				'label' => __('Event Illustrations', 'ics-calendar-pro'),
				'name' => 'calendar_illustrations',
				'type' => 'select',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Event illustrations are keyword-based images that will appear in the event descriptions for relevant events. %1$s Local illustrations are loaded from the %2$sIllustrations Library%3$s (or from a custom path set with the %4$s filter). %5$sGoogle illustrations are only available if your source is a Google Calendar, and are loaded directly from Google servers.%6$s', 'ics-calendar-pro'), '<br /><br />', '<a href="' . admin_url('https://sandbox.icscalendar.com/wp-admin/edit.php?post_type=r34icspro_calendar&page=r34icspro-illustrations-library') . '" target="_blank"><strong>', '</strong></a>', '<code><a href="https://icscalendar.com/developer/#r34icspro_illustration_path" target="_blank">r34icspro_illustration_path</a></code>', '<br /><br ><em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					'local' => __('use local Illustrations Library only', 'ics-calendar-pro'),
					'fallback' => __('use local Illustrations Library, with Google Calendar fallback', 'ics-calendar-pro'),
					'google' => __('use Google Calendar illustrations only', 'ics-calendar-pro'),
				),
				'default_value' => 0,
				'allow_null' => 0,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_64496943e9f7e',
				'label' => __('Calendar Data Modifications', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'message',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),
				'message' => '',
				'new_lines' => 'wpautop',
				'esc_html' => 0,
			),
			array(
				'key' => 'field_6086ca62e2834',
				'label' => __('Fill Empty Days', 'ics-calendar-pro'),
				'name' => 'fill_empty_days',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('If your calendar is intended to show availability, use this option to add a general "available" message to all dates that %1$sdo not%2$s have any events in your feed.', 'ics-calendar-pro'), '<em>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'full',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Add a message to empty days', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6086ce320fb23',
				'label' => __('Empty Day Title', 'ics-calendar-pro'),
				'name' => 'empty_day_title',
				'type' => 'text',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_6086ca62e2834',
							'operator' => '==',
							'value' => '1',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'widget-availability',
						),
						array(
							'field' => 'field_5e0b6d6103f5c',
							'operator' => '!=',
							'value' => 'year-availability',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => __('Enter title for empty days...', 'ics-calendar-pro'),
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_6086ce500fb24',
				'label' => 'Empty Day Description',
				'name' => 'empty_day_description',
				'type' => 'textarea',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Enter the description to display on empty days. Event Descriptions must be turned on. HTML is allowed in this field.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_6086ca62e2834',
						'operator' => '==',
						'value' => '1',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => __('Enter description for empty days...', 'ics-calendar-pro'),
				'maxlength' => '',
				'rows' => 4,
				'new_lines' => '',
			),
			/* Note: This appears in two separate locations (with different keys) based on the conditional logic. */
			array(
				'key' => 'field_68cc2acb78fed',
				'label' => __('Empty Day Background Color', 'ics-calendar-pro'),
				'name' => 'empty_day_bg_color',
				'type' => 'color_picker',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_6086ca62e2834',
						'operator' => '==',
						'value' => '1',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
			),
			array(
				'key' => 'field_663ce152b97f5',
				'label' => __('Fix Redundant Events', 'ics-calendar-pro'),
				'name' => 'fixredundantuids',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('If you are combining feeds that may result in redundant events, this option removes all but one instance of matching events on the same date.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'choices' => array(
					'0' => __('off', 'ics-calendar-pro'),
					'1' => __('identical UIDs only (recommended)', 'ics-calendar-pro'),
					'2' => __('matching title and start time', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => '0',
				'layout' => 'vertical',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_6047d64affa94',
				'label' => __('Extend Multiday Events', 'ics-calendar-pro'),
				'name' => 'extendmultiday',
				'type' => 'select',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('If your overnight or multiday events are not displaying proper end dates, use this setting to extend them into the next day.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'' => __('off', 'ics-calendar-pro'),
					'overnight' => __('overnight events with start/end times only', 'ics-calendar-pro'),
					'allday' => __('multiday, all-day events only', 'ics-calendar-pro'),
					'both' => __('both overnight and multiday, all-day events', 'ics-calendar-pro'),
				),
				'default_value' => 0,
				'allow_null' => 0,
				'multiple' => 0,
				'ui' => 0,
				'return_format' => 'value',
				'ajax' => 0,
				'placeholder' => '',
			),
			array(
				'key' => 'field_691f635b804fa',
				'label' => __('Structured Data', 'ics-calendar-pro'),
				'name' => 'jsonld',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('%1$sJSON-LD structured data%2$s can assist search engines in identifying and indexing event-specific data. %3$sNote:%4$s Be sure you want your events indexed individually by search engines before turning on this option. Because search engines require each event in the structured data to have a unique URL, only events that have a URL will be included. See the %5$sGoogle documentation%6$s for more information.', 'ics-calendar-pro'), '<a href="https://schema.org/Event" target="_blank">', '</a>', '<br /><br /><strong>', '</strong>', '<a href="https://developers.google.com/search/docs/appearance/structured-data/event" target="_blank">', '</a>') . '</span></span><small class="beta-indicator">' . __('beta', 'ics-calendar-pro') . '</small>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Add JSON-LD structured data to calendar', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_64496be4a964a',
				'label' => __('Private Events', 'ics-calendar-pro'),
				'name' => 'hideprivateevents',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Entirely excludes from output any events classified as "private" or "confidential" in the ICS feed. (Gives no indication that the event exists.)', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Hide private/confidential events', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6655f7687f2cf',
				'label' => __('Cancelled Events', 'ics-calendar-pro'),
				'name' => 'hidecancelledevents',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Entirely excludes from output any events classified as "cancelled" in the ICS feed. (Gives no indication that the event exists.)', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Hide cancelled events', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6655f79e2f86c',
				'label' => __('Tentative Events', 'ics-calendar-pro'),
				'name' => 'hidetentativeevents',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Entirely excludes from output any events classified as "tentative" in the ICS feed. (Gives no indication that the event exists.)', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'message' => __('Hide tentative events', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5e0b8610851ac',
				'label' => __('Mask Info', 'ics-calendar-pro'),
				'name' => 'maskinfo',
				'type' => 'text',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('If your calendar is intended to show availability only and you do not wish to display event details, enter a text string here (e.g. "Booked") to display on each event. All other event details will be hidden from display.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '50',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => __('Enter general "mask" text to display in place of specific event details...', 'ics-calendar-pro'),
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_5f3e86f04b23c',
				'label' => __('Regular Expressions', 'ics-calendar-pro'),
				'name' => 'regex',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Executes the PHP %1$s function on event data, allowing you to build complex text replacement logic if you need to customize how your event information is displayed. Requires an understanding of %2$sPCRE (Perl-Compatible Regular Expressions)%3$s.', 'ics-calendar-pro'), '<code>preg_replace()</code>', '<a href="https://www.php.net/manual/en/function.preg-replace.php" target="_blank">', '</a>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => array(
					array(
						'field' => 'field_5e0b8610851ac',
						'operator' => '==',
						'value' => '',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'widget-availability',
					),
					array(
						'field' => 'field_5e0b6d6103f5c',
						'operator' => '!=',
						'value' => 'year-availability',
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Filter event data using regular expressions', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_5f3e888c4b23d',
				'label' => __('Pattern', 'ics-calendar-pro'),
				'name' => 'regex_pattern',
				'type' => 'text',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5f3e86f04b23c',
							'operator' => '==',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => 'clear',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_5f3e88b54b23e',
				'label' => __('Replacement', 'ics-calendar-pro'),
				'name' => 'regex_replacement',
				'type' => 'text',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5f3e86f04b23c',
							'operator' => '==',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'default_value' => '',
				'placeholder' => '',
				'prepend' => '',
				'append' => '',
				'maxlength' => '',
			),
			array(
				'key' => 'field_5f3e88e34b23f',
				'label' => __('Scope', 'ics-calendar-pro'),
				'name' => 'regex_scope',
				'type' => 'checkbox',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => array(
					array(
						array(
							'field' => 'field_5f3e86f04b23c',
							'operator' => '==',
							'value' => '1',
						),
					),
				),
				'wrapper' => array(
					'width' => '33.333',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'event_label_html' => __('Event titles', 'ics-calendar-pro'),
					'event_description_html' => __('Event descriptions', 'ics-calendar-pro'),
				),
				'allow_custom' => 0,
				'default_value' => array(
					0 => 'event_label_html',
					1 => 'event_description_html',
				),
				'layout' => 'vertical',
				'toggle' => 0,
				'return_format' => 'value',
				'save_custom' => 0,
			),
			array(
				'key' => 'field_64496892df246',
				'label' => __('Calendar Loading Options', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'message',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '',
					'class' => '',
					'id' => '',
				),
				'message' => '',
				'new_lines' => 'wpautop',
				'esc_html' => 0,
			),
			array(
				'key' => 'field_69f9f6e0e01e5',
				'label' => __('No AJAX', 'ics-calendar-pro'),
				'name' => 'no_ajax',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('By default, calendars are loaded after the page renders, using AJAX. For most use cases, this is desirable and improves performance. But in some rare circumstances, it can cause problems with calendar loading or updating. Check this box to turn off AJAX loading, which will deliver the full calendar data with the initial HTML response.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '50',
					'class' => '',
					'id' => '',
				),
				'message' => __('Do not load the calendar using AJAX', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_69f9f2a30d93c',
				'label' => __('User Agent', 'ics-calendar-pro'),
				'name' => 'ua',
				'type' => 'radio',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Some source calendars may require the request to contain a User Agent string from a recognized web browser, rejecting requests sent with the default %1$s UA string. Choose "append" to add a recognized web browser UA string to the end of the %1$s UA string, or "replace" to send the web browser UA string instead of the %1$s string. %2$sPlease use this option only if your calendar is failing to load without it.%3$s', 'ics-calendar-pro'), 'ICS Calendar', '<strong>', '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '50',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					'' => __('default', 'ics-calendar-pro'),
					'append' => __('append', 'ics-calendar-pro'),
					'1' => __('replace', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => '0',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_656a07cf4c90d',
				'label' => __('Basic Authentication', 'ics-calendar-pro'),
				'name' => 'basicauth',
				'type' => 'true_false',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('If your calendar feed requires HTTP basic authentication, check this box. Please note that you must configure the %1$s constant in your %2$s file, unless your feed URL contains the authentication credentials as indicated in the %3$sdocumentation%4$s.', 'ics-calendar-pro'), '<code>R34ICS_FEED_BASICAUTH</code>', '<strong style="white-space: nowrap;">wp-config.php</strong>', '<a href="https://icscalendar.com/icsdocs/#basicauth" target="_blank">', '</a>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '50',
					'class' => 'clear',
					'id' => '',
				),
				'message' => __('Load calendar using HTTP basic authentication', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
			array(
				'key' => 'field_6398ec3b574f4',
				'label' => __('Skip Domain Errors', 'ics-calendar-pro'),
				'name' => 'skipdomainerrors',
				'type' => 'true_false',
				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . __('Useful for calendars that retrieve multiple feeds from the same server, when that server may not always be available. When checked, if ICS Calendar encounters an error loading one feed, it will not try to load any others from the same domain for the remainder of that page request.', 'ics-calendar-pro') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '50',
					'class' => '',
					'id' => '',
				),
				'message' => __('Skip subsequent feeds from the same domain if a loading error occurs', 'ics-calendar-pro'),
				'default_value' => 0,
				'ui' => 0,
				'ui_on_text' => '',
				'ui_off_text' => '',
			),
		
			/***********************************************************************
			 *  TROUBLESHOOTING
			 ***********************************************************************/
		
			array(
				'key' => 'field_5e0b903b4b3ee',
				'label' => __('Troubleshooting', 'ics-calendar-pro'),
				'name' => '',
				'type' => 'tab',
				'instructions' => '',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '100',
					'class' => '',
					'id' => '',
				),
				'placement' => 'top',
				'endpoint' => 0,
			),
			array(
				'key' => 'field_5e0b909d4b3f0',
				'label' => __('Debug Mode', 'ics-calendar-pro'),
				'name' => 'debug',
				'type' => 'radio',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Turns on the debugger, which displays raw parser data for diagnostic purposes. %1$sOnly logged-in administrators can see the debugger.%2$s', 'ics-calendar-pro'), '<strong style="color: var(--r34ics--color--ics-red);">', '</strong>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '50',
					'class' => '',
					'id' => '',
				),
				'choices' => array(
					0 => __('off', 'ics-calendar-pro'),
					1 => __('basic', 'ics-calendar-pro'),
					2 => __('extended', 'ics-calendar-pro'),
					3 => __('full', 'ics-calendar-pro'),
				),
				'allow_null' => 0,
				'other_choice' => 0,
				'default_value' => '',
				'layout' => 'horizontal',
				'return_format' => 'value',
				'save_other_choice' => 0,
			),
			array(
				'key' => 'field_5e0b904a4b3ef',
				'label' => __('Reload', 'ics-calendar-pro'),
				'name' => 'reload',
				'type' => 'number',

				'instructions' => '<span class="r34icspro-help" aria-hidden="true"><span class="help_content">' . sprintf(__('Feed data is normally cached on the server for %1$s seconds, to improve performance. Use this option to adjust the cache duration for this feed. Setting this to 0 will use the default. %2$sAny value less than 120 will be ignored unless %3$sDebug Mode%4$s is set to "extended" or "full".%5$s', 'ics-calendar-pro'), intval(get_option('r34ics_transients_expiration')), '<em>', '<strong>', '</strong>', '</em>') . '</span></span>',
				'required' => 0,
				'conditional_logic' => 0,
				'wrapper' => array(
					'width' => '25',
					'class' => '',
					'id' => '',
				),
				'default_value' => 0,
				'placeholder' => '3600',
				'prepend' => '',
				'append' => __('seconds', 'ics-calendar-pro'),
				'min' => 0, // Anything from 1-119 will default to 120 unless debug mode is >= 2
				'max' => '',
				'step' => 1,
			),
		),
		'location' => array(
			array(
				array(
					'param' => 'post_type',
					'operator' => '==',
					'value' => 'r34icspro_calendar',
				),
			),
			array(
				array(
					'param' => 'block',
					'operator' => '==',
					'value' => 'acf/ics-calendar',
				),
			),
		),
		'menu_order' => 0,
		'position' => 'normal',
		'style' => 'seamless',
		'label_placement' => 'top',
		'instruction_placement' => 'label',
		'hide_on_screen' => '',
		'active' => true,
		'description' => '',
		'show_in_rest' => 0,
		'display_title' => '',
	);
	
	// Add conditional/deprecated options to field group
	$field_keys = array_column($field_group['fields'], 'key');
	
	// Conditional options
	
	// Remove ICS Events-related selections in Calendar Source Feeds
	if (!get_option('r34icspro_enable_event_cpt')) {
		// Field: Calendar Source Feeds (field_5e0b6b022916c)
		$k = array_search('field_5e0b6b022916c', $field_keys);
		$sub_field_keys = array_column($field_group['fields'][$k]['sub_fields'], 'key');
		// Sub-field: Source Type (field_666b056e863b0)
		$sk = array_search('field_666b056e863b0', $sub_field_keys);
		unset($field_group['fields'][$k]['sub_fields'][$sk]);
		// Sub-field: Category (field_666b07f33ec78)
		$sk = array_search('field_666b07f33ec78', $sub_field_keys);
		unset($field_group['fields'][$k]['sub_fields'][$sk]);
	}
	else {
		
	}
	
	/**
	 * Add deprecated options
	 *
	 * Note: The r34icspro_show_deprecated setting was removed in version 6.0 as there are
	 * currently no deprecated features available, retained here for future reference.
	 */
	/*
	if (get_option('r34icspro_show_deprecated')) {
	
		// Field: View (field_5e0b6d6103f5c)
		$k = array_search('field_5e0b6d6103f5c', $field_keys);
		// Choice: Grid
		$field_group['fields'][$k]['choices']['grid'] = '<strong>' . __('Grid', 'ics-calendar-pro') . '</strong> <small class="deprecated-indicator">' . __('deprecated', 'ics-calendar-pro') . '</small> <span class="r34icspro-radio-desc">' . __('day columns with hourly grid', 'ics-calendar-pro') . '</span>';
		
	}
	*/
	
	// Add field group
	acf_add_local_field_group($field_group);
	
}
