= 3.3.25 = * Security: Cross Site Request Forgery vulnerability in Event/Location deletion. Props rezaduty/Patchstack Alliance * Bug fix: Location handling problem when editing events where location is already set. * Bug fix: [Pro] List JS broken when rendering non-primary-language events. = 3.3.24.1 = * Bug fix: minified mcjs.min.js was invalid in 3.3.24, breaking jump navigation selector. = 3.3.24 = * Bug fix: Don't catch non-ajax actions in navigation with JS. * Change: Collapse template preview by default. * Change: Change parsing of POST data when AJAX action executed. = 3.3.23 = * Bug fix: Don't set to default location if location already set. * Bug fix: Add stopImmediatePropgation to click handlers to prevent other script's scroll effects * Change: Remove .mcajax class as unneeded. = 3.3.22 = * Bug fix: Mismatched variable type broke default week view. = 3.3.21 = * Bug fix: Accidentally stripped HTML out of all event titles with search excerpt highlighting. = 3.3.20 = * Bug fix: Recurring month by day not propagating correctly. * Bug fix: Available admin input settings not displaying correctly. * Bug fix: Unset style variables array could throw PHP warning. * Change: Improvements to structure of search results. * Change: Change default search result template. * Add: search_results template tag with search term highlighting. = 3.3.19 = * Bug fix: Missing support for 'show_recurring' parameter in shortcode builder. * Bug fix: Checkbox input layout in shortcode builder * Bug fix: Locations content filter needs to be restricted to main query only. * Complete documentation of hooks. = 3.3.18 = * Bug fix: img and svg category icon styles applied to list items in category admin. * Bug fix: duplicate sprintf call missing arguments. * Bug fix: Globally review & align var type declarations with params & returns in functions & documentation. * Bug fix: Fix some date iteration on recurring events in iCal exports. * Change: Return http 500 if invalid URL passed to print view return URL. * Continuing hook documentation. = 3.3.17 = * Security Fix: XSS flaw in print view. * Bug fix: View full calendar could be empty if settings not edited. * Bug fix: View full calendar text default not translatable. * Bug fix: Allow class attribute on time element. * Change open in new tab text to 'new tab'. * Label error source in cases where wp_die() is used. * Switch subscription links to webcal: protocol. * Begin adding hook documentation at https://joedolson.github.io/my-calendar/ * Begin adding framework for future version of template handling. = 3.3.16 = * Bug fix: Incorrectly passed list type caused templates to encode html entities. = 3.3.15 = * Bug fix: CPT base values shouldn't allow URL-invalid characters. * Bug fix: Improper variable type checking in mc_settings checkboxes. * Bug fix: Unset search variable in auto-generated display hashes. * New filters: Filter event object. (multilanguage support in Pro) * New filter: Filters on single event HTML. (multilanguage support in Pro) * Add: `language` attribute in main, today, and upcoming events shortcodes. = 3.3.14 = * Bug fix: Variables undefined if scripts disabled. * Update tested to value for WP 6.0. = 3.3.13 = * Bug fix: Don't display empty field containers if field settings are empty. * Bug fix: Pass version number to core stylesheet. * Bug fix: Prevent warning from undefined GET variable in previous/next event links. * Bug fix: Allow strong, b, and hr in shortcode output. * Bug fix: Override masking; causing too many display problems. * Bug fix: JS classes in main output used inverted comparisons. * Notice: Custom JS will be disabled and removed in 3.4. * Change: Collapsed view scripts from five files to one file. * Change: Load new combined file minified. = 3.3.12 = * Bug fix: Find title and find event should use nearest event, not first event. * Bug fix: Title replacement used event ID improperly if mc_id not passed. * Bug fix: Seed GUID with home_url. * Bug fix: Don't throw warnings if host/author ID no longer exists. * Bug fix: Handle recurring event codes if passed from event importer. = 3.3.11 = * Bug fix: Modifying a category didn't refresh the icon SVG for that category. * Bug fix: Contextual help should be viewable with 'view help' capability. * Bug fix: Allow img in event title templates. * Bug fix: 'all' category limit could be cast to an integer, breaking links. * Change: text changes to location select label for clarification of purpose. * Change: allow mc_bulk_actions() to take a second argument with events to modify. = 3.3.10 = * Bug fix: aria-current not rendered on event manager filters. * Bug fix: published filter not marked as current by default. * Bug fix: Cache allowed sites for CORS headers on multisite networks. * Bug fix: fread error if no stylesheet defined. * Bug fix: Extra closing div in single-day view. * Bug fix: Better support for local user time. * Change: Wrapper function for My Calendar time format: `mc_time_format()` = 3.3.9 = * Feature: Ability to merge duplicate locations. * Bug fix: New locations created with events were not properly saved with the event, leading to possible location duplications. * Bug fix: Add location to table should not be checked when copying an event. * Bug fix: Possible fix to meta permissions. * Bug fix: Fall back to non-fulltext queries if search term below length limit. * Bug fix: 'search' nav item not rendering. = 3.3.8 = * Bug fix: Generated a duplicate location if event with location unselected location. * Bug fix: Setting an event's all day label text to blank should not be overridden by defaults. * Bug fix: Delete single event from front-end pointed to wrong destination. * Bug fix: Missing help text for copying events. * Change: Minor text change to empty location value. * Change: Clear list items in list view (CSS) = 3.3.7 = * Bug fix: Fixes location admin verification error in manage locations list. = 3.3.6 = * Bug fix: Event template previews should only show to users who can use them. * Bug fix: Category key icons should show background colors when configured. = 3.3.5 = * Bug fix: Default values for screen options were not called. * Bug fix: Event count dots should not show in print view. * Bug fix: PHP notice if mc_id not set on single event views. * Bug fix: Documentation link led to removed page. * Bug fix: Modal help links should open in parent window, not within modal. * Bug fix: Search query sent to docs site should not be translatable. * Bug fix: JPG or GIF custom icons should be accepted. * Bug fix: Template attributes containing HTML stripped attributes in template manager. * Bug fix: PHP Warning when checking for private category property and object not defined. * Bug fix: Don't show admin grid view location dropdown if more than 200 locations. * Bug fix: Prevent large icons from overflowing custom icon list. * Bug fix: Fix display of custom icons in icons modal. * Performance: only run mc_create_tags() once per event. * Performance: cache whether icons are custom rather than inspecting directory for every icon load. * New filter: `mc_display_location_events` on upcoming event arguments for location screen. * Change: label My Calendar page in pages list. = 3.3.4 = * Bug fix: is_single() shouldn't be called in admin * Bug fix: Prevent invalid events from breaking year dropdown. * Bug fix: Make sure category colors are important. * Bug fix: Set margins to 0 on input/button in nav. * Bug fix: Decreasing font sizes in nav caused too many problems in older themes. * Bug fix: Don't insert locations if no data passed to inserter. * Bug fix: Delete location argument was not used. * Bug fix: don't output empty locations. * Bug fix: 'span' is not an attribute on 'span'. * Bug fix: Verify validity of category relationships when parsing admin lists. * Bug fix: $templates was undefined and broke saving templates. * Bug fix: missing quote in 'delete template' button. * Bug fix: custom templates sanitized incorrectly. * Bug fix: translations link went to old translations site. * Bug fix: Handle what happens if default category is deleted. * Bug fix: Invalid class not reset in admin lists. * Bug fix: date displayed in wrong timezone in admin recurring events list. * Change: If location without any unique data is listed in admin, auto delete. * Change: changes to add dates UI to clarify usage. = 3.3.3 = * Bug fix: Timezone omits positive/negative signifier in JSON LD in UTC+ timezones. * Bug fix: Widen location autocomplete field. * Bug fix: Fix show location shortcode templating. * Bug fix: Recur daily by weekday did not produce valid times. * Bug fix: Skip holidays default state filter missing. * Bug fix: Only apply default state on special case recurrence fields on new events. * Bug fix: Category relationships not updated correctly if category deleted. * Bug fix: File path incorrectly referenced when finding custom icon directories. = 3.3.2 = * Change: Add classes representing start time and event length. * Bug fix: Remove unneeded generic class declarations. * Bug fix: Show stored location, not event location, in events list. * Bug fix: Add missing elements to KSES filters for widgets. * Bug fix: Incorrect logic to hide read more link. * Feature: Add field to set calendar month heading. = 3.3.1 = * Bug fix: Bulk removal of locations broken. * Bug fix: SVG category icons should not be queried remotely; use filesystem. * Layout: wider max-width by default, center calendar in container. * Bug fix: Display more information link had inverted logic & wrong label. * Bug fix: Don't show location link if location is not post type mc-locations. * Bug fix: Week view could end up offset incorrectly in some views due to dates getting double timezone offsets. * Bug fix: Provide back-compatibility for tabs in older versions of My Calendar Pro = 3.3.0 = Backend Changes: * Replaced date picker with the Duet Design Systems accessible date picker. * Accessibility & usability improvements to adding additional occurrences to an event. (DB change) * Add support for custom fields on locations. See demo at Github * Extensive back-end user experience changes. * Link location title to edit screen in location manager * Improve checkbox labeling in event manager. * Improve button labeling in nav ordering. * Add row actions to Location manager. * Add support for custom columns in location manager. * Bug fix: use aria tab panels properly in settings. * Removed upgrade cycles & associated code for upgrading from version 2.3.x (last release in 2015.) * Support aria-sort on sortable tables. * Locations support both descending & ascending sort. * Bug fix: pagination when sorting in event manager. * Update settings configuration for default calendar URL. * New setting to control whether plugin settings are removed on uninstall. * Text changes for clarity & simplification * Change 'Short Description' to 'Excerpt' for clarity * Collapse 'Event Groups' and 'Events List' into a single screen. * Inline help pop-ups * Show event count for category links. * Add settings manager to My Calendar primary view page. * Updated recurring events input method. * Add category during event creation. * Make event bulk actions a dropdown. * With Google Maps API, auto query lat/lon data for locations. * Add calendar view for navigating events in admin. * Simplify featured image support. * Use checkboxes to select categories in widgets & shortcode generator. * Show warning if screen has unsaved changes * Template tag & event template previews. Bug fixes: * Bug fix: Deleting a location from the location manager should not send user to the location editor. * Bug fix: row action links not properly labeled. * Bug fix: row action links not becoming visible on focus. * Bug fix: PHP warning on installations without saved locations. * Bug fix: Screen options weren't able to retrieve user settings correctly. * Bug fix: Event manager displayed recurring event options on single event editing screens. * Bug fix: Form overflows in responsive views. * Bug fix: Need breaking container in map bubble after location name. * Bug fix [a11y]: Ensure focus isn't loss in sortable lists; announce change via wp.a11y.speak. * Bug fix: If no previous or next event, generated numerous PHP errors. * Stylesheet previewer in Design manager. * Only show "special scheduling options" when relevant. * Add Help tab to explain statuses. * Add color picker to CSS variable UI Frontend changes: * Add front-end location view. * Update default custom templates. * Support filtering by multiple locations in calendar shortcodes or by filter. * Change: use a stateful heading for all calendar views. * Change: Support AJAX navigation on date select form. * Bug fix: Override custom select styles from Twenty Twenty One * New: recurring-event classes in event lists. * Rewrote Google Maps scripting * New SVG category icons, sourced from Font Awesome (https://fontawesome.com/license) * New default stylesheet: twentytwentyone.css * Individual display settings for different calendar views * Creates demo content on initial installation. * Enable pretty permalinks by default on new installations * Add accessibility fields as a default event output. * Removed RSS feeds. * Always show event title in pop-up. * Update default date/time formatting. * Support search in calendar navigation. * Support category dropdown in calendar navigation. * Support location dropdown in calendar navigation. * Support accessibility feature dropdown in calendar navigation. * Support ld+json schema.org data for events and locations. * Changed heading structure for main calendar view. * Add event number to list view and event number hint in mini view. * 'Show recurring' flag in upcoming events list. * Upcoming events list should not wrap empty value in `ul` * New default stylesheet Developer Changes: * New actions: 'mc_event_happening', 'mc_event_future', 'mc_event_over' executed whenever an event is compared to the current time, usable for automatic transitions and notifications. * Filter: 'mc_output_is_visible' to determine whether a given display feature should be shown on calendar. * Disable sending email notifications for Spam events. Add action to optionally handle spam notifications. * Remove the process shortcodes option. Shortcodes can be disabled using 'mc_process_shortcodes' filter. * Published documentation to https://docs.joedolson.com/my-calendar/ * New filter to add custom permissions. 'mc_capabilities' * New filter for event details `mc_event_detail_{value}` * Started work on documenting filters and actions. * Code reorganization. * PHP 8.0 compatibility. = 3.2.19 = * Resolve svn problem causing missing files. = 3.2.18 = * Security: Fixes reflected XSS flaw in admin. Props to @erwinr and WPScan. = 3.2.17 = * Bug fix: Add parameter for required fields handling to ignore during imports. * Add filter handling calendar URLs when using Polylang or WPML. = 3.2.16 = * Bug fix: Check for undefined objects in localization, not for undefined object props. * Change: Set parameter for location autocomplete switchover to 50 instead of 25 locations. * Change: Tweak directory removal process slightly. = 3.2.15 = * Bug fix: Hide event details section if no fields are visible for section. * Bug fix: Update localization to correct usage of l10n parameter. * Bug fix: Location AJAX query executed function that only existed in Pro. = 3.2.14 = * Bug fixes: Misc. type casting issues. * Add filters `mc_filter_events` to filter results of main event queries. * Add $args array to `mc_searched_events` filter parameters. * Avoid running My Calendar core functionality through My Calendar's own hooks. * When using REST API, variables are not submitted in a POST query. * [Performance] Move custom location query into object creation to reduce DB calls. * Use try/catch in mc-ajax.js to handle case where href does not contain a full URL. * Autocomplete support for locations in admin. * Reset select elements in My Calendar nav to inline. * Minor refactoring in settings pages. = 3.2.13 = * Bug fix: Using embed targets is more complicated than expected; disable by default. Enable with 'mc_use_embed_targets' filter. * Bug fix: Strip embed from parameters when building links (when embed target enabled.) = 3.2.12 = * Bug fix: Don't use embed target link when AJAX disabled. * Improvement: Add AJAX navigation into browser history & address bar. = 3.2.11 = * Bug fix: switching to week view display broken. * Bug fix: links to template help pointed to old location for help. * Bug fix: AJAX nav pulled height from first rendered calendar, not current navigating calendar. * Change: filter to pass custom notices for front end submissions and editing. * Remove fallback function for is_ssl() * Improve conflicting event errors when the conflicting event is still unpublished. * Add custom template to pass a calendar that's embeddable via iframe. * Bug fix: Multisite environments need to use navigation on current site, not from remote site. = 3.2.10 = * Change: Fallback text should have a stylable wrapper. * Bug fix: Missing translatable string. * Bug fix: When multiple categories selected, events in more than one category would appear multiple times. * Bug fix: Missing space in MySQL filters in event manager. * Bug fix: PHP Notice thrown in location manager. * Bug fix: Add note to open events link field if no URI configured. * Layout fix: Ensure there's always a space between date & time. = 3.2.9 = * Bug fix: Additional of required fields testing erased error messages generated prior to required fields testing. * Bug fix: If an individual occurrence title is edited, event permalinks show the single change on all events. * Bug fix: Prev/next event links don't include unique event IDs. * Bug fix: Remove irrelevant arguments from prev/next event link generation. * Bug fix: Ignore templates if no data passed. = 3.2.8 = * Bug fix: Extraneous screen-reader-text summary generated in event views. * Bug fix: Fixes to missing parameters in Schema.org microdata. * Bug fix: Incorrect type comparison caused custom templates not to render in single event view. * New feature: Default location. = 3.2.7 = * Bug fix: Prevent events from being created without categories. * Bug fix: Ensure category relationships are deleted when related events are deleted. * Add handling for seeing & managing events that are invalid. * Add styles for invalid rows. = 3.2.6 = * Added filter to change date format on calendar grid. * New filter for modifying user selection output. * Bug fix: only check for get_magic_quotes_gpc() if below PHP 7.4 * Bug fix: invalid query in mc_get_locations() if arguments passed as array. = 3.2.5 = * Bug fix: CSV exported text fields contained newline characters. = 3.2.4 = * Bug fix: Permissions issue caused by variable type mismatch. = 3.2.3 = * Bug fix: 3.2.2 created multiple post types with the same slug, triggering 404 errors. * Bug fix: Templates could return the name of the template if template empty/missing. = 3.2.2 = * Bug fix: Curly brace offset access deprecated * Bug fix: Make next/prev post link arguments optional. * Bug fix: Template queries could return an empty template. * Change: Remove trashed events from default events list. = 3.2.1 = * PHP Notice: undefined variable. * Bug fix: screen options not saving. * Bug fix: Accidental auto-assigning of first category to events when editing. = 3.2.0 = * Auto-toggle admin time format if display time format set to European format. * Show API endpoint when API enabled. * Add alternate alias for API endpoint. * Add style variables with category colors to style output. * Add color output icon with CSS variables in style editor. * Add new default stylesheet: Twentytwenty.css * Move permalink setting to general settings panel. * Change event timestamps to use a real UTC timestamp for reference. * Switch from using date() to gmdate(). * Update Pickadate to 3.6.4. Resolves some bugs, but introduces an accessibility issue. * Customizations to Pickadate 3.6.4 to repair accessibility * don't move focus to picker * add 'close' button to time picker. * Switch Pickadate to classic theme (modified). * Improvements to output code layout. * Eliminate empty HTML wrappers in content. * New filter: mc_get_users. Use custom arguments to get users. * New filters: mc_header_navigation, mc_footer_navigation * New template tags: {userstart}, {userend} - date/time in local users timezone. * Bug fix: Misc. ARIA/id relationships broken. * Bug fix: remote locations sometimes pulled from local database. * Bug fix: Long-standing issues in user input settings. * Bug fix: Don't duplicate .summary values. * Bug fix: Only render one close button in mini calendar. * Collapse 'View Calendar' and 'Add Event' adminbar menus into a single menu. * Remove upgrade path from 2.2.10. * Remove .mc-event-visible from style output. Unused since 2011. * Remove numerous deprecated functions. * Conformance with latest WordPress PHPCS ruleset. = 3.1.18 = * Add filters to 'Add to Google Calendar' link: mc_gcal_location & mc_gcal_description * Add 'nofollow' to links to past events. * Include recurrence info in post meta box. * Change limit on adding occurrences from 20 to 40. * Minor code refactoring. = 3.1.17 = * Bug fix: comma misplaced in mc_list_title_title. * Provide special handling in cases where multiple categories are enabled but selector is passed a non-array value. = 3.1.16 = * Bug fix: restricting styles & JS to specific pages broken by strict type checks. * New filter: mc_list_title_title = 3.1.15 = * Bug fix: List of access features produced empty UL if no results. * Bug fix: Always produce a class on event accessibility selection list. * Bug fix: Docs error in describing custom files directory. * Add: support passing multiple site IDs into the calendar shortcode in multisite. = 3.1.14 = * Bug fix: Unescaped event title in HTML output. * Bug fix: Improper saving of Edit All Categories permissions in user profile. * New: [my_calendar_next] shortcode. = 3.1.13 = * Bug fix: If plugin name is translated, script references were broken. * Bug fix: If no holiday category assigned, Today's Events widget will return empty when category limits set. * New filter: allow events post type to be made searchable. (Not recommended.) * New: Support 'search' parameter in shortcode & URL parameters for main view. * Remove option to disable max contrast category names. = 3.1.12 = * Bug fix: User-specific category permissions didn't handle unset (default) values. * Bug fix: missing row closure element when weekends not displayed. = 3.1.11 = * New filter on mc_user_permissions operated on wrong variable. = 3.1.10 = * SECURITY FIX: Unauthenticated XSS scripting vulnerability. Update immediately. Thanks to Andreas Hell. * Support for defining individual categories as having no category icon. = 3.1.9 = * Undefined variable notice. * Disable Yoast canonical URL output on single events * Use same time variable in templates & in main layout. * Using default title template and empty time text, don't display unneeded colon. = 3.1.8 = * Bug fix: 'event_begin' is not always a string, so 'mc_event_date' not always registered correctly. * Update 'sortable' code to be prepared for My Calendar Pro 1.9.0. * Add 'mc_date_format()' function to get appropriate date format * Minor settings design changes. = 3.1.7 = * Add meta field '_mc_event_date' for use in My Tickets * Add option to disable output link using an explicit option. * Change the JS so popups are only attached to links. * Better UI with custom & deleted occurrences in recurring events. * Bug fix: sessions should only be started if a search has been performed. = 3.1.6 = * Bug fix: If a category name was blank, it would automatically be filtered to by upcoming events lists. * Bug fix: Show print view as list if main view is list. * Bug fix: Strip HTML tags from aria-label attributes * Bug fix: .details needs position: relative in twentyfifteen stylesheet * Adjust tested to value to 5.1 = 3.1.5 = * Bug fix: PHP error checking broken due to session creation = 3.1.4 = * Bug fix: typo in category string parameter for ical output = 3.1.3 = * New filter: 'mc_list_titles_separator' * Bug fix: Help support data not displayed. * Override content overflow in Twentynineteen * Add support for iCal format in API exports = 3.1.2 = * Bug fix: Twentyeighteen styles missing from template directory * Bug fix: Declare width on th as well as td * Bug fix: optgroup close element broken * Bug fix: Shortcode generator fixes. * Bug fix: Handle case where hidden categories are not an array in event manager. * Bug fix: If template tag value contains only whitespace, do not render before & after attributes. * Bug fix: Handle form restrictions in KSES introduced in WP 5.0.1. * Bug fix: check whether PHP sessions are enabled before attempting to start * Change: Only render export links in search results if enabled in main settings * Change: [UI] Move stylesheet selector into sidebar * Change: Allow target attribute on links. * Change: Add label to links that open in new tab. = 3.1.1 = * Bug fix: unspamming event_ID passed incorrect variable name * Bug fix: Don't run spam check on users with mc_add_event * Bug fix: Users with mc_add_event should not be able to trash other's events. * Bug fix: Refine permissions; add mc_publish_events allowing users to publish own events without access to others * Bug fix: Refine permissions; don't display links that users can't use. = 3.1.0 = * Add feature (by Josef Fällman): Print & export view for search results. * New filter: mcs_check_conflicts (impacts Pro only) * Bug fix: Fix issue causing duplication in some views. * Bug fix: Time format should be filtered in initial edit view. * Bug fix: Category relationships not retained when Group editing applied. * Bug fix: aria-describedby ID mismatch. = 3.0.19 = * Bug fix: Fatal error in export API when location object included. * BUg fix: my calendar categories queried private categories instead of public. = 3.0.18 = * Bug fix: Invalid setting in bottom nav defaults. * Bug fix: Generate feeds by date added rather than fixed number. If empty, get most recent regardless. * Bug fix: Legitimate HTML escaped in visual editor in group event editor. = 3.0.17 = * Bug fix: Group event editing was broken. * Bug fix: Eliminate four PHP notices in the Today's Events widget. * Added: Filter to control whether CSS should be loaded on archives. = 3.0.16 = * Changed display UID to avoid duplicate IDs when multiple calendars shown. * Add option to display heading in details pop-up. * Unify position and size of close button in Twentyeighteen mini calendar. * Eliminate multi category parameter from CSV output (doesn't support multidimensional data) * Add GUID to export data. = 3.0.15 = * Bug fix: prevent some PHP notices when running Pro importer. * Bug fix: Display of multidate time string when crossing months or years. * Bug fix: Variable written as constant prevented event_span from saving correctly. * Bug fix: Trash counter updated with incorrect values. * Bug fix: Two cases where status counter not updated. * Change: Add DB version to debugging info = 3.0.14 = * Bug fix: incorrect value passed for instance parameter on single event shortcode. * Bug fix: hide HTML wrapper for category color when colors disabled. * Bug fix: Remove transparent background in Twenty eighteen; blocks category colors * Bug fix: Invalid ordering parameter for location lists * Feature: Ability to select multiple categories (props Josef Fällman) * Moved changelogs for 2.5 & earlier to changelog.txt = 3.0.13 = * Bug fix: missing function call when accessing custom mini templates * Bug fix: Syntax error in SQL query checking for conflicts * Change: pass short description to Akismet if long desc absent = 3.0.12 = * Bug fix: My Calendar could prevent canonical link from displaying if canonical link being filtered by another application. * Modernize & improve Akismet integration. * Add filter to disable Akismet checks. = 3.0.11 = * SECURITY: XSS - Canonical URL not properly sanitized. Affects 3.0.0 and up. = 3.0.10 = * Bug fix: invalid method used to sort location lists. * Bug fix: shortcode generator missing input value * Bug fix: datepicker did not reflect start of week settings * Stylesheet CSS change = 3.0.9 = * Bug fix: Error thrown if Akismet had previously been configured, then deleted. * Bug fix: location type was added to params if category key was set. * Bug fix: remove a couple notices * Bug fix: category relationships not carried over when recurring events split = 3.0.8 = * Bug fix: need to allow elements in mc_strip_tags so calendar linkscan point to non-calendar URLs = 3.0.7 = * Bug fix: Case where events ending at midnight (AM) of current day were displayed * Bug fix: trim spaces from values earlier when parsing filter elements * Change: don't declare font-family in older stylesheets. = 3.0.6 = * Bug fix: Shortcode for locations forms always rendered as if in a group filter. * Bug fix: If the default length 1 hr event pushes into next day, adjust length. * Bug fix: Incorrectly nested parentheses caused math error in months-by-day recurrence = 3.0.5 = * Bug fix: If only one event on a day, event title did not show in list view with show title option. * Bug fix: Incorrect array key for fallback parameter in widget * Bug fix: custom template query expected 25 chars instead of 32 * Re-allow
in event titles. = 3.0.4 = * Bug fix: aria-current test was broken for current date * Bug fix: Private categories not disambiguated in MySQL query when excluded * Improve: Rewrite my_calendar_copyr backup functions to use WP core functions. = 3.0.3 = * Bug fix: Category key needed to use a 'WHERE' not an 'AND'; broke output if limiting by category * Bug fix: Error thrown in style editor & category editor if custom directory did not exist = 3.0.2 = * 3.0.1 did not correct the right error. Correct fix. = 3.0.1 = * Bug fix: install error on update. = 3.0.0 = * Bug fix: If category deleted, set events with that category to default cat, not cat ID 1. * Bug fix: Date/time comparison used front-end date value instead of dtstamp in upcoming events. * Bug fix: Navigation issue if beginning of week is in previous month * Bug fix: Event conflict didn't catch events 100% contained inside other events. * Bug fix: Private categories should not be visible to public users in submission forms or category lists * Bug fix: aria-current key term value was translatable * Bug fix: If editing single instance, location is removed * Bug fix: don't show location control notices on front-end * Bug fix: correcting event recurrence did not always remove meta flag * Bug fix: Only output map HTML if API key provided * Bug fix: character set and collation determination on install & update * Bug fix: When changing recurring events, only change instance IDs if the date of the instance has changed. * Bug fix: Event post should not change post date on update * Bug fix: All day events should export correctly to Outlook & Apple Calendar * Bug fix: Location control accordion was not accessible. * Bug fix: Term ID was not set in category manager if term already existed. * Bug fix: Make sure that the 's' query var is not automatically added to My Calendar URLs * Add: several new filters * Add: notice to alert users if their calendar configured for remote event source. * Add: map display to back-end location manager. * Add: location search in location manager * Add: ability to filter location lists used to submit data 'mc_get_locations' * Add: Support for multiple categories on events. * Add: stylesheet (Twenty Eighteen) * Add: CSS variables support * Add: list of problem events in Manage Events sidebar * Add: add months shown in list view to shortcode parameters * Add: support for auto-refresh of cache for a variety of caching plug-ins. * Add: Option to remove event data on uninstall * Add: filter to define events as private via custom methods * Add: event preview * Add: location support to mini calendar widget * Add: CSS code editor available in Style editing * Add: HTML code editor available in Template editing * Add: Schema.org address markup * Add: Schema.org event markup * Add: Include event link in 'Add to Google Cal' content. * Add: date format for multi-day dates in grid view. * Removed: event open & event closed text settings * Removed: event_open event status (little used and confusing; replaced by My Tickets) * Removed: guessing calendar install location * Removed: event cache code * Removed: upgrade routines from 1.11.x * Removed: mc_widget_defaults option * Removed: user's guide references * Change: default image sizes from 'medium' to 'large' * Change: Remove ability to disable event approval; remap "approval" to "draft" * Change: default number of results to show in advanced event search. * Change: Switched from image to icon font for close button * Change: Major changes to event fetching * Change: Major changes to code organization * Change: Added caching on database engine query * Change: if event location set in dropdown, event will always display location as shown in location manager * Change: changed argument style for major functions to arrays of arguments * Change: move Location Manager to separate page; add location sorting. * Change: Move exif_ fallback function into utilities include * Change: Moved location & category specific settings * Change: Simplified texts in several locations * Change: Clearer UI on location input limits * Change: autotoggle end date minimum input when start date set * Change: Reorganized input fields * Change: Generate separate iCal exports for Google Calendar or Outlook * Change: Constrain tabbing within details pop-up * Change: Close details pop-up with Esc key * Change: Audited options to remove unused or unneeded options * Change: Create a referential template when shortcode generated * Change: Feeds nav panel now shows subscription links; exports are available in 'exports' panel. = 2.5.17 = * Security: Authenticated XSS vulnerability resolved. * Remove 'create_function' for PHP 7.2 compatibility. * Updated: Upgrade Notice output. = 2.5.16 = * Bug fix: Event deletion action executed when individual instance deleted from front-end * Updates: due to esc_sql function changes in WordPress 4.8.3 = 2.5.15 = * Bug fix: Jumpbox rendered October as January due to unneeded character replacement = 2.5.14 = * Bug fix: saving setting for main calendar URL from front page doesn't work * Bug fix: esc_url only in appropriate places * Bug fix: Recognize month parameter from shortcode in navigation elements * Bug fix: 404s for deleted events * Bug fix: Print styles handle date in week view better * Bug fix: Events not visible in list with list JS disabled * Bug fix: SQL query for conflict checking threw errors * New option: list all events in list view with JS = 2.5.13 = * Bug fix: Categories can not be part of the md5 hash used to identify unique tables (breaks AJAX nav for categories) * Bug fix: recurring scheduling for week-days only not functional when 7 days or greater * Bug fix: Print view location filters broken * Bug fix: Make AJAX scripting aware of which other scripts are enabled. * Bug fix: Sort scheduled dates for event by date * Bug fix: JetPack Grunion Contact form interfered with TinyMCE in contexts outside of post editor (https://github.com/Automattic/jetpack/issues/7598) * Bug fix: ensure date is retained if datepicker disabled * Bug fix: archived events filter marked as active when not = 2.5.12 = * Bug fix: missing space in conflict identification * Bug fix: internationalization of string to time created conflict when entering month abbreviations * Add filter to enable creation of a custom content editor = 2.5.11 = * Bug fix: Bottom mass action buttons outside of form * Bug fix: User select form used 'checked' instead of 'selected' = 2.5.10 = * Bug fix: allow parsing of non-English strings through strtotime() * Bug fix: trim whitespace off array keys in location controller * Bug fix: Don't display 'Add Event' menu in adminbar if remote event database is enabled * Bug fix: All day events correctly exported in iCal files * Bug fix: Footer navigation not shown on single day view * Bug fix: Execute AJAX navigation from both header and footer containers * Bug fix: {icon_html} returned broken image if category had no assigned icon * Removed obsolete PHP 4 compatibility for clone keyword * Added hook to prevent activation if PHP version below 5.3.0. * New filter: define custom target calendar URL via 'mc_get_uri' filter * New action: 'mc_insert_recurring' run while creating event instances * New filter to customize default event length: 'mc_default_event_length' * New filter: 'mc_show_week_number' to turn on column indicating displayed week's number. (props Josef Fällman) * UI Change: Duplicate navigation and search on events list at bottom of list * Miscellaneous improvements to the My Calendar Filters shortcode: set target URL & change location search type, add as widget * New widget: My Calendar event filters * Added inverse color style declaration to category color template tag = 2.5.9 = * Bug fix: class .mc-main appeared twice in day view * Bug fix: iCal output fetches no data on subsites in multisite networks * Bug fix: broken image upload script due to localization change * Bug fix: sorting events by category should sort by name, not ID * Add site name to .ics output file = 2.5.8 = * Bug fix: mc-ajax.js referred to a class that did not always exist * Bug fix: Cases missed in interpreting category class values * Bug fix: For backwards compatibility, ensure that spaces are replaced with hyphens in category classes * Bug fix: Check whether templates returned are empty & ensure fallback renders * Bug fix: revise FOUC implementation to avoid jQuery not defined errors = 2.5.7 = * Bug fix: notice in event image field if input disabled * Bug fix: class setting was based on GMT timestamp according to MySQL * Bug fix: PHP notice thrown if requested template doesn't exist * Bug fix: support for embedding videos via iFrame. * Bug fix: JS refinements to AJAX loading; changing formats can cause panel closing not to fire due to .list/.calendar switching * Bug fix: JS refinements to AJAX loading; make sure everything works when positioned in the header or are excluded * Bug fix: always provide a category class that's valid * Bug fix: If mini calendar links set to open to new page, automatically disable JS * Bug fix: If special options hidden, always set to 'true' on event save. * Added: aria-current for current date. * Improve KSES implementation * Improved URL building * Improvements to print CSS * Improvements to sortable CSS * New filter: 'mc_category_icon' * New action: 'mc_print_view_head' = 2.5.6 = * New filter: mc_user_can_see_private_events to change criteria for visibility of private events * New filter: mc_private_categories to tweak which categories are considered private * Bug fix: PHP warning due to cache query occurring when caching is not enabled * Bug fix: images entered only as URLs deleted on edit * Accessibility: aria-expanded attached to wrong element in list view * Accessibility: ornamental icon fonts exposed to screen readers = 2.5.5 = * Bug fix: notices when generating classes for upcoming events * Bug fix: RSS feed should respect private categories * Bug fix: Events happening now shortcode should respect private categories * Bug fix: iCal output should respect private categories * Bug fix: @ suppressed notices in template tag parsing. props @uscore713 * Bug fix: eliminate two notices in upcoming events class parsing * New filter: mc_draw_upcoming_event * New filter: mc_draw_todays_event * Marked as compatible with 4.7 = 2.5.4 = * Add New link on Manage Events screen * Add new link on Edit categories screen * Add new link on Edit locations screen * Changed maxlength on recurrence unit field to 2 * Eliminate two notices generate on manage events screen * Two incorrect method_exists checks; should be property_exists = 2.5.3 = * Bug fix: prevent non-object warning in check for notime text * Bug fix: missing classes from some instances of upcoming events list * Bug fix: Only show invalid format/time errors if user with permissions. * Enhancement: Include invalid format/time in error message. * Performance: In single event shortcode, break out of foreach if list of related events not being produced. = 2.5.2 = * Bug fix: Make sure that upcoming events element filters operate in all cases * Bug fix: Permit {register} template tag to pass additional attributes * Bug fix: Add class to permitted attributes on span tag = 2.5.1 = * Bug fix: Multi-word category titles not hyphenated in event classes * Bug fix: Add `{related}` template tag to documentation * Bug fix: Today's events template broken * Add 'past-event' and 'future-event' classes to related event list & main events lists = 2.5.0 = * Update hcalendar structures * Better handling when updating event taxonomies * Options to restrict management of events by category / user * UI Clean up * Don't display format toggle on mobile if automatic format switching enabled * Add custom date option to upcoming events shortcode builder * Improved error message if user creates event with an invalid recurring cycle * Updated template editor; ability to create custom templates. * Add option to add new dates for an existing event. * For single event, show closest available date if no/invalid date ID provided. * Added first occurrence data to core event object * New template tag: {related} to list other events in the same group * New loading indicator for AJAX navigation * New filter to modify event classes * New function to generate event classes * Reduce number of strings in plug-in to reduce burden on translators * Multisite: ability to display calendar for any site on any other site * in my_calendar_draw_event(), add filter to hide additional days of events * Improved HTML filtering to allow input elements and schema.org attributes. * Add support for Google Maps API key field, now required for use of Google Maps on new sites * Add 'today' keyword for the upcoming events 'to' attribute * Updates to Help documentation * Bug fix: auto assign events with no category to 'General' * Bug fix: some user select lists overwrote select list options * Bug fix: new events with no times entered need to be created as all day events * Bug fix: wrong number of arguments passed to mass delete events hook * Bug fix: Custom JS incorrectly escaped in Script manager * Bug fix: removed numerous notices * Bug fix: improved handling of missing event posts * Bug fix: allow more HTML elements & attributes * Bug fix: misc. notices Breaking Changes: * Breaking change: minor changes to classes to improve structured data in microformats * Breaking change: upcoming events widget no longer uses ID 'upcoming-events'; use class '.upcoming-events' * Breaking change: today's events widget no longer uses ID 'todays-events'; use class '.todays-events' = 2.4.21 = * Bug fix: Google Maps format change to latitude/longitude links * Bug fix: Use short description directly as {excerpt} if provided. = 2.4.20 = * Bug fix: PHP warning triggered on type conversion when toggling time views. * Bug fix: Map template tag returned raw scripts without `