Changelogs

4.0

2015-12-02 Security1 Feature5 Tweak24 Fix16 Deprecated57

Security

  • A TON of escaping was added to our codebase thanks to the efforts of the always-helpful Andy Fragen (@afragen)

Features

  • Moved the Ticket framework code into its own plugin (event-tickets)
  • The event cost now supports more international formats with the addition of the tribe_events_cost_separators filter (Thank you remokrol for bringing this to our attention!)
  • Added support for the twentysixteen theme
  • Created a new Add-Ons tab in Settings so that TEC add-ons can have a consolidated settings tab
  • Improve the date formats UI by providing example output for each selected format

Tweaks

Fixes

  • Resolved issue where the iCal feed did not provide an appropriately formatted timezone in some cases (Cheers to Matt for the report!)
  • Added support for translating some previously untranslatable strings (Props to tititou36, media325, and Stef!)
  • Prevented duplicate CSS IDs on the mini calendars (Cheers to Corrado for the help!)
  • Fixed bug causing tribe_get_single_ical_link() and tribe_get_ical_link() to use the same URL when it shouldn't (Props to Ben Byrne @drywall on Twitter for the heads up!)
  • Fixed issue where the "Add another organizer" text wasn't using the correct singular label (Thank you MIKE for the report!)
  • Various CSS fixes for twenty(ten-fifteen)
  • Improved our handling of get_current_screen() across the plugin, avoiding notices and warnings (Thank you Mike for the help!)
  • Fixed bug where accessing object properties on a non object errored out when saving event meta (props to @dalethedeveloper on GitHub for this fix!)
  • Fixed bug where organizer ID meta attached sometimes included a blank record. That blank record is no longer returned in tribe_get_organizer_ids()
  • Fixed error message returned when tabbing away from a blank event name meta box so that it properly indicates that an event name is required (Our thanks to @tapan29bd for this fix!)
  • Resolved issue where Timezone event start/end date property name strings were malformed which guaranteed a a call to get_post_meta for Timezone date strings
  • Fixed CSS issue where the month view calendar could sometimes extend beyond the edge of the page when Skeleton Styles were enabled
  • Fixed a problem where iCal data was generated with incorrect dates in the case of some all days events (thanks to Matt for highlighting this)
  • Resolved a problem causing the previous month view to appear when it should not
  • Fixed issue in mobile month view where date was missing from heading
  • Resolved issue that caused /events/ to 404 if it was visited on a new install before hitting "Save" on the Events > Settings > Display page

