Payments_Tab
Class Payments_Tab
Source
File: src/Tickets/Commerce/Payments_Tab.php
class Payments_Tab extends tad_DI52_ServiceProvider {
/**
* @inheritdoc
*/
public function register() {
$this->container->singleton( static::class, $this );
}
/**
* Create the Tickets Commerce Payments Settings Tab.
*
* @since 5.2.0
*/
public function register_tab() {
$tab_settings = [
'priority' => 25,
'fields' => $this->get_top_level_settings(),
'show_save' => true,
];
$tab_settings = apply_filters( 'tec_tickets_commerce_payments_tab_settings', $tab_settings );
new \Tribe__Settings_Tab( 'payments', esc_html__( 'Payments', 'event-tickets' ), $tab_settings );
}
/**
* Gets the top level settings for Tickets Commerce.
*
* @since 5.2.0
*
* @return array[]
*/
public function get_top_level_settings() {
$plus_link = sprintf(
'<a href="https://evnt.is/19zl" target="_blank" rel="noopener noreferrer">%s</a>',
esc_html__( 'Event Tickets Plus', 'event-tickets' )
);
$plus_link_2 = sprintf(
'<a href="https://evnt.is/19zl" target="_blank" rel="noopener noreferrer">%s</a>',
esc_html__( 'Check it out!', 'event-tickets' )
);
$plus_message = sprintf(
// Translators: %1$s: The Event Tickets Plus link, %2$s: The word "ticket" in lowercase, %3$s: The "Check it out!" link.
esc_html_x( 'Tickets Commerce is a light implementation of a commerce gateway using PayPal and simplified stock handling. If you need more advanced features, take a look at %1$s. In addition to integrating with your favorite ecommerce provider, Event Tickets Plus includes options to collect custom information for attendees, check attendees in via QR codes, and share stock between %2$s. %3$s', 'about Tickets Commerce', 'event-tickets' ),
$plus_link,
esc_html( tribe_get_ticket_label_singular_lowercase( 'tickets_fields_settings_about_tribe_commerce' ) ),
$plus_link_2
);
$is_tickets_commerce_enabled = tec_tickets_commerce_is_enabled();
$top_level_settings = [
'tribe-form-content-start' => [
'type' => 'html',
'html' => '<div class="tribe-settings-form-wrap">',
],
'tickets-commerce-header' => [
'type' => 'html',
'html' => '<div class="tec-tickets__admin-settings-tickets-commerce-toggle-wrapper">
<label class="tec-tickets__admin-settings-tickets-commerce-toggle">
<input
type="checkbox"
name="' . Tickets_Settings::$tickets_commerce_enabled . '"
' . checked( $is_tickets_commerce_enabled, true, false ) . '
id="tickets-commerce-enable-input"
class="tec-tickets__admin-settings-tickets-commerce-toggle-checkbox tribe-dependency tribe-dependency-verified">
<span class="tec-tickets__admin-settings-tickets-commerce-toggle-switch"></span>
<span class="tec-tickets__admin-settings-tickets-commerce-toggle-label">' . esc_html__( 'Enable Tickets Commerce', 'event-tickets' ) . '</span>
</label>
</div>',
],
'tickets-commerce-description' => [
'type' => 'html',
'html' => '<div class="tec-tickets__admin-settings-tickets-commerce-description">' . $plus_message . '</div>',
],
Tickets_Settings::$tickets_commerce_enabled => [
'type' => 'hidden',
'validation_type' => 'boolean',
],
];
/**
* Hook to modify the top level settings for Tickets Commerce.
*
* @since 5.2.0
*
* @param array[] $top_level_settings Top level settings.
*/
return apply_filters( 'tec_tickets_commerce_settings_top_level', $top_level_settings );
}
}
Changelog
| Version | Description |
|---|---|
| 5.2.0 | Introduced. |
Methods
- create_page_with_shortcode — Create a page with given properties.
- filter_redirect_url — Filters the redirect URL to include section, if applicable.
- get_fields — Gets the top level settings for Tickets Commerce.
- get_gateway_section_fields — Get selected section top level menu.
- get_section_gateway — Returns the settings item for the section menu at the top of the Payments settings tab.
- get_section_menu — Returns the settings item for the section menu at the top of the Payments settings tab.
- get_sections — Gets an array of all the sections, based on the active Gateways.
- get_template — Gets the template instance used to setup the rendering html.
- get_tickets_commerce_section_fields — Gets the fields for the Tickets Commerce top level fields.
- get_top_level_settings — Gets the top level settings for Tickets Commerce.
- get_url — Gets the URL for the Payment Tab.
- is_page_created — Check if the provided page was created.
- maybe_auto_generate_checkout_page — Generate Checkout page with the shortcode if the page is non-existent.
- maybe_auto_generate_order_success_page — Generate Order Success page with the shortcode if the page is non-existent.
- maybe_generate_pages — Maybe Generate Checkout and Success page if not found.
- register
- register_tab — Create the Tickets Commerce Payments Settings Tab.
- settings_add_tab_id — Add the payments tab to the list of tab ids for the Tickets settings.