PageRenderTime 52ms CodeModel.GetById 26ms RepoModel.GetById 0ms app.codeStats 0ms

/public/wp-content/plugins/the-events-calendar/vendor/tickets/src/admin-views/meta-box.php

https://gitlab.com/kath.de/cibedo_cibedo.de
PHP | 239 lines | 212 code | 15 blank | 12 comment | 8 complexity | f795a1801808a00aec11e52eb23373e6 MD5 | raw file
  1. <?php
  2. /**
  3. * @var WP_Post $post
  4. * @var bool $show_global_stock
  5. * @var Tribe__Tickets__Global_Stock $global_stock
  6. */
  7. // Don't load directly
  8. if ( ! defined( 'ABSPATH' ) ) {
  9. die( '-1' );
  10. }
  11. $header_id = get_post_meta( get_the_ID(), $this->image_header_field, true );
  12. $header_id = ! empty( $header_id ) ? $header_id : '';
  13. $header_img = '';
  14. if ( ! empty( $header_id ) ) {
  15. $header_img = wp_get_attachment_image( $header_id, 'full' );
  16. }
  17. $modules = Tribe__Tickets__Tickets::modules();
  18. ?>
  19. <table id="event_tickets" class="eventtable">
  20. <?php
  21. wp_nonce_field( 'tribe-tickets-meta-box', 'tribe-tickets-post-settings' );
  22. if ( get_post_meta( get_the_ID(), '_EventOrigin', true ) === 'community-events' ) {
  23. ?>
  24. <tr>
  25. <td colspan="2" class="tribe_sectionheader updated">
  26. <p class="error-message"><?php esc_html_e( 'This event was created using Community Events. Are you sure you want to sell tickets for it?', 'event-tickets' ); ?></p>
  27. </td>
  28. </tr>
  29. <?php
  30. }
  31. ?>
  32. <tr class="event-wide-settings">
  33. <td colspan="2" class="tribe_sectionheader updated">
  34. <table class="eventtable ticket_list eventForm">
  35. <tr class="tribe-tickets-image-upload">
  36. <td>
  37. <?php esc_html_e( 'Upload image for the ticket header', 'event-tickets' ); ?>
  38. <p class="description"><?php esc_html_e( 'The maximum image size in the email will be 580px wide by any height, and then scaled for mobile. If you would like "retina" support use an image sized to 1160px wide.', 'event-tickets' ); ?></p>
  39. </td>
  40. <td>
  41. <input type="button" class="button" name="tribe_ticket_header_image" id="tribe_ticket_header_image" value="<?php esc_html_e( 'Select an Image', 'event-tickets' ); ?>" />
  42. </td>
  43. </tr>
  44. <tr class="tribe-tickets-image-preview">
  45. <td colspan="2">
  46. <div class="tribe_preview" id="tribe_ticket_header_preview">
  47. <?php echo $header_img; ?>
  48. </div>
  49. <p class="description"><a href="#" id="tribe_ticket_header_remove"><?php esc_html_e( 'Remove', 'event-tickets' ); ?></a></p>
  50. <input type="hidden" id="tribe_ticket_header_image_id" name="tribe_ticket_header_image_id" value="<?php echo esc_attr( $header_id ); ?>" />
  51. </td>
  52. </tr>
  53. </table>
  54. </td>
  55. </tr>
  56. <?php if ( $show_global_stock ): ?>
  57. <tr id="tribe-global-stock-settings" class="event-wide-settings">
  58. <td colspan="2">
  59. <table class="eventtable ticket_list eventForm">
  60. <tr>
  61. <td>
  62. <label for="tribe-tickets-enable-global-stock">
  63. <?php esc_html_e( 'Enable global stock', 'event-tickets' ); ?>
  64. </label>
  65. </td>
  66. <td>
  67. <input type="checkbox" name="tribe-tickets-enable-global-stock" id="tribe-tickets-enable-global-stock" value="1" <?php checked( $global_stock->is_enabled() ); ?> />
  68. </td>
  69. </tr>
  70. <tr id="tribe-tickets-global-stock-level">
  71. <td>
  72. <label for="tribe-tickets-global-stock">
  73. <?php esc_html_e( 'Global stock level', 'event-tickets' ); ?>
  74. </label>
  75. </td>
  76. <td>
  77. <input type="number" name="tribe-tickets-global-stock" id="tribe-tickets-global-stock" value="<?php echo esc_attr( $global_stock->get_stock_level() ); ?>" />
  78. <span class="tribe-tickets-global-sales">
  79. <?php echo esc_html( sprintf( _n( '(%s sold)', '(%s sold)', $global_stock->tickets_sold(), 'event-tickets' ), $global_stock->tickets_sold() ) ); ?>
  80. </span>
  81. </td>
  82. </tr>
  83. </table>
  84. </td>
  85. </tr>
  86. <?php endif; ?>
  87. <?php
  88. /**
  89. * Fired to allow for the insertion of additional content into the ticket admin form before the tickets listing
  90. *
  91. * @param Post ID
  92. */
  93. do_action( 'tribe_events_tickets_metabox_pre', get_the_ID() ); ?>
  94. <tr>
  95. <td colspan="2" class="tribe_sectionheader ticket_list_container">
  96. <?php $this->ticket_list_markup( $tickets ); ?>
  97. </td>
  98. </tr>
  99. <tr>
  100. <td colspan="2" class="tribe_sectionheader">
  101. <a href="#" class="button-secondary"
  102. id="ticket_form_toggle"><?php esc_html_e( 'Add new ticket', 'event-tickets' ); ?></a>
  103. </td>
  104. </tr>
  105. <tr id="ticket_form" class="ticket_form">
  106. <td colspan="2" class="tribe_sectionheader">
  107. <div id="tribe-loading"><span></span></div>
  108. <table id="ticket_form_table" class="eventtable ticket_form">
  109. <tr>
  110. <td colspan="2">
  111. <h4 class="ticket_form_title_add"><?php esc_html_e( 'Add new ticket', 'event-tickets' ); ?></h4>
  112. <h4 class="ticket_form_title_edit"><?php esc_html_e( 'Edit ticket', 'event-tickets' ); ?></h4>
  113. </td>
  114. </tr>
  115. <tr class="ticket">
  116. <td width="20%"><label for="ticket_provider"><?php esc_html_e( 'Sell using:', 'event-tickets' ); ?></label></td>
  117. <td>
  118. <?php
  119. $checked = true;
  120. foreach ( $modules as $class => $module ) {
  121. ?>
  122. <input <?php checked( $checked ); ?> type="radio" name="ticket_provider" id="ticket_provider"
  123. value="<?php echo esc_attr( $class ); ?>"
  124. class="ticket_field">
  125. <span><?php echo esc_html( $module ); ?></span>
  126. <?php
  127. $checked = false;
  128. }
  129. ?>
  130. </td>
  131. </tr>
  132. <tr class="ticket">
  133. <td><label for="ticket_name"><?php esc_html_e( 'Ticket Name:', 'event-tickets' ); ?></label></td>
  134. <td>
  135. <input type='text' id='ticket_name' name='ticket_name' class="ticket_field" size='25' value='' />
  136. </td>
  137. </tr>
  138. <tr class="ticket">
  139. <td><label
  140. for="ticket_description"><?php esc_html_e( 'Ticket Description:', 'event-tickets' ); ?></label>
  141. </td>
  142. <td>
  143. <textarea rows="5" cols="40" name="ticket_description" class="ticket_field"
  144. id="ticket_description"></textarea>
  145. </td>
  146. </tr>
  147. <tr class="ticket">
  148. <td><label
  149. for="ticket_start_date"><?php esc_html_e( 'Start sale:', 'event-tickets' ); ?></label>
  150. </td>
  151. <td>
  152. <input autocomplete="off" type="text" class="ticket_field" size='10' name="ticket_start_date"
  153. id="ticket_start_date" value="">
  154. <span class="ticket_start_time ticket_time">
  155. <?php echo tribe_get_datetime_separator(); ?>
  156. <select name="ticket_start_hour" id="ticket_start_hour" class="ticket_field">
  157. <?php echo $startHourOptions; ?>
  158. </select>
  159. <select name="ticket_start_minute" id="ticket_start_minute" class="ticket_field">
  160. <?php echo $startMinuteOptions; ?>
  161. </select>
  162. <?php if ( ! strstr( get_option( 'time_format', Tribe__Date_Utils::TIMEFORMAT ), 'H' ) ) : ?>
  163. <select name="ticket_start_meridian" id="ticket_start_meridian" class="ticket_field">
  164. <?php echo $startMeridianOptions; ?>
  165. </select>
  166. <?php endif; ?>
  167. </span>
  168. </td>
  169. </tr>
  170. <tr class="ticket">
  171. <td valign="top"><label
  172. for="ticket_end_date"><?php esc_html_e( 'End sale:', 'event-tickets' ); ?></label>
  173. </td>
  174. <td valign="top">
  175. <input autocomplete="off" type="text" class="ticket_field" size='10' name="ticket_end_date"
  176. id="ticket_end_date" value="">
  177. <span class="ticket_end_time ticket_time">
  178. <?php echo tribe_get_datetime_separator(); ?>
  179. <select name="ticket_end_hour" id="ticket_end_hour" class="ticket_field">
  180. <?php echo $endHourOptions; ?>
  181. </select>
  182. <select name="ticket_end_minute" id="ticket_end_minute" class="ticket_field">
  183. <?php echo $endMinuteOptions; ?>
  184. </select>
  185. <?php if ( ! strstr( get_option( 'time_format', Tribe__Date_Utils::TIMEFORMAT ), 'H' ) ) : ?>
  186. <select name="ticket_end_meridian" id="ticket_end_meridian" class="ticket_field">
  187. <?php echo $endMeridianOptions; ?>
  188. </select>
  189. <?php endif; ?>
  190. </span>
  191. <br />
  192. <p class="description">
  193. <?php esc_html_e( 'When will ticket sales occur?', 'event-tickets' ); ?>
  194. <?php
  195. // Why break in and out of PHP? because I want the space between the phrases without including them in the translations
  196. if ( class_exists( 'Tribe__Events__Main' ) && Tribe__Events__Main::POSTTYPE === get_post_type( $post ) ) {
  197. esc_html_e( "If you don't set a start/end date for sales, tickets will be available from now until the event ends.", 'event-tickets' );
  198. }
  199. ?>
  200. </p>
  201. </td>
  202. </tr>
  203. <?php
  204. /**
  205. * Fired to allow for the insertion of additional content into the ticket admin form
  206. *
  207. * @var Post ID
  208. * @var null Ticket ID
  209. */
  210. do_action( 'tribe_events_tickets_metabox_advanced', get_the_ID(), null ); ?>
  211. <tr class="ticket bottom">
  212. <td></td>
  213. <td>
  214. <input type="hidden" name="ticket_id" id="ticket_id" class="ticket_field" value="" />
  215. <input type="button" id="ticket_form_save" name="ticket_form_save" value="<?php esc_attr_e( 'Save this ticket', 'event-tickets' ); ?>" class="button-primary" />
  216. <input type="button" id="ticket_form_cancel" name="ticket_form_cancel" value="<?php esc_attr_e( 'Cancel', 'event-tickets' ); ?>" class="button-secondary" />
  217. </td>
  218. </tr>
  219. </table>
  220. </td>
  221. </tr>
  222. </table>