Deprecateds

  • The Tribe__Events__Main::defaultValueReplaceEnabled() method is being deprecated in favor of tribe_get_option('defaultValueReplace'). Schedules for removal in v4.5
  • The tribe_event_link() has been deprecated in favor of tribe_get_event_link(). Scheduled for removal in 5.0
  • The third parameter of tribe_get_organizer_link() (the $echo parameter) has been deprecated and is scheduled for removal in 5.0
  • Tribe__Events__Abstract_Deactivation in favor of Tribe__Abstract_Deactivation
  • Tribe__Events__Admin__Helpers in favor of Tribe__Admin__Helpers
  • Tribe__Events__App_Shop in favor of Tribe__App_Shop
  • Tribe__Events__Autoloader in favor of Tribe__Autoloader
  • Tribe__Events__Cache in favor of Tribe__Cache
  • Tribe__Events__Cache_Listener in favor of Tribe__Cache_Listener
  • Tribe__Events__Changelog_Reader in favor of Tribe__Changelog_Reader
  • Tribe__Events__Credits in favor of Tribe__Credits
  • Tribe__Events__Date_Utils in favor of Tribe__Date_Utils
  • Tribe__Events__Field in favor of Tribe__Field
  • Tribe__Events__Settings in favor of Tribe__Settings
  • Tribe__Events__Settings_Tab in favor of Tribe__Settings_Tab
  • Tribe__Events__Support in favor of Tribe__Support
  • Tribe__Events__Template_Part_Cache in favor of Tribe__Template_Part_Cache
  • Tribe__Events__Tickets__Attendees_Table in favor of Tribe__Tickets__Attendees_Table in the event-tickets plugin
  • Tribe__Events__Tickets__Metabox in favor of Tribe__Tickets__Metabox in the event-tickets plugin
  • Tribe__Events__Tickets__Ticket_Object in favor of Tribe__Tickets__Ticket_Object in the event-tickets plugin
  • Tribe__Events__Tickets__Tickets in favor of Tribe__Tickets__Tickets in the event-tickets plugin
  • Tribe__Events__Tickets__Tickets_Pro in favor of Tribe__Tickets__Tickets_Handler in the event-tickets plugin
  • Tribe__Events__Validate in favor of Tribe__Validate
  • Tribe__Events__View_Helpers in favor of Tribe__View_Helpers
  • Tribe__Events__Main::OPTIONNAME in favor of Tribe__Main::OPTIONNAME
  • Tribe__Events__Main::OPTIONNAMENETWORK in favor of Tribe__Main::OPTIONNAMENETWORK
  • Tribe__Events__Main::addHelpAdminMenuItem() in favor of Tribe__Settings_Manager::add_help_admin_menu_item()
  • Tribe__Events__Main::addNetworkOptionsPage() in favor of Tribe__Settings_Manager::add_network_options_page()
  • Tribe__Events__Main::array_insert_after_key() in favor of Tribe__Main::array_insert_after_key()
  • Tribe__Events__Main::array_insert_before_key() in favor of Tribe__Main::array_insert_before_key()
  • Tribe__Events__Main::debug() in favor of Tribe__Debug::debug()
  • Tribe__Events__Main::defaultValueReplaceEnabled() in favor of tribe_get_option( 'defaultValueReplace' )
  • Tribe__Events__Main::doHelpTab() in favor of Tribe__Settings_Manager::do_help_tab()
  • Tribe__Events__Main::doNetworkSettingTab() in favor of Tribe__Settings_Manager::do_network_settings_tab()
  • Tribe__Events__Main::doSettingTabs() in favor of Tribe__Settings_Manager::do_setting_tabs()
  • Tribe__Events__Main::do_licenses_tab() in favor of Tribe__Settings_Manager::do_licenses_tab()
  • Tribe__Events__Main::getNetworkOption() in favor of Tribe__Settings_Manager::get_network_option()
  • Tribe__Events__Main::getNetworkOptions() in favor of Tribe__Settings_Manager::get_network_options()
  • Tribe__Events__Main::getNotices() in favor of Tribe__Notices::get()
  • Tribe__Events__Main::getOption() in favor of Tribe__Settings_Manager::get_option()
  • Tribe__Events__Main::getOptions() in favor of Tribe__Settings_Manager::get_options()
  • Tribe__Events__Main::have_addons() in favor of Tribe__Settings_Manager::have_addons()
  • Tribe__Events__Main::isNotice() in favor of Tribe__Notices::is_notice()
  • Tribe__Events__Main::pluginDir in favor of Tribe__Events__Main::plugin_dir
  • Tribe__Events__Main::pluginName in favor of Tribe__Events__Main::plugin_name
  • Tribe__Events__Main::pluginPath in favor of Tribe__Events__Main::plugin_path
  • Tribe__Events__Main::pluginUrl in favor of Tribe__Events__Main::plugin_url
  • Tribe__Events__Main::removeNotice() in favor of Tribe__Notices::remove_notice()
  • Tribe__Events__Main::renderDebug() in favor of Tribe__Debug::render()
  • Tribe__Events__Main::saveAllTabsHidden() in favor of Tribe__Settings_Manager::save_all_tabs_hidden()
  • Tribe__Events__Main::setNetworkOptions() in favor of Tribe__Settings_Manager::set_network_options()
  • Tribe__Events__Main::setNotice() in favor of Tribe__Notices::set_notice()
  • Tribe__Events__Main::truncate() in favor of tribe_events_get_the_excerpt()
  • tribe_event_beginning_of_day() in favor of tribe_beginning_of_day()
  • tribe_event_end_of_day() in favor of tribe_end_of_day()
  • tribe_event_format_date() in favor of tribe_format_date()
  • tribe_events_the_notices() in favor of tribe_the_notices()