/** * Display the admin bookings page * @since 0.0.1 */ public function show_admin_bookings_page() { require_once RTB_PLUGIN_DIR . '/includes/WP_List_Table.BookingsTable.class.php'; $bookings_table = new rtbBookingsTable(); $bookings_table->prepare_items(); ?> <div class="wrap"> <h2> <?php _e('Restaurant Bookings', 'restaurant-reservations'); ?> <a href="#" class="add-new-h2 add-booking"><?php _e('Add New', 'restaurant-reservations'); ?> </a> </h2> <?php do_action('rtb_bookings_table_top'); ?> <form id="rtb-bookings-table" method="POST" action=""> <input type="hidden" name="post_type" value="<?php echo RTB_BOOKING_POST_TYPE; ?> " /> <input type="hidden" name="page" value="rtb-bookings"> <?php $bookings_table->views(); ?> <?php $bookings_table->advanced_filters(); ?> <?php $bookings_table->display(); ?> </form> <?php do_action('rtb_bookings_table_btm'); ?> </div> <?php }
/** * Print the modal containers * * New/edit bookings, send email, configure columns, errors. * * @since 0.0.1 */ public function print_modals() { global $rtb_controller; ?> <!-- Restaurant Reservations add/edit booking modal --> <div id="rtb-booking-modal" class="rtb-admin-modal"> <div class="rtb-booking-form rtb-container"> <form method="POST"> <input type="hidden" name="action" value="admin_booking_request"> <input type="hidden" name="ID" value=""> <?php /** * The generated fields are wrapped in a div so we can * replace its contents with an HTML blob passed back from * an Ajax request. This way the field data and error * messages are always populated from the same server-side * code. */ ?> <div id="rtb-booking-form-fields"> <?php echo $this->print_booking_form_fields(); ?> </div> <button type="submit" class="button button-primary"> <?php _e('Add Booking', 'restaurant-reservations'); ?> </button> <a href="#" class="button" id="rtb-cancel-booking-modal"> <?php _e('Cancel', 'restaurant-reservations'); ?> </a> <div class="action-status"> <span class="spinner loading"></span> <span class="dashicons dashicons-no-alt error"></span> <span class="dashicons dashicons-yes success"></span> </div> </form> </div> </div> <!-- Restaurant Reservations send email modal --> <div id="rtb-email-modal" class="rtb-admin-modal"> <div class="rtb-email-form rtb-container"> <form method="POST"> <input type="hidden" name="action" value="admin_send_email"> <input type="hidden" name="ID" value=""> <input type="hidden" name="name" value=""> <input type="hidden" name="email" value=""> <fieldset> <legend><?php _e('Send Email', 'retaurant-reservations'); ?> </legend> <div class="to"> <label for="rtb-email-to"><?php _ex('To', 'Label next to the email address to which an email will be sent', 'restaurant-reservations'); ?> </label> <span class="rtb-email-to"></span> </div> <div class="subject"> <label for="rtb-email-subject"><?php _e('Subject', 'restaurant-reservations'); ?> </label> <input type="text" name="rtb-email-subject" placeholder="<?php echo $rtb_controller->settings->get_setting('subject-admin-notice'); ?> "> </div> <div class="message"> <label for="rtb-email-message"><?php _e('Message', 'restaurant-reservations'); ?> </label> <textarea name="rtb-email-message" id="rtb-email-message"></textarea> </div> </fieldset> <button type="submit" class="button button-primary"> <?php _e('Send Email', 'restaurant-reservations'); ?> </button> <a href="#" class="button" id="rtb-cancel-email-modal"> <?php _e('Cancel', 'restaurant-reservations'); ?> </a> <div class="action-status"> <span class="spinner loading"></span> <span class="dashicons dashicons-no-alt error"></span> <span class="dashicons dashicons-yes success"></span> </div> </form> </div> </div> <!-- Restaurant Reservations column configuration modal --> <div id="rtb-column-modal" class="rtb-admin-modal"> <div class="rtb-column-form rtb-container"> <form method="POST"> <input type="hidden" name="action" value="admin_column_config"> <fieldset> <legend><?php esc_html_e('Columns', 'restaurant-reservations'); ?> </legend> <ul> <?php $bookings_table = new rtbBookingsTable(); $columns = $bookings_table->get_all_columns(); $visible = $bookings_table->get_columns(); foreach ($columns as $column => $label) { // Don't allow these columns to be hidden if ($column == 'cb' || $column == 'details' || $column == 'date') { continue; } ?> <li> <label> <input type="checkbox" name="rtb-columns-config" value="<?php esc_attr_e($column); ?> "<?php if (array_key_exists($column, $visible)) { ?> checked<?php } ?> > <?php esc_html_e($label); ?> </label> </li> <?php } ?> </ul> </fieldset> <button type="submit" class="button button-primary"> <?php _e('Update', 'restaurant-reservations'); ?> </button> <a href="#" class="button" id="rtb-cancel-column-modal"> <?php _e('Cancel', 'restaurant-reservations'); ?> </a> <div class="action-status"> <span class="spinner loading"></span> <span class="dashicons dashicons-no-alt error"></span> <span class="dashicons dashicons-yes success"></span> </div> </form> </div> </div> <!-- Restaurant Reservations details modal --> <div id="rtb-details-modal" class="rtb-admin-modal"> <div class="rtb-details-form rtb-container"> <div class="rtb-details-data"></div> <a href="#" class="button" id="rtb-cancel-details-modal"> <?php _e('Close', 'restaurant-reservations'); ?> </a> </div> </div> <!-- Restaurant Reservations error message modal --> <div id="rtb-error-modal" class="rtb-admin-modal"> <div class="rtb-error rtb-container"> <div class="rtb-error-msg"></div> <a href="#" class="button"><?php _e('Close', 'restaurant-reservations'); ?> </a> </div> </div> <?php }