StonehengeCreations

EM - Change default Date & Time for new Events

Dec 15th, 2019
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.01 KB | None | 0 0
  1. <?php
  2. /**************************
  3. This is my version of an edited EM template for the "when" meta box in the Edit Event Page, making the layout MUCH cleaner and giving ME control over the default data. Does your event ever start at 00:00?
  4.  
  5. To use this template, copy and paste it to:
  6. /wp-content/themes/[YOUR-THEME]/plugins/events-manger/forms/event/when.php.
  7. **************************/
  8.  
  9. global $EM_Event, $post;
  10. // Change the default start & end times, or get the saved values.
  11. $hours_format   = em_get_hour_format();
  12. $start_time     = $EM_Event->start()->format($hours_format) === '00:00' ? '09:00' : $EM_Event->start()->format($hours_format);
  13. $end_time       = $EM_Event->end()->format($hours_format) === '00:00' ? '17:00' : $EM_Event->end()->format($hours_format);
  14. ?>
  15. <style>.em-date-range p, .em-time-range p {display: block;}</style>
  16. <script>
  17.     // Change Date Picker options.
  18.     jQuery(document).on('em_datepicker', function( e, em_datepicker ){
  19.         em_datepicker.yearRange = '-0:+2';      // This year + 2 years ahead.
  20.         em_datepicker.minDate = '0';            // First selectable day is today.
  21.     });
  22.     // Copy Start Date to End Date. (My events rarely last for more than a few hours.)
  23.     jQuery(document).on('em_datepicker', function() {
  24.         jQuery(this).focusout( function() {
  25.             jQuery('#event_end_date').val( jQuery('#event_start_date').val() );
  26.         })
  27.     });
  28.     // Change Time Picker options.
  29.     jQuery(document).on('em_timepicker_options', function( e, em_timepicker ){
  30.         em_timepicker.step = 30;                // Show steps of 30 minutes (Default = 15)
  31.         em_timepicker.startTime = '08:00';      // Earliest selectable start time.
  32.         em_timepicker.endTime = '22:00';        // Latest selectable end time.
  33.         em_timepicker.show24Hours = true;       // false for 12-Hour notation.
  34.     });
  35. </script>
  36. <?php
  37. $checked =  !empty($EM_Event->event_all_day) ? 'checked="checked"' : null;
  38. echo '<div class="event-form-when" id="em-form-when">';
  39. echo    '<div class="em-date-range">';
  40. echo        '<p>';
  41. echo            '<strong>' . __('Dates') . '</strong><br>';
  42. echo            __( 'From ', 'events-manager');
  43. echo            '<input class="em-date-start em-date-input-loc" id="event_start_date" type="text" size="10">';
  44. echo            '<input class="em-date-input" type="hidden" name="event_start_date" value="'. $EM_Event->start()->getDate() .'">';
  45. echo            ' '. __('to', 'events-manager') .' ';
  46. echo            '<input class="em-date-end em-date-input-loc" id="event_end_date" type="text" size="10">';
  47. echo            '<input class="em-date-input" type="hidden" name="event_end_date" value="'. $EM_Event->end()->getDate() .'">';
  48. echo        '</p>';
  49. echo    '</div>';
  50. echo    '<div class="em-time-range">';
  51. echo        '<p>';
  52. echo            '<strong>' . ucfirst( __('times','events-manager') ) . '</strong><br>';
  53. echo            __( 'From ', 'events-manager');
  54. echo            '<input id="start-time" class="em-time-input em-time-start" type="text" size="10" name="event_start_time" value="'. $start_time .'">';
  55. echo            ' '. __('to','events-manager') .' ';
  56. echo            '<input id="end-time" class="em-time-input em-time-end" type="text" size="10" name="event_end_time" value="'. $end_time .'">';
  57. echo        '</p>';
  58. echo        '<p>'. __('All day','events-manager') .' <input type="checkbox" class="em-time-all-day" name="event_all_day" id="em-time-all-day" value="1" '. $checked .'></p>';
  59.  
  60. if( get_option('dbem_timezone_enabled') ) {
  61.     echo '<p class="em-timezone">';
  62.     echo    '<label for="event-timezone"><strong>'. esc_html__('Timezone', 'events-manager') .'</strong></label>';
  63.     echo    '<select id="event-timezone" name="event_timezone" aria-describedby="timezone-description">';
  64.     echo        wp_timezone_choice( $EM_Event->get_timezone()->getName(), get_user_locale() );
  65.     echo    '</select>';
  66.     echo '</p>';
  67. }
  68.  
  69. echo '<span id="event-date-explanation">'. esc_html__('This event spans every day between the beginning and end date, with start/end times applying to each day.', 'events-manager') .'</span>';
  70.  
  71. echo '</div>';
  72.  
  73. if( false && get_option('dbem_recurrence_enabled') && $EM_Event->is_recurrence() ) {
  74.     echo '<input type="hidden" name="recurrence_id" value="'. $EM_Event->recurrence_id .'">';
  75. }
  76.  
  77. echo '</div>';
Advertisement
Add Comment
Please, Sign In to add comment