Version Description
Download this release
Release Info
Developer | borkweb |
Plugin | Event Tickets |
Version | 5.3.2 |
Comparing to | |
See all releases |
Code changes from version 5.3.1 to 5.3.2
- common/lang/tribe-common-cs_CZ.mo +0 -0
- common/lang/tribe-common-de_DE.mo +0 -0
- common/lang/tribe-common.pot +9 -5
- common/src/Tribe/Admin/Notice/Plugin_Download.php +1 -1
- common/src/Tribe/Admin/Upsell_Notice/Main.php +97 -0
- common/src/Tribe/Admin/Upsell_Notice/README.md +65 -0
- common/src/Tribe/Ajax/Dropdown.php +1 -1
- common/src/Tribe/Main.php +1 -1
- common/src/admin-views/notices/upsell/icon.php +21 -0
- common/src/admin-views/notices/upsell/main.php +50 -0
- common/src/resources/css/tribe-common-admin.min.css +1 -1
- common/src/resources/images/icons/circle-bolt.svg +1 -0
- common/vendor/autoload.php +1 -1
- common/vendor/autoload_52.php +1 -1
- common/vendor/composer/autoload_classmap.php +1 -0
- common/vendor/composer/autoload_real.php +4 -4
- common/vendor/composer/autoload_real_52.php +3 -3
- common/vendor/composer/autoload_static.php +6 -5
- event-tickets.php +2 -2
- lang/event-tickets-da_DK.mo +0 -0
- lang/event-tickets-de_DE.mo +0 -0
- lang/event-tickets-es_ES.mo +0 -0
- lang/event-tickets-fr_CA.mo +0 -0
- lang/event-tickets-fr_FR.mo +0 -0
- lang/event-tickets-it_IT.mo +0 -0
- lang/event-tickets-nl_NL.mo +0 -0
- lang/event-tickets-ro_RO.mo +0 -0
- lang/event-tickets.pot +171 -85
- readme.txt +37 -20
- src/Tickets/Commerce/Admin/Notices.php +27 -13
- src/Tickets/Commerce/Flag_Actions/Generate_Attendees.php +7 -0
- src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php +50 -0
- src/Tickets/Commerce/Gateways/PayPal/Assets.php +2 -3
- src/Tickets/Commerce/Gateways/PayPal/Gateway.php +69 -0
- src/Tickets/Commerce/Gateways/PayPal/Hooks.php +14 -0
- src/Tickets/Commerce/Gateways/Stripe/Assets.php +2 -3
- src/Tickets/Commerce/Gateways/Stripe/Gateway.php +77 -0
- src/Tickets/Commerce/Gateways/Stripe/Hooks.php +14 -0
- src/Tickets/Commerce/Gateways/Stripe/Merchant.php +1 -0
- src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php +17 -2
- src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php +24 -0
- src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php +14 -1
- src/Tickets/Commerce/Promoter_Observer.php +86 -0
- src/Tickets/Commerce/Provider.php +1 -0
- src/Tickets/Commerce/Settings.php +2 -4
- src/Tickets/Commerce/Shortcodes/Checkout_Shortcode.php +1 -0
- src/Tickets/Commerce/Utils/Currency.php +32 -0
- src/Tribe/Commerce/Currency.php +9 -9
- src/Tribe/Main.php +1 -1
- src/Tribe/REST/V1/Endpoints/Single_Attendee.php +270 -0
- src/Tribe/REST/V1/Service_Provider.php +15 -1
- src/Tribe/Repositories/Post_Repository.php +7 -4
- src/Tribe/Service_Providers/Customizer.php +1 -5
- src/Tribe/Shortcodes/Tribe_Tickets_Checkout.php +1 -0
- src/Tribe/Status/Manager.php +30 -12
- src/Tribe/Ticket_Repository.php +1 -0
- src/views/blocks/attendees/view-link.php +6 -1
- src/views/tickets/view-link.php +18 -1
- vendor/autoload.php +1 -1
- vendor/composer/autoload_classmap.php +1 -0
- vendor/composer/autoload_real.php +4 -4
- vendor/composer/autoload_static.php +5 -4
common/lang/tribe-common-cs_CZ.mo
CHANGED
Binary file
|
common/lang/tribe-common-de_DE.mo
CHANGED
Binary file
|
common/lang/tribe-common.pot
CHANGED
@@ -2,13 +2,13 @@
|
|
2 |
# This file is distributed under the same license as the Tribe Common package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Tribe Common 4.14.
|
6 |
"Report-Msgid-Bugs-To: http://m.tri.be/191x\n"
|
7 |
-
"POT-Creation-Date: 2022-03-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date: 2022-03-
|
12 |
"Last-Translator: \n"
|
13 |
"Language-Team: \n"
|
14 |
|
@@ -58,7 +58,7 @@ msgctxt "Error status label for system info optin"
|
|
58 |
msgid "Status:"
|
59 |
msgstr ""
|
60 |
|
61 |
-
#. #-#-#-#-# tribe-common.pot (Tribe Common 4.14.
|
62 |
#. Author of the plugin/theme
|
63 |
#: src/Tribe/Admin/Help_Page.php:82 src/Tribe/Customizer.php:666
|
64 |
#: src/Tribe/Plugins_API.php:25 src/admin-views/help-calendar.php:97
|
@@ -427,7 +427,7 @@ msgid ""
|
|
427 |
msgstr ""
|
428 |
|
429 |
#: src/Tribe/Admin/Notice/Plugin_Download.php:122
|
430 |
-
msgid "To begin using %2$s, please install and activate %3$s."
|
431 |
msgstr ""
|
432 |
|
433 |
#: src/Tribe/Admin/Notice/Plugin_Download.php:124
|
@@ -3441,6 +3441,10 @@ msgstr ""
|
|
3441 |
msgid "Black Friday Sale now through %s."
|
3442 |
msgstr ""
|
3443 |
|
|
|
|
|
|
|
|
|
3444 |
#: src/admin-views/tribe-options-display.php:23
|
3445 |
msgid "Date Format Settings"
|
3446 |
msgstr ""
|
2 |
# This file is distributed under the same license as the Tribe Common package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Tribe Common 4.14.17\n"
|
6 |
"Report-Msgid-Bugs-To: http://m.tri.be/191x\n"
|
7 |
+
"POT-Creation-Date: 2022-03-30 13:24:17+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2022-03-30 13:24\n"
|
12 |
"Last-Translator: \n"
|
13 |
"Language-Team: \n"
|
14 |
|
58 |
msgid "Status:"
|
59 |
msgstr ""
|
60 |
|
61 |
+
#. #-#-#-#-# tribe-common.pot (Tribe Common 4.14.17) #-#-#-#-#
|
62 |
#. Author of the plugin/theme
|
63 |
#: src/Tribe/Admin/Help_Page.php:82 src/Tribe/Customizer.php:666
|
64 |
#: src/Tribe/Plugins_API.php:25 src/admin-views/help-calendar.php:97
|
427 |
msgstr ""
|
428 |
|
429 |
#: src/Tribe/Admin/Notice/Plugin_Download.php:122
|
430 |
+
msgid "To begin using %2$s, please install (or upgrade) and activate %3$s."
|
431 |
msgstr ""
|
432 |
|
433 |
#: src/Tribe/Admin/Notice/Plugin_Download.php:124
|
3441 |
msgid "Black Friday Sale now through %s."
|
3442 |
msgstr ""
|
3443 |
|
3444 |
+
#: src/admin-views/notices/upsell/icon.php:19
|
3445 |
+
msgid "The Events Calendar important notice icon"
|
3446 |
+
msgstr ""
|
3447 |
+
|
3448 |
#: src/admin-views/tribe-options-display.php:23
|
3449 |
msgid "Date Format Settings"
|
3450 |
msgstr ""
|
common/src/Tribe/Admin/Notice/Plugin_Download.php
CHANGED
@@ -119,7 +119,7 @@ class Tribe__Admin__Notice__Plugin_Download {
|
|
119 |
$plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $plugin_name ), $allowed_html );
|
120 |
$req_plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $req_plugins ), $allowed_html );
|
121 |
|
122 |
-
$notice_html_content = '<p>' . esc_html__( 'To begin using %2$s, please install and activate %3$s.', 'tribe-common' ) . '</p>';
|
123 |
|
124 |
$read_more_link = '<a href="http://evnt.is/1aev" target="_blank">' . esc_html__( 'Read more', 'tribe-common' ) . '.</a>';
|
125 |
$pue_notice_text = esc_html__( 'There’s a new version of %1$s available, but your license is expired. You’ll need to renew your license to get access to the latest version. If you plan to continue using your current version of the plugin(s), be sure to use a compatible version of The Events Calendar. %2$s', 'tribe-common' );
|
119 |
$plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $plugin_name ), $allowed_html );
|
120 |
$req_plugin_names_clean_text = wp_kses( $this->implode_with_grammar( $req_plugins ), $allowed_html );
|
121 |
|
122 |
+
$notice_html_content = '<p>' . esc_html__( 'To begin using %2$s, please install (or upgrade) and activate %3$s.', 'tribe-common' ) . '</p>';
|
123 |
|
124 |
$read_more_link = '<a href="http://evnt.is/1aev" target="_blank">' . esc_html__( 'Read more', 'tribe-common' ) . '.</a>';
|
125 |
$pue_notice_text = esc_html__( 'There’s a new version of %1$s available, but your license is expired. You’ll need to renew your license to get access to the latest version. If you plan to continue using your current version of the plugin(s), be sure to use a compatible version of The Events Calendar. %2$s', 'tribe-common' );
|
common/src/Tribe/Admin/Upsell_Notice/Main.php
ADDED
@@ -0,0 +1,97 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Upsell notice class.
|
5 |
+
*
|
6 |
+
* @since 4.14.17
|
7 |
+
*
|
8 |
+
* @package Tribe\Admin\Upsell_Notice
|
9 |
+
*/
|
10 |
+
|
11 |
+
namespace Tribe\Admin\Upsell_Notice;
|
12 |
+
|
13 |
+
class Main {
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Stores the instance of the template engine that we will use for rendering the page.
|
17 |
+
*
|
18 |
+
* @since 4.14.17
|
19 |
+
*
|
20 |
+
* @var Tribe__Template
|
21 |
+
*/
|
22 |
+
protected $template;
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Get template object.
|
26 |
+
*
|
27 |
+
* @since 4.14.17
|
28 |
+
*
|
29 |
+
* @return \Tribe__Template
|
30 |
+
*/
|
31 |
+
private function get_template() {
|
32 |
+
if ( empty( self::$template ) ) {
|
33 |
+
$this->template = new \Tribe__Template();
|
34 |
+
$this->template->set_template_origin( \Tribe__Main::instance() );
|
35 |
+
$this->template->set_template_folder( 'src/admin-views/notices/upsell' );
|
36 |
+
$this->template->set_template_context_extract( true );
|
37 |
+
$this->template->set_template_folder_lookup( false );
|
38 |
+
}
|
39 |
+
|
40 |
+
return $this->template;
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Checks if upsell should be rendered.
|
45 |
+
*
|
46 |
+
* @since 4.14.17
|
47 |
+
*
|
48 |
+
* @return boolean
|
49 |
+
*/
|
50 |
+
private function should_render() {
|
51 |
+
if ( function_exists( 'tec_should_hide_upsell' ) ) {
|
52 |
+
return ! tec_should_hide_upsell();
|
53 |
+
}
|
54 |
+
if ( defined( 'TRIBE_HIDE_UPSELL' ) ) {
|
55 |
+
return ! tribe_is_truthy( TRIBE_HIDE_UPSELL );
|
56 |
+
}
|
57 |
+
return true;
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* Render upsell notice.
|
62 |
+
*
|
63 |
+
* @since 4.14.17
|
64 |
+
*
|
65 |
+
* @param array $args Array of arguments that will ultimately be sent to the template.
|
66 |
+
* @param bool $echo Whether or not to echo the HTML. Defaults to true.
|
67 |
+
*
|
68 |
+
* @return string HTML of upsell notice.
|
69 |
+
*/
|
70 |
+
public function render( $args, $echo = true ) {
|
71 |
+
// Check if upsell should be rendered.
|
72 |
+
if ( ! $this->should_render() ) {
|
73 |
+
return;
|
74 |
+
}
|
75 |
+
|
76 |
+
// Default args for the container.
|
77 |
+
$args = wp_parse_args( $args, [
|
78 |
+
'classes' => [],
|
79 |
+
'text' => '',
|
80 |
+
'link_target' => '_blank',
|
81 |
+
'icon_url' => tribe_resource_url( 'images/icons/circle-bolt.svg', false, null, \Tribe__Main::instance() ),
|
82 |
+
'link' => [],
|
83 |
+
] );
|
84 |
+
|
85 |
+
// Default args for the link.
|
86 |
+
$args['link'] = wp_parse_args( $args['link'], [
|
87 |
+
'classes' => [],
|
88 |
+
'text' => '',
|
89 |
+
'url' => '',
|
90 |
+
'target' => '_blank',
|
91 |
+
'rel' => 'noopener noreferrer',
|
92 |
+
] );
|
93 |
+
|
94 |
+
$template = $this->get_template();
|
95 |
+
return $template->template( 'main', $args, $echo );
|
96 |
+
}
|
97 |
+
}
|
common/src/Tribe/Admin/Upsell_Notice/README.md
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Upsell Notices
|
2 |
+
|
3 |
+
To add an upsell notice, use the following code:
|
4 |
+
|
5 |
+
```
|
6 |
+
tribe( \Tribe\Admin\Upsell_Notice\Main::class )->render( [
|
7 |
+
'text' => 'Text to explain what you are promoting.',
|
8 |
+
'link' => [
|
9 |
+
'text' => 'Text for the link.',
|
10 |
+
'url' => 'https://url.com/to/more/info',
|
11 |
+
],
|
12 |
+
] );
|
13 |
+
```
|
14 |
+
|
15 |
+
## Customizing the notice container
|
16 |
+
|
17 |
+
There are a couple of classes you can add that will display the upsell notice with different styles.
|
18 |
+
|
19 |
+
- `.tec-admin__upsell--rounded-corners` - Adds a rounded-corner, light gray background around the entire notice.
|
20 |
+
- `.tec-admin__upsell--rounded-corners-text` - Adds a rounded-corner, light gray background around the notice text, only.
|
21 |
+
|
22 |
+
Example:
|
23 |
+
```
|
24 |
+
tribe( \Tribe\Admin\Upsell_Notice\Main::class )->render( [
|
25 |
+
'classes' => [
|
26 |
+
'tec-admin__upsell--rounded-corners'
|
27 |
+
],
|
28 |
+
'text' => 'Text to explain what you are promoting.',
|
29 |
+
'link' => [
|
30 |
+
'text' => 'Text for the link.',
|
31 |
+
'url' => 'https://url.com/to/more/info',
|
32 |
+
],
|
33 |
+
] );
|
34 |
+
```
|
35 |
+
|
36 |
+
## Customizing the notice link
|
37 |
+
|
38 |
+
Likewise, you can also add these classes to the link array to change the appearance.
|
39 |
+
|
40 |
+
- `.tec-admin__upsell-link--dark` - Changes the color to a dark color, instead of the default blue.
|
41 |
+
- `.tec-admin__upsell-link--underlined` - Adds an underline to the link text.
|
42 |
+
|
43 |
+
You can also change the following attributes of the link:
|
44 |
+
|
45 |
+
- `target` - Default is '_blank'.
|
46 |
+
- `rel` - Default is 'nofollow noreferrer'.
|
47 |
+
|
48 |
+
Example:
|
49 |
+
```
|
50 |
+
tribe( \Tribe\Admin\Upsell_Notice\Main::class )->render( [
|
51 |
+
'classes' => [
|
52 |
+
'tec-admin__upsell--rounded-corners-text'
|
53 |
+
],
|
54 |
+
'text' => 'Text to explain what you are promoting.',
|
55 |
+
'link' => [
|
56 |
+
'classes' => [
|
57 |
+
'tec-admin__upsell-link--dark',
|
58 |
+
'tec-admin__upsell-link--underlined',
|
59 |
+
],
|
60 |
+
'text' => 'Text for the link.',
|
61 |
+
'url' => 'https://url.com/to/more/info',
|
62 |
+
'target' => '_parent'
|
63 |
+
],
|
64 |
+
] );
|
65 |
+
```
|
common/src/Tribe/Ajax/Dropdown.php
CHANGED
@@ -275,7 +275,7 @@ class Tribe__Ajax__Dropdown {
|
|
275 |
if ( has_filter( $filter ) ) {
|
276 |
$data = apply_filters( $filter, [], $args->search, $args->page, $args->args, $args->source );
|
277 |
} else {
|
278 |
-
$data = call_user_func_array( [ $this, $args->source ], (array) $args );
|
279 |
}
|
280 |
|
281 |
// If we've got a empty dataset we return an error.
|
275 |
if ( has_filter( $filter ) ) {
|
276 |
$data = apply_filters( $filter, [], $args->search, $args->page, $args->args, $args->source );
|
277 |
} else {
|
278 |
+
$data = call_user_func_array( [ $this, $args->source ], array_values( (array) $args ) );
|
279 |
}
|
280 |
|
281 |
// If we've got a empty dataset we return an error.
|
common/src/Tribe/Main.php
CHANGED
@@ -20,7 +20,7 @@ class Tribe__Main {
|
|
20 |
const OPTIONNAME = 'tribe_events_calendar_options';
|
21 |
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
22 |
|
23 |
-
const VERSION = '4.14.
|
24 |
|
25 |
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
26 |
|
20 |
const OPTIONNAME = 'tribe_events_calendar_options';
|
21 |
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
22 |
|
23 |
+
const VERSION = '4.14.17';
|
24 |
|
25 |
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
26 |
|
common/src/admin-views/notices/upsell/icon.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Upsell Icon Template
|
4 |
+
* The icon template for TEC Upsell notices.
|
5 |
+
*
|
6 |
+
* @since 4.14.17
|
7 |
+
*
|
8 |
+
* @version 4.14.17
|
9 |
+
*
|
10 |
+
* @var string $icon_url URL to icon.
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
|
14 |
+
?>
|
15 |
+
<div class="tec-admin__upsell-icon">
|
16 |
+
<img
|
17 |
+
class="tec-admin__upsell-icon-image"
|
18 |
+
src="<?php echo esc_url( $icon_url ); ?>"
|
19 |
+
alt="<?php esc_attr_e( 'The Events Calendar important notice icon', 'tribe-common' ); ?>"
|
20 |
+
/>
|
21 |
+
</div>
|
common/src/admin-views/notices/upsell/main.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Upsell Template
|
4 |
+
* The base template for TEC Upsell notices.
|
5 |
+
*
|
6 |
+
*
|
7 |
+
* @since 4.14.17
|
8 |
+
*
|
9 |
+
* @version 4.14.17
|
10 |
+
*
|
11 |
+
* @var string $text Text of upsell content (excluding link text).
|
12 |
+
* @var string $link_text Link text.
|
13 |
+
* @var string $link_url Link URL.
|
14 |
+
* @var string $icon_url URL to icon.
|
15 |
+
* @var array<string> $classes Additional classes to add to the upsell div.
|
16 |
+
* @var array<string> $link Array of link properties, including 'text', 'url', 'rel', 'target' and 'classes'.
|
17 |
+
*
|
18 |
+
*/
|
19 |
+
|
20 |
+
$upsell_classes = [ 'tec-admin__upsell' ];
|
21 |
+
if ( ! empty( $classes ) ) {
|
22 |
+
$upsell_classes = array_merge( $upsell_classes, $classes );
|
23 |
+
}
|
24 |
+
|
25 |
+
$link_classes = [ 'tec-admin__upsell-link '];
|
26 |
+
if ( ! empty( $link ) && ! empty( $link['classes'] ) ) {
|
27 |
+
$link_classes = array_merge( $link_classes, $link['classes'] );
|
28 |
+
}
|
29 |
+
|
30 |
+
?>
|
31 |
+
<div class="tribe-common">
|
32 |
+
<div <?php tribe_classes( $upsell_classes ); ?>>
|
33 |
+
<div class="tec-admin__upsell-content">
|
34 |
+
<?php $this->template( 'icon' ); ?>
|
35 |
+
<div class="tec-admin__upsell-text-wrap">
|
36 |
+
<span class="tec-admin__upsell-text">
|
37 |
+
<?php echo wp_kses_post( $text ); ?>
|
38 |
+
</span>
|
39 |
+
<a
|
40 |
+
<?php tribe_classes( $link_classes ); ?>
|
41 |
+
href="<?php echo esc_url( $link['url'] ); ?>"
|
42 |
+
rel="<?php echo esc_attr( $link['rel'] ); ?>"
|
43 |
+
target="<?php echo esc_attr( $link['target'] ); ?>"
|
44 |
+
>
|
45 |
+
<?php echo esc_html( $link['text'] ); ?>
|
46 |
+
</a>
|
47 |
+
</div>
|
48 |
+
</div>
|
49 |
+
</div>
|
50 |
+
</div>
|
common/src/resources/css/tribe-common-admin.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.invalid input,input:out-of-range{border:2px solid red!important}.valid input{border:1px solid green}.clearfix{zoom:1}.placeholder{color:#999;cursor:text;padding:4px}input::placeholder,textarea::placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.bubble{background-color:#f9f9f9;border:1px solid #dfdfdf;border-radius:3px;border-spacing:0;padding:10px}.tribe-sticky-tooltip{color:#bbb}td.tribe_message{padding-bottom:10px!important}#tribe_thanks{float:left;margin:5px 0 0;width:200px}.tribe_brand{font-family:Georgia,serif!important;font-size:17px!important;font-weight:400;margin:8px 0}.tribe-rating{color:#3d54ff}.tribe-rating:hover{color:#1c39bb}#tribe-upgrade{background:#f6f6f6;border:1px solid #ccc;border-radius:5px;margin:20px 0 30px;padding:0 20px 20px}#tribe-upgrade .message{background-color:#ffffe0;border:1px solid #e6db55;border-radius:3px;padding:6px 12px}table.plugins .tribe-plugin-update-message{background:#d54e21;color:#fff;display:inline-table;margin:6px 0;padding:10px 12px}table.plugins .tribe-plugin-update-message h4{display:inline;font-weight:700;margin-right:8px}table.plugins .tribe-plugin-update-message h4:after{content:" \00BB "}table.plugins .tribe-plugin-update-message a{color:#fff;text-decoration:underline}.tribe-settings-form{max-width:1000px}.tribe-settings-form fieldset{clear:both;display:inline-block;padding:10px 0}.tribe-settings-form fieldset.tribe-field-license_key legend{width:auto}.tribe-settings-form legend{float:left;font-weight:700;margin-right:20px;width:220px}.tribe-settings-form .tribe-field-wrap{float:left;max-width:500px}.tribe-settings-form .tribe-field-wrap :first-child{margin-top:0}.tribe-settings-form .tribe-field-checkbox_list label,.tribe-settings-form .tribe-field-radio label{display:block;margin:5px 0 5px 20px;text-indent:-20px}.tribe-settings-form .tribe-field-checkbox_list label>p,.tribe-settings-form .tribe-field-radio label>p{margin-left:1px;text-indent:0}.tribe-settings-form .tribe-field-checkbox_list label input,.tribe-settings-form .tribe-field-radio label input{margin-right:5px}.tribe-settings-form .tribe-settings-form-wrap .description,.tribe-settings-form .tribe-settings-form-wrap fieldset,.tribe-settings-form fieldset[id^=tribe-field-geoloc_]{padding-left:12px}.tribe-settings-form .tribe-settings-form-wrap fieldset .description{margin-left:0;max-width:450px;padding-left:0}.tribe-settings-form .tribe-settings-form-wrap fieldset .tribe-style-selection{margin-bottom:18px}.tribe-settings-form .tribe-settings-form-wrap #tribe-field-stylesheetOption .description{color:#999;margin-left:1px}.tribe-settings-form .tribe-settings-form-wrap h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}.tribe-settings-form .tribe-settings-form-wrap .contained,.tribe-settings-form .tribe-settings-form-wrap .system-info,.tribe-settings-form .tribe-settings-form-wrap .tribe-sysinfo-optin-msg,.tribe-settings-form .tribe-settings-form-wrap h3+p{margin:0 0 10px;padding-left:12px}.tribe_settings .tribe-field-indent{margin-left:245px}.tribe_settings #pu_dashboard_message{display:none}.tribe_settings .tribe-errors-list{margin-left:15px}.tribe_settings .expiring-license{color:red}.tribe_settings .tribe-error{border:1px solid red}.tribe_settings .tribe-field-description{margin-bottom:0;position:relative;top:-12px}.tribe_settings #ical-link{top:-14px}#modern-tribe-info{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:8px 20px 12px}#modern-tribe-info img{margin:10px 0}#modern-tribe-info ul{list-style:disc;margin-left:20px}#modern-tribe-info ul ul{list-style:circle}.tribe-field-inline-dropdown{margin-left:0;margin-right:0}.tribe-field-inline-text{line-height:28px;margin:0 2px}.tribe-field-textarea.tribe-size-small textarea{height:60px;width:180px}.tribe-field-textarea.tribe-size-medium textarea{height:80px;width:300px}.tribe-field-textarea.tribe-size-large textarea{height:120px;width:450px}.tribe-field-email.tribe-size-small input,.tribe-field-license_key.tribe-size-small input,.tribe-field-text.tribe-size-small input{width:50px}.tribe-field-email.tribe-size-medium input,.tribe-field-license_key.tribe-size-medium input,.tribe-field-text.tribe-size-medium input{width:225px}.tribe-field-email.tribe-size-large input,.tribe-field-license_key.tribe-size-large input,.tribe-field-text.tribe-size-large input{width:450px}.tribe-field-dropdown.tribe-size-small select{width:100px}.tribe-field-dropdown.tribe-size-medium select{width:300px}.tribe-field-dropdown.tribe-size-large select{width:450px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap{max-width:600px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap .description{max-width:100%}.tribe-field-dropdown_chosen.tribe-size-small select{width:100px}.tribe-field-dropdown_chosen.tribe-size-medium select{width:200px}.tribe-field-dropdown_chosen.tribe-size-large select{width:300px}.tribe-field-wrap .tooltip:first-child{font-style:normal}.tribe-field.indent{margin-left:252px;width:75%}.tribe-field.indent legend{font-weight:400;width:auto}.tribe-field.indent .tribe-field-wrap{padding-right:12px}.tribe-field.indent.tribe-field-radio .tribe-field-wrap{clear:left;margin-top:12px}.tribe-field.light-bordered{background-color:#fff;border:1px solid #d3d3d3}.ajax-loading-license,.invalid-key,.valid-key{display:none;margin:0 5px}.ajax-loading-license{position:relative;top:5px}.key-validity{display:inline-block}.invalid-key,.optin-fail{color:red}.optin-success,.valid-key{color:green}.valid-key.service-msg{color:#b72}#additional-field-table{margin-bottom:20px}.tribe-admin-box-left{float:left;width:20%}.tribe-admin-box-left,.tribe-admin-box-right{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:0 20px 15px}.tribe-admin-box-right{float:right;width:68%}.ajax-loader{float:right;margin:10px}.tribe-arrangeable-item{border:1px solid #d3d3d3;border-radius:3px}.tribe-arrangeable-item .ui-state-default{border:none}.tribe-arrangeable-item-top{padding:6px}.tribe-arrangeable-item-top:hover{cursor:move}.tribe-arrangeable-action{float:right}.tribe-arrangeable-child{background-color:#f9f9f9;border-top:1px solid #d3d3d3;display:none;padding:25px}.tribe-arrangeable-child label{display:block;margin:0 0 7px}.tribe_events_active_filter_type_options{margin:10px 0}.tribe_events_active_filter_type_options label{margin:7px 0}#event_organizer td small,.OrganizerInfo td small{display:block;margin:0;max-width:250px}#event_organizer .organizer-email,.OrganizerInfo .organizer-email{vertical-align:top}.tribe-table-field-label{max-width:100%;width:200px}#tribe-help-general,#tribe-help-sidebar{float:left;margin-top:20px}#tribe-help-general p{margin-left:15px}#tribe-help-general ul{list-style-type:square}#tribe-help-general ol,#tribe-help-general ul{margin-bottom:20px;margin-left:35px}#tribe-help-general h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}#tribe-help-general h3~h3{margin-top:2.25em}#tribe-help-general h3+p{margin:0 0 20px;padding-left:12px}#tribe-help-general{width:65%}.tribe-help-section{padding-bottom:10px}.tribe-section-type-box{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;padding:8px 20px 12px}.tribe-section-type-box img{height:auto;margin:10px 0;max-width:300px}.tribe-section-type-box ul{list-style:disc;margin-left:20px}.tribe-section-type-box ul ul{list-style:circle}#tribe-log-controls{padding-bottom:1rem;padding-left:12px}#tribe-log-controls>div{display:inline-block;padding-right:1rem}#tribe-log-controls .working{opacity:1;transition:opacity .2s}#tribe-log-controls .working.hidden{opacity:0;transition:opacity .2s}#tribe-log-viewer,#tribe-system-info dl.support-stats,.template-updates-wrapper{background:#000;border-radius:2px;color:#888;max-height:400px;overflow:scroll;padding:10px}#tribe-system-info dl.support-stats dt,.template-updates-wrapper dt{clear:both;float:left;font-weight:700;text-transform:uppercase;width:25%}#tribe-system-info dl.support-stats dd,.template-updates-wrapper dd{margin-left:25%;padding-left:10px}.system-info-copy .system-info-copy-btn{padding:6px}.system-info-copy .system-info-copy-btn .dashicons{padding-right:10px}.template-updates-wrapper p{margin-top:0}#tribe-help-sidebar{margin:20px 0 0 3%;max-width:225px;width:32%}.tribe-help-plugin-info{border:1px solid #ccc;padding:0 12px 12px}.tribe-help-plugin-info dd,.tribe-help-plugin-info dt{display:inline;margin:0}.tribe-help-plugin-info dt{font-weight:700}.tribe-help-plugin-info dd:after{content:"";display:block;height:.4em}.tribe-help-plugin-info dd:last-child:after{height:0}.tribe-help-plugin-info+.tribe-help-plugin-info{margin-top:20px}.tribe-help-plugin-info>div{line-height:2em}.tribe-help-plugin-info .star-rating{display:inline-block;margin-left:3px;position:relative;top:-2px}.tribe-help-plugin-info .tribe-list-addons{color:#21a6cb;font-size:24px;list-style:circle inside;margin-bottom:10px;margin-top:10px;padding-left:4px}.tribe-help-plugin-info .tribe-list-addons a{font-size:13px;left:-5px;position:relative;top:-5px}.tribe-help-plugin-info .tribe-list-addons .tribe-active-addon{list-style:disc inside}.ui-widget-overlay{background:#666;filter:alpha(opacity=50);opacity:.5}.ui-widget-shadow{background:#000;border-radius:5px;filter:alpha(opacity=20);margin:-5px 0 0 -5px;opacity:.2;padding:5px}.ui-resizable{position:relative}.ui-resizable-handle{display:block;font-size:.1px;position:absolute;z-index:99999}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;left:0;top:-5px;width:100%}.ui-resizable-s{bottom:-5px;cursor:s-resize;height:7px;left:0;width:100%}.ui-resizable-e{cursor:e-resize;height:100%;right:-5px;top:0;width:7px}.ui-resizable-w{cursor:w-resize;height:100%;left:-5px;top:0;width:7px}.ui-resizable-se{bottom:1px;cursor:se-resize;height:12px;right:1px;width:12px}.ui-resizable-sw{bottom:-5px;cursor:sw-resize;height:9px;left:-5px;width:9px}.ui-resizable-nw{cursor:nw-resize;height:9px;left:-5px;top:-5px;width:9px}.ui-resizable-ne{cursor:ne-resize;height:9px;right:-5px;top:-5px;width:9px}.ui-dialog{padding:.2em;position:relative;width:375px}.ui-dialog .ui-dialog-titlebar{padding:.5em .3em .3em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0 .2em}.ui-dialog .ui-dialog-titlebar-close{height:18px;margin:-10px 0 0;padding:1px;position:absolute;right:.3em;top:50%;width:19px}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin-left:-8px;margin-top:-8px}.ui-dialog .ui-dialog-titlebar-close:focus,.ui-dialog .ui-dialog-titlebar-close:hover{padding:0}.ui-dialog .ui-dialog-content{background:none;border:0;overflow:auto;padding:.5em 1em;zoom:1}.ui-dialog .ui-dialog-buttonpane{background-image:none;border-width:1px 0 0;margin:.5em 0 0;padding:.3em 1em .5em!important;text-align:right}.ui-dialog .ui-dialog-buttonpane button{cursor:pointer;line-height:1.4em;margin:.5em .4em!important;overflow:visible;padding:.2em .6em .3em;text-shadow:none;width:auto}.ui-dialog .ui-resizable-se{bottom:3px;height:14px;right:3px;width:14px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:center}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button .ui-button-text{display:block;line-height:1.4}#ui-datepicker-div{display:none}#tribe-loading{background:#fff;background:hsla(0,0%,100%,.8);display:none;height:100%;left:0;position:absolute;top:0;transition:all 1s linear;width:100%;z-index:4}#tribe-loading span{background:url(../images/tribe-loading.gif) 0 0 no-repeat;background-size:32px 32px;height:32px;left:50%;margin:-16px 0 0 -16px;position:absolute;top:50%;width:32px}.tribe_update_page{max-width:850px}.tribe-half-column{float:left;margin-bottom:30px;margin-right:5%;width:45%}.tribe-row:after,.tribe-row:before{content:"";display:table}.tribe-row,.tribe-row:after{clear:both}.tribe-row .tribe-half-column:last-child{margin-right:0;width:50%}.tribe_update_page h2{font-size:30px;line-height:1.2;margin-bottom:20px}.tribe_update_page h3{font-size:24px;font-weight:400;line-height:24px;margin-top:0}.tribe_update_page h4{font-size:18px;font-weight:600;line-height:18px;margin:0}.tribe_update_page p{font-size:15px}p.tribe-update-message{font-size:18px;font-weight:400}.tribe_update_page h4:before{content:"\f145";font-family:dashicons;font-size:34px;line-height:1;margin-right:5px;position:relative;top:5px}a.tribe-rating-link{text-decoration:none}.tribe-update-links{margin-top:30px}.tribe_update_page li:before{content:"\2022";padding-right:3px}.tribe_update_page .rss-widget{margin:1em 0}.tribe_update_page a.rsswidget{font-size:14px;font-weight:400;line-height:1}.tribe_update_page .rss-widget li:before{display:none}.tribe-events-widget-admin-form__input-section p{margin:0}.tribe-events-widget-admin-form__input-section h4{margin:.5em 0}.tribe-update-bar{display:inline-block}.tribe-update-bar .progress{border:1px solid #ccc;float:left;margin-right:1rem;padding:1px;width:18rem}.tribe-update-bar .progress .bar{background:#7ad03a;height:1rem;width:1%}#tribe-dialog-wrapper>div{padding:1rem}#tribe-dialog-wrapper>div .stage{display:none}#tribe-dialog-wrapper #heading{background:#fff}#tribe-dialog-wrapper label{display:block}#tribe-dialog-wrapper .select-single-container{border:1px solid #888;height:300px;overflow-y:scroll}#tribe-dialog-wrapper .select-single-container label{opacity:1;padding:3px 5px;transition:opacity .2s}#tribe-dialog-wrapper .select-single-container label:nth-child(odd){background:#fff}#tribe-dialog-wrapper .select-single-container label.selected{background:#0073aa;color:#fff;font-weight:700}#tribe-dialog-wrapper .select-single-container label input{display:none}#tribe-dialog-wrapper .select-single-container.updating label{opacity:.35;transition:opacity .2s}.ui-front{z-index:1000000}.wp-list-table.plugins .column-description .update-message{color:#d54e21}.api-check{min-height:100px;padding:1em}.api-check+.notice-dismiss:hover:before{color:#fff}.api-check:after,.api-check:before{content:"";display:table}.api-check:after{clear:both}.api-check .tribe-mascot{bottom:0;display:none;padding:0 1rem 0 0;position:absolute;right:0;top:0}.api-check .tribe-mascot img{display:inline-block;height:100%;max-height:150px;max-width:150px;vertical-align:middle;width:auto}.api-check p{line-height:1.7;margin-bottom:1em}.api-check a{text-decoration:none}.api-check a:hover{text-decoration:underline}.api-check .plugin-list{display:inline;font-weight:600;margin:0;padding:0}.api-check .plugin-list span.plugin-invalid:after{content:", "}.api-check .plugin-list span.plugin-invalid:last-of-type:after{content:""}.tribe-marketing-notice{padding:1em}.tribe-marketing-notice+.notice-dismiss:hover:before{color:#fff}.tribe-marketing-notice:after,.tribe-marketing-notice:before{content:"";display:table}.tribe-marketing-notice:after{clear:both}.tribe-marketing-notice .tribe-marketing-notice__icon{display:none;flex-shrink:0;padding:0;position:static}.tribe-marketing-notice .tribe-marketing-notice__icon img{display:inline-block;max-height:100%;max-width:none;vertical-align:middle;width:100%}.tribe-marketing-notice h3{margin-bottom:.5em;margin-top:.5em}.tribe-marketing-notice p{line-height:1.7;margin-bottom:.5em}.tribe-marketing-notice a{text-decoration:none}.tribe-marketing-notice a:hover{text-decoration:underline}#wpcontent .notice-tribe-banner{align-items:center;background:#161b7d;border:0;box-shadow:none;display:flex;justify-content:flex-start;margin:0 0 16px;padding-right:0}.notice-tribe-banner .tribe-marketing-notice__icon{width:47px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:0;padding:1em 0}.notice-tribe-banner h3{color:#fff;display:block;font-size:.875rem;line-height:1.25;margin:0 0 .25rem}.notice-tribe-banner a{border-bottom:1px solid #fff;line-height:1.25;margin:0;text-decoration:none}.notice-tribe-banner a:hover{text-decoration:none}.notice-tribe-banner a,.notice-tribe-banner p{color:#fff;display:inline-block;font-size:.875rem;line-height:1.25}.notice-tribe-banner p{display:inline-block;margin:0;padding:0}.notice-tribe-banner .tribe-marketing-notice{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;min-height:65px;padding:0 .75rem;width:100%}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:100%}.notice-tribe-banner .notice-dismiss{position:static}.notice-tribe-banner .notice-dismiss:before{color:#eaf1ff}.tribe-dropdown,.tribe-ea-dropdown{max-width:100%;width:auto}.tribe-dropdown.select2-container .selection,.tribe-ea-dropdown.select2-container .selection{margin-top:inherit}.tribe-dropdown .select2-selection--single,.tribe-ea-dropdown .select2-selection--single{height:32px}.tribe-dropdown .select2-selection--single .select2-selection__clear,.tribe-ea-dropdown .select2-selection--single .select2-selection__clear{line-height:28px}.tribe-dropdown .select2-selection--single .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--single .select2-selection__rendered{line-height:32px;padding-right:28px}.tribe-dropdown.select2-container--focus .select2-selection--single,.tribe-ea-dropdown.select2-container--focus .select2-selection--single{border-color:#5897fb;box-shadow:0 0 5px rgba(0,0,0,.1)}.tribe-dropdown.select2-container--open .select2-search__field,.tribe-ea-dropdown.select2-container--open .select2-search__field{padding:0}.tribe-dropdown.select2-container--open .select2-dropdown--below,.tribe-ea-dropdown.select2-container--open .select2-dropdown--below{border-top:1px solid #aaa;margin-top:-1px}.tribe-dropdown.select2-container--open .select2-dropdown--above,.tribe-ea-dropdown.select2-container--open .select2-dropdown--above{border-bottom:1px solid #aaa;margin-bottom:-16px}.tribe-dropdown.select2-container--open .select2-selection--single,.tribe-ea-dropdown.select2-container--open .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#aaa}.tribe-dropdown.select2-container--open .select2-selection__arrow b,.tribe-ea-dropdown.select2-container--open .select2-selection__arrow b{transform:rotate(180deg)}.tribe-dropdown.select2-selection--single,.tribe-ea-dropdown.select2-selection--single{background-image:none;border:1px solid #ccc;border-radius:3px;overflow:hidden}.tribe-dropdown.select2-selection--single>.select2-selection__rendered,.tribe-ea-dropdown.select2-selection--single>.select2-selection__rendered{white-space:normal}.tribe-dropdown.select2-selection--single .select2-selection__arrow,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow{background:transparent;background-image:none;border-left:0;top:2px;width:26px}.tribe-dropdown.select2-selection--single .select2-selection__arrow b,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow b{background:#fff url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat right 5px top 55%;background-size:auto;background-size:16px 16px;border:0;bottom:0;display:block;height:auto;left:0;margin:0;padding:0;right:0;top:0;width:auto}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered{background-image:none;border:1px solid #ccc;border-radius:3px;min-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline{line-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input{padding-bottom:0;padding-top:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{line-height:19px;margin-top:2px;padding-bottom:0;padding-top:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div{line-height:inherit}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove{left:4px;top:3px;transition-property:border,color}.select2-results .select2-results__option{color:#939393;font-weight:400;margin-bottom:0}.select2-results .select2-results__option[aria-disabled=true]{background-color:#e0e0e0}.select2-results.select2-results__option--highlighted{background-color:#efefef;color:#a1a1a1;cursor:default;display:block}.wp-core-ui .button-red{background-color:#a00;border-color:#9b2124;box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red.hover,.wp-core-ui .button-red:focus,.wp-core-ui .button-red:hover{background-color:#a00;border-color:#7f1c1f;box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red:focus{border-color:#500f0e;box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .button-red.active,.wp-core-ui .button-red.active:focus,.wp-core-ui .button-red.active:hover,.wp-core-ui .button-red:active{background:#7f1c1f;border-color:#601312 #ae2426 #ae2426;box-shadow:inset 0 1px 0 rgba(0,0,0,.1);color:hsla(0,0%,100%,.95);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red-disabled,.wp-core-ui .button-red:disabled,.wp-core-ui .button-red[disabled]{background:#ba292b!important;border-color:#7f1c1f!important;box-shadow:none!important;color:#e79496!important;cursor:default;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important}.ticket_form .select2-container .select2-selection--single .select2-selection__arrow{display:none}.clear{zoom:1}.clear:after,.clear:before{content:" ";display:table}.clear:after{clear:both}.checkmark:after{border:solid #0ab152;border-width:0 3px 3px 0;content:"";display:block;height:15px;transform:rotate(45deg);width:8px}.checkmark.checkmark-right:after{float:right;margin-right:2em}.checkmark.checkmark-left:after{float:left;margin-left:2em}.checkmark.no-checkmark:after{display:none}.complete,.ok,.on,.yes,[data-status=complete],[data-status=ok],[data-status=on],[data-status=yes]{color:#0ab152}.incomplete,.ko,.no,.off,[data-status=incomplete],[data-status=ko],[data-status=no],[data-status=off]{color:#ff2500}.plugin-card-event-tickets-plus .column-downloaded,.plugin-card-event-tickets-plus .column-rating,.plugin-card-event-tickets-plus .column-updated,.plugin-card-event-tickets .column-downloaded,.plugin-card-event-tickets .column-rating,.plugin-card-event-tickets .column-updated,.plugin-card-events-calendar-pro .column-downloaded,.plugin-card-events-calendar-pro .column-rating,.plugin-card-events-calendar-pro .column-updated,.plugin-card-events-community-tickets .column-downloaded,.plugin-card-events-community-tickets .column-rating,.plugin-card-events-community-tickets .column-updated,.plugin-card-events-community .column-downloaded,.plugin-card-events-community .column-rating,.plugin-card-events-community .column-updated,.plugin-card-image-widget-plus .column-downloaded,.plugin-card-image-widget-plus .column-rating,.plugin-card-image-widget-plus .column-updated,.plugin-card-image-widget .column-downloaded,.plugin-card-image-widget .column-rating,.plugin-card-image-widget .column-updated,.plugin-card-the-events-calendar .column-downloaded,.plugin-card-the-events-calendar .column-rating,.plugin-card-the-events-calendar .column-updated,.plugin-card-tribe-eventbrite .column-downloaded,.plugin-card-tribe-eventbrite .column-rating,.plugin-card-tribe-eventbrite .column-updated,.plugin-card-tribe-filterbar .column-downloaded,.plugin-card-tribe-filterbar .column-rating,.plugin-card-tribe-filterbar .column-updated{display:none}body.tribe-welcome,body.tribe_events_page_tribe-help{background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.tribe-welcome .update-nag,body.tribe_events_page_tribe-help .update-nag{display:none}body.tribe-welcome #wpcontent,body.tribe_events_page_tribe-help #wpcontent{padding:0}body.tribe-welcome .tribe_settings,body.tribe_events_page_tribe-help .tribe_settings{margin:0}body.tribe-welcome #wpfooter,body.tribe-welcome .tribe_settings>h1,body.tribe_events_page_tribe-help #wpfooter,body.tribe_events_page_tribe-help .tribe_settings>h1{display:none}body.tribe-welcome #wpbody-content,body.tribe_events_page_tribe-help #wpbody-content{padding-bottom:25px}body.tribe-welcome .tribe-dependency-error,body.tribe_events_page_tribe-help .tribe-dependency-error{display:none}.tribe-events-admin-content-wrapper{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;margin:0 auto;padding:0 0 30px;width:calc(100% - 40px)}.tribe-events-admin-card{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;display:block;margin:0 auto 36px;padding:27px;text-align:center}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:260px}.tribe-events-admin-card--3up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--3up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card__button{background-color:#fff;border:none;color:#3d54ff;font-size:14px;font-weight:700;letter-spacing:1px;line-height:16px;position:absolute;right:20px;text-transform:uppercase;top:17px}.tribe-events-admin-card__button:hover{color:#161b7d}.tribe-events-admin-card__description{color:#000;font-size:14px;font-style:normal;font-weight:400;line-height:22px;margin-top:16px}.tribe-events-admin-card__image{display:block;height:100px;margin:0 auto}.tribe-events-admin-card__link{color:#3d54ff;display:inline-block;font-size:16px;font-style:normal;font-weight:700;line-height:18px;margin-top:24px;position:relative;text-decoration:none}.tribe-events-admin-card__link:hover{color:#161b7d}.tribe-events-admin-card__link:after{border-style:solid;border-width:0 0 1px;bottom:-4px;content:"";left:0;position:absolute;width:100%}.tribe-events-admin-card__title{color:#0f1031;font-size:20px;font-weight:700;line-height:23px;margin:auto}.tribe-events-admin-card-grid{max-width:1048px}input[type=checkbox].tribe-common-switch__input{display:none}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label{background:#fff;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;cursor:pointer;display:block;height:18px;outline:0;padding:3px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:27px}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:after,input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:before{content:"";display:block;height:10px;position:relative;width:10px}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:after{background:#878787;border-radius:2px;content:"";left:0;transition:all .2s ease}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:before{display:none}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label::selection{background:none}input[type=checkbox].tribe-common-switch__input:checked+.tribe-common-switch__label:after{background:#2e709d;left:50%}.tribe-events-admin-header__logo-word-mark{display:inline-block;height:auto;margin:0 0 26px;vertical-align:middle;width:312px}.tribe-events-admin-header{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:45px 0 0}.tribe-events-admin-header__right-image{height:280px;position:absolute;right:0;top:0;width:auto;z-index:-1}.tribe-events-admin-header__title{font-size:48px;line-height:48px;margin:0 0 18px}.tribe-events-admin-header__description{font-size:18px;line-height:28px;margin-bottom:44px;max-width:60%}.tribe-events-admin-tab-nav{display:flex;margin:0}.tribe-events-admin-tab-nav li{cursor:pointer;font-size:16px;font-weight:500;margin-bottom:0;margin-right:30px}.tribe-events-admin-tab-nav li:hover{color:#334aff}.tribe-events-admin-tab-nav .selected{border-bottom:3px solid #334aff;color:#334aff;padding-bottom:17px}.tribe-events-admin-tab-nav li:after{background:#334aff;border-radius:100px;bottom:0;content:"";display:block;height:3px;left:0;position:absolute;right:0}.tribe-events-admin__line{border-top:1px solid #e1e1e4}.tribe-events-admin-products-description{color:#0f1031;font-size:14px;line-height:2}.tribe-events-admin-products-card{align-items:center;border:1px solid #e1e1e4;border-radius:20px;display:flex;padding:10px 15px}.tribe-events-admin-products-card__icon{height:40px;object-fit:contain;width:40px}.tribe-events-admin-products-card__group{margin:0 20px;max-width:55%}.tribe-events-admin-products-card__group-title{color:#0f1031;font-size:16px;font-weight:700;line-height:1;margin:0}.tribe-events-admin-products-card__group-description{font-size:12px;margin-top:5px}.tribe-events-admin-products-card__button{background-color:#fff;border:1px solid #e1e1e4;border-radius:20px;color:#0f1031;font-size:12px;font-weight:700;letter-spacing:1px;line-height:16px;margin-left:auto;padding:10px 15px;text-decoration:none;text-transform:uppercase}.tribe-events-admin-products-card__button:hover{background-color:#334aff;color:#fff}.tribe-events-admin-products-card__button:active,.tribe-events-admin-products-card__button:focus{box-shadow:none;outline:none}.tribe-events-admin-products-card__button--active,.tribe-events-admin-products-card__button--active:active,.tribe-events-admin-products-card__button--active:focus,.tribe-events-admin-products-card__button--active:hover{background:rgba(61,84,255,.16);color:#334aff;cursor:not-allowed;text-transform:uppercase}.tribe-events-admin-card--1up{width:100%}.tribe-events-admin-card--no-pad{padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__image{display:block;height:152px;margin:0;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{font-size:28px;line-height:34px;text-align:left}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin:0;padding:0;text-align:left}.tribe-events-admin-card--no-pad .tribe-events-admin-card__link{margin:0;padding:0}.tribe-events-admin-card--faq{display:inline-block;font-size:0;height:147px;margin:0 0 0 30px;padding:24px 16px 22px 20px;width:230px}.tribe-events-admin-card--faq:first-child{margin-left:0}.tribe-events-admin-card--faq img{float:left;height:22px;width:16px}.tribe-events-admin-card--faq .tribe-events-admin-faq__question{color:#334aff;font-size:16px;line-height:19px;margin:0 0 12px 26px;text-align:left}.tribe-events-admin-card--faq .tribe-events-admin-faq__answer{font-size:13px;line-height:16px;margin-left:26px;text-align:left}.tribe-events-admin-video{border-radius:16px;height:200px;margin-bottom:72px;-webkit-mask-image:-webkit-radial-gradient(circle,#fff 100%,#000 0);overflow:hidden;-webkit-transform:rotate(.000001deg)}.tribe-events-admin-video iframe{width:100%}.tribe-events-admin-card--promo-blue{background-color:#3d54ff;background-image:url(../images/welcome/promo.jpg)}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{color:#fff;font-size:16px;margin-bottom:16px;text-align:left}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__title{color:#fff;text-align:left}.tribe-events-admin-graphic{position:absolute;right:0;top:106px;z-index:-1}.tribe-events-admin-graphic--desktop-only{display:none}.tribe-events-admin-graphic--mobile-only{display:block}.tribe-events-admin-card__form{position:relative}input[type=email].tribe-events-admin-card__input{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;font-size:14px;height:54px}input[type=email].tribe-events-admin-card__input::placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}.tribe-events-admin-container,.tribe-events-admin-content-wrapper.tribe-events-admin-container{margin:0 auto;max-width:1024px;width:90%}.tribe-events-admin-2col-grid{display:grid;grid-gap:15px 30px;gap:15px 30px;grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-3col-grid{display:grid;grid-gap:30px;gap:30px;grid-template-areas:". . .";grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-4col-grid{display:grid;grid-gap:30px;gap:30px;grid-template-areas:". . . .";grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-products{margin:10px 0 0}.tribe-events-admin-quick-nav{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;display:block;margin:40px 0 78px;padding:18px 23px 2px}.tribe-events-admin-quick-nav__link{color:#3d54ff;font-size:16px;font-weight:700;line-height:18px;text-align:center;text-decoration:none}.tribe-events-admin-quick-nav__link:hover{color:#161b7d}.tribe-events-admin-quick-nav__link-item{display:block;padding-bottom:19px}.tribe-events-admin-quick-nav__links{display:inline}.tribe-events-admin-quick-nav__title{color:rgba(15,16,49,.72);display:inline-block;font-size:14px;font-weight:400;line-height:16px;padding-bottom:14px;text-transform:uppercase}.tribe-events-admin-title{padding-top:14px}.tribe-events-admin-title__description{color:#0f1031;font-size:16px;font-weight:400;line-height:24px;max-width:584px;padding-top:15px}.tribe-events-admin-title__heading{color:#0f1031;display:inline-block;font-size:24px;font-weight:700;line-height:28px;margin:5px 0 0}.tribe-events-admin-title__logo{margin-right:8px;vertical-align:top;width:34px}.tribe-events-admin-notice{background-color:#3d54ff;height:65px}.tribe-events-admin-notice .tribe-events-admin-content-wrapper{padding-bottom:0;padding-top:8px}.tribe-events-admin-notice p{color:#fff;display:inline-block;font-family:Helvetica,sans-serif;font-size:16px;line-height:18px;margin-top:0;padding-bottom:12px;padding-left:16px;vertical-align:middle;width:calc(100% - 60px)}.tribe-events-admin-notice__logo{display:inline-block}.tribe-events-admin-tickets .tribe-events-admin-section-header{font-size:28px;line-height:32px}.tribe-events-admin-tickets .tribe-events-admin-graphic--desktop-only{width:365px}.tribe-events-admin-tickets .tribe-events-admin-graphic--mobile-only{top:230px;width:300px}.tribe-events-admin-tickets .tribe-events-admin-title__heading{margin-top:0}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:4px;width:32px}.tribe-events-admin-kb{margin:10px 0 0}.tribe-events-admin-kb-card{border:1px solid #e1e1e4;border-radius:20px}.tribe-events-admin-kb-card__image{height:auto;width:100%}.tribe-events-admin-kb-card__title{color:#0f1031;flex-grow:0;font-size:20px;font-weight:700;line-height:1.2;margin:0;padding:20px 28px 10px}.tribe-events-admin-kb-card__links{margin:0;padding:0 28px 25px}.tribe-events-admin-kb-card__links li{margin:0 0 10px}.tribe-events-admin-kb-card__links li a{color:#334aff;font-size:14px;line-height:1.2;text-decoration:none}.tribe-events-admin-kb-card__links li a:focus{box-shadow:none;outline:none}.tribe-events-admin-kb-card__links li a:hover{color:#1c39bb}.tribe-events-admin-section-header{align-items:center;color:#000;display:flex;font-weight:700;justify-content:space-between;margin:0}.tribe-events-admin-section-header h3{color:#0f1031;font-size:28px;font-weight:700;line-height:1}.tribe-events-admin-section-header a{border-bottom:2px solid #334aff;color:#334aff;font-size:14px;padding-bottom:2px;text-decoration:none}.tribe-events-admin-section-header a:focus{box-shadow:none;outline:none}.tribe-events-admin-section-header a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-faq{margin:10px 0 0}.tribe-events-admin-faq-card{border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;padding:24px 15px 19px 19px}.tribe-events-admin-faq-card a{color:#0f1031}.tribe-events-admin-faq-card a:focus{box-shadow:none;outline:none}.tribe-events-admin-faq-card a:hover{color:#1c39bb}.tribe-events-admin-faq-card__icon img{height:22px;width:16px}.tribe-events-admin-faq-card__content{margin-left:10px}.tribe-events-admin-faq__question,.tribe-events-admin-faq__question a{color:#334aff;font-size:16px;text-decoration:none}.tribe-events-admin-faq__question a:focus{box-shadow:none;outline:none}.tribe-events-admin-faq__question a:hover{color:#1c39bb}.tribe-events-admin-faq__answer{color:#0f1031;font-size:13px;margin-top:18px}.tribe-events-admin-extensions-title{color:#0f1031;font-size:16px;line-height:1.5;margin:0 0 30px;max-width:70%}.tribe-events-admin-extensions{margin:10px 0 0}.tribe-events-admin-extensions-card{border:1px solid #e1e1e4;border-radius:20px;border-top:8px solid #334aff;padding:48px 35px 24px 25px}.tribe-events-admin-extensions-card__title{font-size:20px;margin:0}.tribe-events-admin-extensions-card__title a{color:#0f1031;font-family:Helvetica,sans-serif;font-size:20px;font-weight:700;line-height:1.2;text-decoration:none}.tribe-events-admin-extensions-card__title a:active,.tribe-events-admin-extensions-card__title a:focus,.tribe-events-admin-extensions-card__title a:hover{box-shadow:none;color:#334aff}.tribe-events-admin-extensions-card__description{color:#0f1031;font-family:Helvetica,sans-serif;font-size:14px;line-height:1.43;margin:20px 0}.tribe-events-admin-cta{align-items:center;border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;margin:60px 0}.tribe-events-admin-cta__image{height:152px;object-fit:contain;width:auto}.tribe-events-admin-cta__content,.tribe-events-admin__troubleshooting-cta{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:20px 0;width:100%}.tribe-events-admin-cta__content-title{color:#0f1031;font-size:28px;font-weight:700;line-height:normal;margin:0 0 10px;text-align:center}.tribe-events-admin-cta__content-subtitle{color:#0f1031;font-size:16px;line-height:1.5;margin-bottom:10px;text-align:center}.tribe-events-admin-cta__content-description a{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;font-weight:700;padding-bottom:2px;text-decoration:none}.tribe-events-admin-cta__content-description a:focus{box-shadow:none;outline:none}.tribe-events-admin-cta__content-description a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-footer-logo{display:inline-block;vertical-align:middle;width:228px}.tribe-events-admin-step{margin:10px 0 0}.tribe-events-admin-step-card{border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;padding:24px 15px 19px 19px}.tribe-events-admin-step-card a{border-bottom:2px solid #334aff;color:#334aff;padding-bottom:2px;text-decoration:none}.tribe-events-admin-step-card a:focus{box-shadow:none;outline:none}.tribe-events-admin-step-card a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-step-card__icon img{height:43px;margin-right:5px;width:42px}.tribe-events-admin-step-card__content{margin-left:10px}.tribe-events-admin-step__title{color:#0f1031;font-size:20px;font-weight:700;line-height:1.2;margin-bottom:10px}.tribe-events-admin-step__answer{color:#0f1031;font-size:13px;margin-top:18px}.tribe-events-admin__system-information{display:grid;grid-gap:15px 30px;gap:15px 30px;grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr;margin:100px 0;position:relative}.tribe-events-admin__troubleshooting-title{color:#0f1031;font-size:28px;font-weight:700;line-height:1;margin:0}.tribe-events-admin__troubleshooting-description{color:#0f1031;font-size:18px;line-height:1.2;line-height:1.44;margin:20px 0}.tribe-events-admin__system-information-select{display:flex;margin:30px 0 20px}.tribe-events-admin__system-information-select input[type=checkbox]{margin:0 10px 0 0}.tribe-events-admin__system-information-select label{color:#0f1031;font-size:16px;line-height:1.2}.tribe-events-admin__system-information-content small{color:#0f1031;font-size:12px;line-height:1.2}.tribe-events-admin__recent-template-changes .template-updates-wrapper,.tribe-events-admin__system-information-widget{background:#0f1031;border-radius:16px;color:#fff;font-size:14px;line-height:1.14;max-height:280px;overflow:scroll;-ms-overflow-style:none;padding:12px 0 0 27px;scrollbar-width:none}.tribe-events-admin__recent-template-changes .template-updates-wrapper p{color:#fff;font-size:14px;line-height:1.14;margin:0}.tribe-events-admin__system-information-widget a{color:#334aff}.tribe-events-admin__system-information-widget a:hover{opacity:.8}.tribe-events-admin__recent-template-changes .template-updates-wrapper{padding:30px 0 30px 27px}.tribe-events-admin__recent-template-changes .template-updates-wrapper::-webkit-scrollbar,.tribe-events-admin__system-information-widget::-webkit-scrollbar{display:none}.tribe-events-admin__system-information-widget-copy{bottom:10px;position:absolute}.tribe-events-admin__system-information-widget-copy button{background-color:#334aff;border:none;border-radius:100px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;outline:none;padding:18px 25px;text-align:center}.tribe-events-admin__system-information-widget-copy button:hover{background-color:#1c39bb}.tribe-events-admin__system-information-widget-copy button .dashicons,.tribe-events-admin__system-information-widget-copy button .dashicons-before:before{display:none}.tribe-events-admin__system-information-widget-copy button .optin-success{color:#fff;font-size:16px;font-weight:700;text-align:center}.tribe-events-admin__recent-template-changes p{color:#0f1031;font-size:18px;line-height:1.2;line-height:1.44;margin:20px 0}.tribe-events-admin__recent-log{margin-top:50px}.tribe-events-admin__troubleshooting-event-log-wrapper label{color:#0f1031;display:block;font-size:16px;line-height:1.63;margin-bottom:10px}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-controls{margin:20px 0 10px}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-viewer{background:#0f1031;border-radius:16px;color:#fff;font-size:14px;line-height:1.14;max-height:280px;min-height:60px;overflow:scroll;-ms-overflow-style:none;padding:12px 0 0 27px;scrollbar-width:none}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-viewer::-webkit-scrollbar{display:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;padding-bottom:2px;text-decoration:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log:focus{box-shadow:none;outline:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__troubleshooting-event-log-wrapper .tribe-events-admin__recent-log-filters-select-wrapper:after{display:none}.tribe-events-admin__recent-log-filters{display:flex;padding:20px 0 40px}.tribe-events-admin__recent-log-filters-field{margin-right:40px}.tribe-events-admin__recent-log-filters-select-wrapper:after{content:url(../images/help/polygon.svg);height:13px;pointer-events:none;position:absolute;right:22px;top:20px;width:14px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default .select2-selection--single{border:1px solid #e1e1e4!important;border-radius:16px;color:#0f1031;font-size:14px;line-height:1.14;padding:0 25px 0 15px!important}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls{margin-bottom:20px;padding:0}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:first-child,.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(2),.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(3){padding-right:75px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-selection__clear{display:none}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow{right:5px}.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default.select2-container--open.select2-container--below .select2-selection--single{border-bottom-left-radius:16px;border-bottom-right-radius:16px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container .select2-selection--single .select2-selection__rendered{width:100%}.tribe-events-admin__recent-log-filters-select-wrapper select.focus-visible,.tribe-events-admin__recent-log-filters-select-wrapper select:focus-visible{outline:none}.tribe-events-admin__recent-log-filters-select-wrapper select option{color:#0f1031;font-size:14px;line-height:1.14}.tribe-events-admin__ea-status{margin-top:50px}.tribe-events-admin__issues-found-card{background-color:#f3eee8;border-radius:8px;margin-bottom:20px}.tribe-events-admin__issues-found-card:last-of-type{margin-bottom:100px}.tribe-events-admin__issues-found-card-title{align-items:center;cursor:pointer;display:flex;padding:10px 20px 10px 17px;position:relative}.tribe-events-admin__issues-found-card-title img{height:21px;margin-right:14px;object-fit:contain;width:21px}.tribe-events-admin__issues-found-card-title h3{margin:0}.tribe-events-admin__issues-found-card-title span{color:#0f1031;display:block}.tribe-events-admin__issues-found-card-title i{background-image:url(../images/help/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:15px;margin:12px 20px;position:absolute;right:0;top:0;transition:all .3s ease;width:15px}.tribe-events-admin__issues-found-card-title.active i{background-image:url(../images/help/arrow-up.svg);background-repeat:no-repeat;top:5px}.tribe-events-admin__issues-found-card-description{display:none;padding:0 20px 20px 55px}.tribe-events-admin__issues-found-card-description p{color:#0f1031;font-size:16px;margin:0}.tribe-events-admin__issues-found-card-description-actions{display:flex;padding:20px 0 10px}.tribe-events-admin__issues-found-card-description-actions a{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;margin-right:20px;padding-bottom:5px;text-decoration:none}.tribe-events-admin__issues-found-card-description-actions a:focus{box-shadow:none;outline:none}.tribe-events-admin__issues-found-card-description-actions a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__ea-status-table-wrapper{overflow-x:auto}.tribe-events-admin__ea-status-table{border:1px solid #e1e1e4;border-radius:16px;margin:30px 0 40px;overflow:hidden}.tribe-events-admin__ea-status-table a{border-bottom:2px solid #334aff;color:#334aff;padding-bottom:2px;text-decoration:none}.tribe-events-admin__ea-status-table a:focus{box-shadow:none;outline:none}.tribe-events-admin__ea-status-table a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__ea-status-table tr{align-items:center;display:flex}.tribe-events-admin__ea-status-table th{color:#0f1031;font-weight:700;line-height:1.17;margin-top:10px;padding:5px 25px}.tribe-events-admin__ea-status-table td{align-items:center;color:#0f1031;display:flex;font-size:16px;line-height:1.63;padding:10px 25px;width:25%}.tribe-events-admin__ea-status-table td:nth-child(2){width:45%}.tribe-events-admin__ea-status-table td:nth-child(3){display:flex;justify-content:flex-end;width:30%}.tribe-events-admin__ea-status-table-dark{background-color:#f9f7f4}.tribe-events-admin__ea-status-table td img{height:21px;margin-right:14px;object-fit:contain;width:21px}.tribe_events_page_tec-troubleshooting{background-color:#fff}#tribe-community,#tribe-ticketing{display:none}.tribe-events-admin__troubleshooting-notice{background-color:#161b7d;color:#fff;font-size:16px;line-height:1;margin-left:-1.55vw;padding:24px 0}.tribe-events-admin__troubleshooting-notice_title{margin:0 auto;max-width:1024px;padding-left:25px;width:90%}.tribe-events-admin__troubleshooting-notice_title a{border-bottom:2px solid #fff;color:#fff;font-size:16px;line-height:1;padding-bottom:2px;text-decoration:none}.tribe-events-admin__troubleshooting-notice_title a:focus{box-shadow:none;outline:none}.tribe-events-admin__troubleshooting-notice_title a:hover{border-bottom:2px solid #f3eee8;color:#f3eee8}.tribe_events_page_tribe-help #tec-help-community,.tribe_events_page_tribe-help #tec-help-ticketing{display:none}.tribe_events_page_tribe-help .tribe-events-admin-title{padding-top:25px}.tribe_events_page_tribe-help .tribe-events-admin-title img{height:67px}body.tribe-welcome #fs_connect{border:1px solid #e1e1e4;border-radius:16px;box-shadow:none;box-sizing:border-box;margin-left:22px}body.tribe-welcome #fs_connect .fs-actions{background-color:transparent}body.tribe-welcome #fs_connect .fs-permissions{border-top:1px solid #e1e1e4;margin:0 16px}body.tribe-welcome #fs_connect button{background-color:#3d54ff;border-color:#3d54ff}body.tribe-welcome #fs_connect .button-secondary{background:#fff;border-color:#3d54ff;color:#3d54ff}body.tribe-welcome #fs_connect a{color:#3d54ff}body.tribe-welcome #fs_connect a:focus{box-shadow:none;outline:none}body.tribe-welcome #fs_connect a:hover{color:#161b7d}.black-friday-promo{align-items:flex-start;display:flex;flex-direction:column-reverse;justify-content:space-between}.black-friday-promo .black-friday-promo__button{background:#3d54ff;border-color:transparent;border-radius:20px;color:#fff;font-size:12px;height:34px;line-height:32px;min-height:unset;width:115px}.black-friday-promo .black-friday-promo__button:active,.black-friday-promo .black-friday-promo__button:focus,.black-friday-promo .black-friday-promo__button:hover{background:#1c39bb;border-color:transparent;color:#fff}.black-friday-promo__promo{background-position:50%;background-repeat:no-repeat;border-radius:10px;display:grid;grid-template-areas:"a b";grid-template-columns:auto 150px;height:150px;margin:10px 0;max-width:100%;width:450px}.black-friday-promo__content{grid-area:b;padding-top:8px;text-align:center}.black-friday-promo__text{color:#0f1031;font-family:monospace;font-size:16px;line-height:1;text-transform:uppercase}.black-friday-promo__branding-image{max-width:390px;width:100%}.end-of-year-sale-promo{align-items:flex-start;display:flex;flex-direction:column-reverse;justify-content:space-between}.end-of-year-sale-promo .end-of-year-sale-promo__button{background:#3d54ff;border-color:transparent;border-radius:20px;color:#fff;font-size:12px;height:34px;line-height:32px;min-height:unset;width:115px}.end-of-year-sale-promo .end-of-year-sale-promo__button:active,.end-of-year-sale-promo .end-of-year-sale-promo__button:focus,.end-of-year-sale-promo .end-of-year-sale-promo__button:hover{background:#1c39bb;border-color:transparent;color:#fff}.end-of-year-sale-promo__promo{background-color:#fff;background-position:0 0;background-repeat:no-repeat;border-radius:10px;display:grid;flex-shrink:0;grid-template-areas:"a b";grid-template-columns:auto 160px;height:150px;margin:10px 0;max-width:100%;width:460px}.end-of-year-sale-promo__content{grid-area:b;padding-top:8px;text-align:center}.end-of-year-sale-promo__text{color:#0f1031;font-family:monospace;font-size:13px;line-height:1.2;margin-bottom:8px;text-transform:uppercase}.end-of-year-sale-promo__branding-image{max-width:390px;width:100%}@media only screen and (-o-min-device-pixel-ratio:2/1),only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){#tribe-loading span{background-image:url(../images/tribe-loading@2x.gif)}}@media screen and (max-width:782px){.tribe-half-column,.tribe-row .tribe-half-column:last-child{margin:0 0 20px;width:100%}input[type=email]{width:100%}.events-cal .subsubsub{float:none}.events-cal .search-box{width:98%}.events-cal #search-submit{width:100%}.events-cal .tablenav.top{display:none}}@media screen and (min-width:500px){.api-check .tribe-mascot{display:block}.api-check .notice-content{margin-right:180px}}@media screen and (min-width:320px){.tribe-marketing-notice .tribe-marketing-notice__icon{display:block}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px}}@media screen and (min-width:600px) and (max-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:145px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}}@media screen and (min-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:130px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:642px}}@media screen and (min-width:400px){.notice-tribe-banner .tribe-marketing-notice__icon{width:67px}}@media screen and (min-width:800px){.notice-tribe-banner h3{display:inline-block;font-size:1rem;margin:0 .5rem 0 0}.notice-tribe-banner a{line-height:1.5}.notice-tribe-banner a,.notice-tribe-banner p{font-size:1rem}.notice-tribe-banner p{margin:0 .5rem 0 0}.notice-tribe-banner .tribe-marketing-notice__cta{display:inline-block;margin-left:.5rem}}@media screen and (min-width:1215px){.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:992px}.tribe-welcome .notice-tribe-banner .tribe-marketing-notice{max-width:1036px}}@media screen and (min-width:710px){.tribe-events-admin-content-wrapper{width:670px}.tribe-events-admin-card--2up{display:inline-block;width:calc(50% - 20px)}.tribe-events-admin-card--2up.tribe-events-admin-card--first{margin-right:36px}.tribe-events-admin-card--2up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--2up .tribe-events-admin-card__image{height:100px;margin-bottom:12px}.tribe-events-admin-card--2up .tribe-events-admin-card__title{margin-bottom:27px;max-width:340px}.tribe-events-admin-card--3up{display:inline-block;margin-bottom:32px;width:calc(50% - 18px)}.tribe-events-admin-card--3up.tribe-events-admin-card--first{margin-right:32px}.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:0}.tribe-events-admin-card__title{font-size:20px;line-height:23px}.tribe-events-admin-card--1up{display:inline-block;margin-left:32px;width:calc(50% - 18px)}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--1up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--no-pad{height:154px;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{margin-left:50%;padding:42px 0 10px}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin-left:50%}.tribe-events-admin-card--promo-blue{display:block;margin-left:0;min-height:170px;width:100%}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{float:left;max-width:300px}.tribe-events-admin-graphic{max-width:250px;top:0}.tribe-events-admin-graphic--desktop-only{display:block}.tribe-events-admin-graphic--mobile-only{display:none}.tribe-events-admin-card__form{float:right;width:300px}input[type=email].tribe-events-admin-card__input{width:300px}.tribe-events-admin-title{padding-top:50px}.tribe-events-admin-title__description{padding-top:15px}.tribe-events-admin-title__heading{font-size:48px;line-height:55px;margin:0}.tribe-events-admin-title__logo{margin-right:14px;padding-top:5px;width:40px}.tribe-events-admin-tickets .tribe-events-admin-card__title{font-size:18px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{font-size:18px;height:66px}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:8px;padding-top:4px;width:60px}}@media screen and (min-width:1217px){.tribe-events-admin-content-wrapper{max-width:1060px;width:100%}.tribe-events-admin-card--2up{margin-right:36px;width:486px}.tribe-events-admin-card--3up{width:310px}.tribe-events-admin-card--3up.tribe-events-admin-card--first,.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:36px}.tribe-events-admin-card--3up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--1up{margin:0 0 36px;padding:33px 44px 30px;text-align:left;width:1012px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:auto}.tribe-events-admin-card--1up .tribe-events-admin-card__image{float:left;margin:0 48px 10px 0}.tribe-events-admin-card--no-pad{padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__image{margin:0;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{margin-left:50%;padding:42px 0 10px}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin-left:50%}.tribe-events-admin-card--promo-blue{min-height:150px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{max-width:450px}.tribe-events-admin-graphic{max-width:none}.tribe-events-admin-card__form,input[type=email].tribe-events-admin-card__input{width:365px}.tribe-events-admin-quick-nav{border-radius:100px;display:inline-block;height:54px;margin:24px 0 94px;max-width:1010px;padding:0 36px 0 0}.tribe-events-admin-quick-nav__link-item{display:inline-block;padding:18px 10px 0}.tribe-events-admin-quick-nav__title{padding:19px 6px 17px 32px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{height:auto}}@media screen and (max-width:768px){.tribe-events-admin-header__logo-word-mark{width:285px}.tribe-events-admin-header__right-image{height:160px}.tribe-events-admin-header__description{max-width:100%}.tribe-events-admin-tab-nav li{margin-right:20px}.tribe-events-admin-tab-nav .selected{border-bottom:2px solid #334aff;padding-bottom:10px}.tribe-events-admin-2col-grid{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr))}.tribe-events-admin-3col-grid{grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr))}.tribe-events-admin-extensions-title{max-width:100%}.tribe-events-admin-cta{align-items:flex-start;flex-direction:column;overflow:hidden}.tribe-events-admin-footer-logo{width:225px}.tribe-events-admin__system-information{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr));margin:50px 0}}@media screen and (max-width:480px){.tribe-events-admin-header__logo-word-mark{width:260px}.tribe-events-admin-header__right-image{height:120px}.tribe-events-admin-header__title{font-size:35px}.tribe-events-admin-header__description{max-width:100%}.tribe-events-admin-tab-nav{border:1px solid #e1e1e4;border-radius:20px;flex-direction:column;padding:18px 22px}.tribe-events-admin-tab-nav li{margin-bottom:18px;margin-right:0}.tribe-events-admin-tab-nav .selected{border-bottom:2px solid #334aff;padding-bottom:10px;width:fit-content}.tribe-events-admin__line{border:none}.tribe-events-admin-products-card,.tribe-events-admin-products-description{display:none}.tribe-events-admin-container,.tribe-events-admin-content-wrapper.tribe-events-admin-container{max-width:90%}.tribe-events-admin-2col-grid,.tribe-events-admin-3col-grid,.tribe-events-admin-4col-grid{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr))}.tribe-events-admin-extensions-title{max-width:100%}.tribe-events-admin-cta__image{height:auto;width:90%}.tribe-events-admin-cta__content,.tribe-events-admin__troubleshooting-cta{align-items:flex-start;padding:32px 23px 45px;width:auto}.tribe-events-admin-cta__content-title{font-size:22px;text-align:left}.tribe-events-admin-cta__content-subtitle{text-align:left}.tribe-events-admin-footer-logo{width:210px}.tribe-events-admin__system-information{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr));margin:50px 0}.tribe-events-admin__troubleshooting-notice{margin-left:-20px}.tribe-events-admin__troubleshooting-notice_title{max-width:90%}}@media screen and (min-width:1200px){.tribe-events-admin-products-card__group{max-width:47%}}@media screen and (min-width:500px) and (max-width:1080px){.tribe-events-admin-4col-grid{grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (min-width:768px){.tribe-events-admin-section-header{font-size:28px;line-height:1.143;margin:50px 0 21px}}@media screen and (max-width:1080px){.tribe-events-admin-cta__content-title{font-size:24px}}@media only screen and (max-width:1920px){.tribe-events-admin__system-information-widget-copy{right:20.5vw}}@media only screen and (max-width:1280px){.tribe-events-admin__system-information-widget-copy{right:22vw}}@media only screen and (max-width:768px){.tribe-events-admin__system-information-widget-copy{left:10px;right:auto}.tribe-events-admin__recent-log-filters{flex-direction:column}.tribe-events-admin__recent-log-filters-field{margin-bottom:30px;margin-right:0}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:first-child,.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(2),.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(3){padding-right:30px}.tribe-events-admin__issues-found-card-title h3{max-width:90%}}@media only screen and (max-width:480px){.tribe-events-admin__system-information-widget-copy{left:10px;right:auto}.tribe-events-admin__recent-log-filters{flex-direction:column}.tribe-events-admin__recent-log-filters-field{margin-bottom:30px;margin-right:0}.tribe-events-admin__recent-log-filters-select-wrapper:after{right:25px}.tribe-events-admin__issues-found-card-title h3{max-width:80%}.tribe-events-admin__ea-status-table{overflow:scroll}.tribe-events-admin__ea-status-table td{min-width:150px}.tribe-events-admin__ea-status-table td:nth-child(2),.tribe-events-admin__ea-status-table td:nth-child(3){width:100%}}@media (min-width:1024px){.black-friday-promo{align-items:center;flex-direction:row}.black-friday-promo__branding{padding-right:10px;width:calc(100% - 450px)}.end-of-year-sale-promo{align-items:center;flex-direction:row}.end-of-year-sale-promo__branding{padding-right:10px;width:calc(100% - 460px)}}@media (max-width:525px){.end-of-year-sale-promo__promo{grid-template-areas:"a" "b";grid-template-columns:auto;margin:20px auto;padding-top:100px;width:300px}}
|
1 |
+
.invalid input,input:out-of-range{border:2px solid red!important}.valid input{border:1px solid green}.clearfix{zoom:1}.placeholder{color:#999;cursor:text;padding:4px}input::placeholder,textarea::placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.bubble{background-color:#f9f9f9;border:1px solid #dfdfdf;border-radius:3px;border-spacing:0;padding:10px}.tribe-sticky-tooltip{color:#bbb}td.tribe_message{padding-bottom:10px!important}#tribe_thanks{float:left;margin:5px 0 0;width:200px}.tribe_brand{font-family:Georgia,serif!important;font-size:17px!important;font-weight:400;margin:8px 0}.tribe-rating{color:#3d54ff}.tribe-rating:hover{color:#1c39bb}#tribe-upgrade{background:#f6f6f6;border:1px solid #ccc;border-radius:5px;margin:20px 0 30px;padding:0 20px 20px}#tribe-upgrade .message{background-color:#ffffe0;border:1px solid #e6db55;border-radius:3px;padding:6px 12px}table.plugins .tribe-plugin-update-message{background:#d54e21;color:#fff;display:inline-table;margin:6px 0;padding:10px 12px}table.plugins .tribe-plugin-update-message h4{display:inline;font-weight:700;margin-right:8px}table.plugins .tribe-plugin-update-message h4:after{content:" \00BB "}table.plugins .tribe-plugin-update-message a{color:#fff;text-decoration:underline}.tribe-settings-form{max-width:1000px}.tribe-settings-form fieldset{clear:both;display:inline-block;padding:10px 0}.tribe-settings-form fieldset.tribe-field-license_key legend{width:auto}.tribe-settings-form legend{float:left;font-weight:700;margin-right:20px;width:220px}.tribe-settings-form .tribe-field-wrap{float:left;max-width:500px}.tribe-settings-form .tribe-field-wrap :first-child{margin-top:0}.tribe-settings-form .tribe-field-checkbox_list label,.tribe-settings-form .tribe-field-radio label{display:block;margin:5px 0 5px 20px;text-indent:-20px}.tribe-settings-form .tribe-field-checkbox_list label>p,.tribe-settings-form .tribe-field-radio label>p{margin-left:1px;text-indent:0}.tribe-settings-form .tribe-field-checkbox_list label input,.tribe-settings-form .tribe-field-radio label input{margin-right:5px}.tribe-settings-form .tribe-settings-form-wrap .description,.tribe-settings-form .tribe-settings-form-wrap fieldset,.tribe-settings-form fieldset[id^=tribe-field-geoloc_]{padding-left:12px}.tribe-settings-form .tribe-settings-form-wrap fieldset .description{margin-left:0;max-width:450px;padding-left:0}.tribe-settings-form .tribe-settings-form-wrap fieldset .tribe-style-selection{margin-bottom:18px}.tribe-settings-form .tribe-settings-form-wrap #tribe-field-stylesheetOption .description{color:#999;margin-left:1px}.tribe-settings-form .tribe-settings-form-wrap h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}.tribe-settings-form .tribe-settings-form-wrap .contained,.tribe-settings-form .tribe-settings-form-wrap .system-info,.tribe-settings-form .tribe-settings-form-wrap .tribe-sysinfo-optin-msg,.tribe-settings-form .tribe-settings-form-wrap h3+p{margin:0 0 10px;padding-left:12px}.tribe_settings .tribe-field-indent{margin-left:245px}.tribe_settings #pu_dashboard_message{display:none}.tribe_settings .tribe-errors-list{margin-left:15px}.tribe_settings .expiring-license{color:red}.tribe_settings .tribe-error{border:1px solid red}.tribe_settings .tribe-field-description{margin-bottom:0;position:relative;top:-12px}.tribe_settings #ical-link{top:-14px}#modern-tribe-info{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:8px 20px 12px}#modern-tribe-info img{margin:10px 0}#modern-tribe-info ul{list-style:disc;margin-left:20px}#modern-tribe-info ul ul{list-style:circle}.tribe-field-inline-dropdown{margin-left:0;margin-right:0}.tribe-field-inline-text{line-height:28px;margin:0 2px}.tribe-field-textarea.tribe-size-small textarea{height:60px;width:180px}.tribe-field-textarea.tribe-size-medium textarea{height:80px;width:300px}.tribe-field-textarea.tribe-size-large textarea{height:120px;width:450px}.tribe-field-email.tribe-size-small input,.tribe-field-license_key.tribe-size-small input,.tribe-field-text.tribe-size-small input{width:50px}.tribe-field-email.tribe-size-medium input,.tribe-field-license_key.tribe-size-medium input,.tribe-field-text.tribe-size-medium input{width:225px}.tribe-field-email.tribe-size-large input,.tribe-field-license_key.tribe-size-large input,.tribe-field-text.tribe-size-large input{width:450px}.tribe-field-dropdown.tribe-size-small select{width:100px}.tribe-field-dropdown.tribe-size-medium select{width:300px}.tribe-field-dropdown.tribe-size-large select{width:450px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap{max-width:600px}.tribe-field-wrapped_html.tribe-size-large .tribe-field-wrap .description{max-width:100%}.tribe-field-dropdown_chosen.tribe-size-small select{width:100px}.tribe-field-dropdown_chosen.tribe-size-medium select{width:200px}.tribe-field-dropdown_chosen.tribe-size-large select{width:300px}.tribe-field-wrap .tooltip:first-child{font-style:normal}.tribe-field.indent{margin-left:252px;width:75%}.tribe-field.indent legend{font-weight:400;width:auto}.tribe-field.indent .tribe-field-wrap{padding-right:12px}.tribe-field.indent.tribe-field-radio .tribe-field-wrap{clear:left;margin-top:12px}.tribe-field.light-bordered{background-color:#fff;border:1px solid #d3d3d3}.ajax-loading-license,.invalid-key,.valid-key{display:none;margin:0 5px}.ajax-loading-license{position:relative;top:5px}.key-validity{display:inline-block}.invalid-key,.optin-fail{color:red}.optin-success,.valid-key{color:green}.valid-key.service-msg{color:#b72}#additional-field-table{margin-bottom:20px}.tribe-admin-box-left{float:left;width:20%}.tribe-admin-box-left,.tribe-admin-box-right{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;margin:20px 0;padding:0 20px 15px}.tribe-admin-box-right{float:right;width:68%}.ajax-loader{float:right;margin:10px}.tribe-arrangeable-item{border:1px solid #d3d3d3;border-radius:3px}.tribe-arrangeable-item .ui-state-default{border:none}.tribe-arrangeable-item-top{padding:6px}.tribe-arrangeable-item-top:hover{cursor:move}.tribe-arrangeable-action{float:right}.tribe-arrangeable-child{background-color:#f9f9f9;border-top:1px solid #d3d3d3;display:none;padding:25px}.tribe-arrangeable-child label{display:block;margin:0 0 7px}.tribe_events_active_filter_type_options{margin:10px 0}.tribe_events_active_filter_type_options label{margin:7px 0}#event_organizer td small,.OrganizerInfo td small{display:block;margin:0;max-width:250px}#event_organizer .organizer-email,.OrganizerInfo .organizer-email{vertical-align:top}.tribe-table-field-label{max-width:100%;width:200px}#tribe-help-general,#tribe-help-sidebar{float:left;margin-top:20px}#tribe-help-general p{margin-left:15px}#tribe-help-general ul{list-style-type:square}#tribe-help-general ol,#tribe-help-general ul{margin-bottom:20px;margin-left:35px}#tribe-help-general h3{background-color:#f9f9f9;margin-bottom:10px;padding:6px 0 6px 12px}#tribe-help-general h3~h3{margin-top:2.25em}#tribe-help-general h3+p{margin:0 0 20px;padding-left:12px}#tribe-help-general{width:65%}.tribe-help-section{padding-bottom:10px}.tribe-section-type-box{background-color:#f9f9f9;border:1px solid #ccc;border-radius:4px;padding:8px 20px 12px}.tribe-section-type-box img{height:auto;margin:10px 0;max-width:300px}.tribe-section-type-box ul{list-style:disc;margin-left:20px}.tribe-section-type-box ul ul{list-style:circle}#tribe-log-controls{padding-bottom:1rem;padding-left:12px}#tribe-log-controls>div{display:inline-block;padding-right:1rem}#tribe-log-controls .working{opacity:1;transition:opacity .2s}#tribe-log-controls .working.hidden{opacity:0;transition:opacity .2s}#tribe-log-viewer,#tribe-system-info dl.support-stats,.template-updates-wrapper{background:#000;border-radius:2px;color:#888;max-height:400px;overflow:scroll;padding:10px}#tribe-system-info dl.support-stats dt,.template-updates-wrapper dt{clear:both;float:left;font-weight:700;text-transform:uppercase;width:25%}#tribe-system-info dl.support-stats dd,.template-updates-wrapper dd{margin-left:25%;padding-left:10px}.system-info-copy .system-info-copy-btn{padding:6px}.system-info-copy .system-info-copy-btn .dashicons{padding-right:10px}.template-updates-wrapper p{margin-top:0}#tribe-help-sidebar{margin:20px 0 0 3%;max-width:225px;width:32%}.tribe-help-plugin-info{border:1px solid #ccc;padding:0 12px 12px}.tribe-help-plugin-info dd,.tribe-help-plugin-info dt{display:inline;margin:0}.tribe-help-plugin-info dt{font-weight:700}.tribe-help-plugin-info dd:after{content:"";display:block;height:.4em}.tribe-help-plugin-info dd:last-child:after{height:0}.tribe-help-plugin-info+.tribe-help-plugin-info{margin-top:20px}.tribe-help-plugin-info>div{line-height:2em}.tribe-help-plugin-info .star-rating{display:inline-block;margin-left:3px;position:relative;top:-2px}.tribe-help-plugin-info .tribe-list-addons{color:#21a6cb;font-size:24px;list-style:circle inside;margin-bottom:10px;margin-top:10px;padding-left:4px}.tribe-help-plugin-info .tribe-list-addons a{font-size:13px;left:-5px;position:relative;top:-5px}.tribe-help-plugin-info .tribe-list-addons .tribe-active-addon{list-style:disc inside}.ui-widget-overlay{background:#666;filter:alpha(opacity=50);opacity:.5}.ui-widget-shadow{background:#000;border-radius:5px;filter:alpha(opacity=20);margin:-5px 0 0 -5px;opacity:.2;padding:5px}.ui-resizable{position:relative}.ui-resizable-handle{display:block;font-size:.1px;position:absolute;z-index:99999}.ui-resizable-autohide .ui-resizable-handle,.ui-resizable-disabled .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;left:0;top:-5px;width:100%}.ui-resizable-s{bottom:-5px;cursor:s-resize;height:7px;left:0;width:100%}.ui-resizable-e{cursor:e-resize;height:100%;right:-5px;top:0;width:7px}.ui-resizable-w{cursor:w-resize;height:100%;left:-5px;top:0;width:7px}.ui-resizable-se{bottom:1px;cursor:se-resize;height:12px;right:1px;width:12px}.ui-resizable-sw{bottom:-5px;cursor:sw-resize;height:9px;left:-5px;width:9px}.ui-resizable-nw{cursor:nw-resize;height:9px;left:-5px;top:-5px;width:9px}.ui-resizable-ne{cursor:ne-resize;height:9px;right:-5px;top:-5px;width:9px}.ui-dialog{padding:.2em;position:relative;width:375px}.ui-dialog .ui-dialog-titlebar{padding:.5em .3em .3em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0 .2em}.ui-dialog .ui-dialog-titlebar-close{height:18px;margin:-10px 0 0;padding:1px;position:absolute;right:.3em;top:50%;width:19px}.ui-dialog .ui-dialog-titlebar-close span{display:block;margin-left:-8px;margin-top:-8px}.ui-dialog .ui-dialog-titlebar-close:focus,.ui-dialog .ui-dialog-titlebar-close:hover{padding:0}.ui-dialog .ui-dialog-content{background:none;border:0;overflow:auto;padding:.5em 1em;zoom:1}.ui-dialog .ui-dialog-buttonpane{background-image:none;border-width:1px 0 0;margin:.5em 0 0;padding:.3em 1em .5em!important;text-align:right}.ui-dialog .ui-dialog-buttonpane button{cursor:pointer;line-height:1.4em;margin:.5em .4em!important;overflow:visible;padding:.2em .6em .3em;text-shadow:none;width:auto}.ui-dialog .ui-resizable-se{bottom:3px;height:14px;right:3px;width:14px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:center}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button .ui-button-text{display:block;line-height:1.4}#ui-datepicker-div{display:none}#tribe-loading{background:#fff;background:hsla(0,0%,100%,.8);display:none;height:100%;left:0;position:absolute;top:0;transition:all 1s linear;width:100%;z-index:4}#tribe-loading span{background:url(../images/tribe-loading.gif) 0 0 no-repeat;background-size:32px 32px;height:32px;left:50%;margin:-16px 0 0 -16px;position:absolute;top:50%;width:32px}.tribe_update_page{max-width:850px}.tribe-half-column{float:left;margin-bottom:30px;margin-right:5%;width:45%}.tribe-row:after,.tribe-row:before{content:"";display:table}.tribe-row,.tribe-row:after{clear:both}.tribe-row .tribe-half-column:last-child{margin-right:0;width:50%}.tribe_update_page h2{font-size:30px;line-height:1.2;margin-bottom:20px}.tribe_update_page h3{font-size:24px;font-weight:400;line-height:24px;margin-top:0}.tribe_update_page h4{font-size:18px;font-weight:600;line-height:18px;margin:0}.tribe_update_page p{font-size:15px}p.tribe-update-message{font-size:18px;font-weight:400}.tribe_update_page h4:before{content:"\f145";font-family:dashicons;font-size:34px;line-height:1;margin-right:5px;position:relative;top:5px}a.tribe-rating-link{text-decoration:none}.tribe-update-links{margin-top:30px}.tribe_update_page li:before{content:"\2022";padding-right:3px}.tribe_update_page .rss-widget{margin:1em 0}.tribe_update_page a.rsswidget{font-size:14px;font-weight:400;line-height:1}.tribe_update_page .rss-widget li:before{display:none}.tribe-events-widget-admin-form__input-section p{margin:0}.tribe-events-widget-admin-form__input-section h4{margin:.5em 0}.tribe-update-bar{display:inline-block}.tribe-update-bar .progress{border:1px solid #ccc;float:left;margin-right:1rem;padding:1px;width:18rem}.tribe-update-bar .progress .bar{background:#7ad03a;height:1rem;width:1%}#tribe-dialog-wrapper>div{padding:1rem}#tribe-dialog-wrapper>div .stage{display:none}#tribe-dialog-wrapper #heading{background:#fff}#tribe-dialog-wrapper label{display:block}#tribe-dialog-wrapper .select-single-container{border:1px solid #888;height:300px;overflow-y:scroll}#tribe-dialog-wrapper .select-single-container label{opacity:1;padding:3px 5px;transition:opacity .2s}#tribe-dialog-wrapper .select-single-container label:nth-child(odd){background:#fff}#tribe-dialog-wrapper .select-single-container label.selected{background:#0073aa;color:#fff;font-weight:700}#tribe-dialog-wrapper .select-single-container label input{display:none}#tribe-dialog-wrapper .select-single-container.updating label{opacity:.35;transition:opacity .2s}.ui-front{z-index:1000000}.wp-list-table.plugins .column-description .update-message{color:#d54e21}.api-check{min-height:100px;padding:1em}.api-check+.notice-dismiss:hover:before{color:#fff}.api-check:after,.api-check:before{content:"";display:table}.api-check:after{clear:both}.api-check .tribe-mascot{bottom:0;display:none;padding:0 1rem 0 0;position:absolute;right:0;top:0}.api-check .tribe-mascot img{display:inline-block;height:100%;max-height:150px;max-width:150px;vertical-align:middle;width:auto}.api-check p{line-height:1.7;margin-bottom:1em}.api-check a{text-decoration:none}.api-check a:hover{text-decoration:underline}.api-check .plugin-list{display:inline;font-weight:600;margin:0;padding:0}.api-check .plugin-list span.plugin-invalid:after{content:", "}.api-check .plugin-list span.plugin-invalid:last-of-type:after{content:""}.tribe-marketing-notice{padding:1em}.tribe-marketing-notice+.notice-dismiss:hover:before{color:#fff}.tribe-marketing-notice:after,.tribe-marketing-notice:before{content:"";display:table}.tribe-marketing-notice:after{clear:both}.tribe-marketing-notice .tribe-marketing-notice__icon{display:none;flex-shrink:0;padding:0;position:static}.tribe-marketing-notice .tribe-marketing-notice__icon img{display:inline-block;max-height:100%;max-width:none;vertical-align:middle;width:100%}.tribe-marketing-notice h3{margin-bottom:.5em;margin-top:.5em}.tribe-marketing-notice p{line-height:1.7;margin-bottom:.5em}.tribe-marketing-notice a{text-decoration:none}.tribe-marketing-notice a:hover{text-decoration:underline}#wpcontent .notice-tribe-banner{align-items:center;background:#161b7d;border:0;box-shadow:none;display:flex;justify-content:flex-start;margin:0 0 16px;padding-right:0}.notice-tribe-banner .tribe-marketing-notice__icon{width:47px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:0;padding:1em 0}.notice-tribe-banner h3{color:#fff;display:block;font-size:.875rem;line-height:1.25;margin:0 0 .25rem}.notice-tribe-banner a{border-bottom:1px solid #fff;line-height:1.25;margin:0;text-decoration:none}.notice-tribe-banner a:hover{text-decoration:none}.notice-tribe-banner a,.notice-tribe-banner p{color:#fff;display:inline-block;font-size:.875rem;line-height:1.25}.notice-tribe-banner p{display:inline-block;margin:0;padding:0}.notice-tribe-banner .tribe-marketing-notice{align-items:center;display:flex;justify-content:flex-start;margin:0 auto;min-height:65px;padding:0 .75rem;width:100%}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:100%}.notice-tribe-banner .notice-dismiss{position:static}.notice-tribe-banner .notice-dismiss:before{color:#eaf1ff}.tribe-dropdown,.tribe-ea-dropdown{max-width:100%;width:auto}.tribe-dropdown.select2-container .selection,.tribe-ea-dropdown.select2-container .selection{margin-top:inherit}.tribe-dropdown .select2-selection--single,.tribe-ea-dropdown .select2-selection--single{height:32px}.tribe-dropdown .select2-selection--single .select2-selection__clear,.tribe-ea-dropdown .select2-selection--single .select2-selection__clear{line-height:28px}.tribe-dropdown .select2-selection--single .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--single .select2-selection__rendered{line-height:32px;padding-right:28px}.tribe-dropdown.select2-container--focus .select2-selection--single,.tribe-ea-dropdown.select2-container--focus .select2-selection--single{border-color:#5897fb;box-shadow:0 0 5px rgba(0,0,0,.1)}.tribe-dropdown.select2-container--open .select2-search__field,.tribe-ea-dropdown.select2-container--open .select2-search__field{padding:0}.tribe-dropdown.select2-container--open .select2-dropdown--below,.tribe-ea-dropdown.select2-container--open .select2-dropdown--below{border-top:1px solid #aaa;margin-top:-1px}.tribe-dropdown.select2-container--open .select2-dropdown--above,.tribe-ea-dropdown.select2-container--open .select2-dropdown--above{border-bottom:1px solid #aaa;margin-bottom:-16px}.tribe-dropdown.select2-container--open .select2-selection--single,.tribe-ea-dropdown.select2-container--open .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#aaa}.tribe-dropdown.select2-container--open .select2-selection__arrow b,.tribe-ea-dropdown.select2-container--open .select2-selection__arrow b{transform:rotate(180deg)}.tribe-dropdown.select2-selection--single,.tribe-ea-dropdown.select2-selection--single{background-image:none;border:1px solid #ccc;border-radius:3px;overflow:hidden}.tribe-dropdown.select2-selection--single>.select2-selection__rendered,.tribe-ea-dropdown.select2-selection--single>.select2-selection__rendered{white-space:normal}.tribe-dropdown.select2-selection--single .select2-selection__arrow,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow{background:transparent;background-image:none;border-left:0;top:2px;width:26px}.tribe-dropdown.select2-selection--single .select2-selection__arrow b,.tribe-ea-dropdown.select2-selection--single .select2-selection__arrow b{background:#fff url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E") no-repeat right 5px top 55%;background-size:auto;background-size:16px 16px;border:0;bottom:0;display:block;height:auto;left:0;margin:0;padding:0;right:0;top:0;width:auto}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered{background-image:none;border:1px solid #ccc;border-radius:3px;min-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline{line-height:25px}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-search--inline input{padding-bottom:0;padding-top:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice{line-height:19px;margin-top:2px;padding-bottom:0;padding-top:0}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice div{line-height:inherit}.tribe-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove,.tribe-ea-dropdown .select2-selection--multiple .select2-selection__rendered .select2-selection__choice__remove{left:4px;top:3px;transition-property:border,color}.select2-results .select2-results__option{color:#939393;font-weight:400;margin-bottom:0}.select2-results .select2-results__option[aria-disabled=true]{background-color:#e0e0e0}.select2-results.select2-results__option--highlighted{background-color:#efefef;color:#a1a1a1;cursor:default;display:block}.wp-core-ui .button-red{background-color:#a00;border-color:#9b2124;box-shadow:inset 0 1px 0 rgba(120,200,230,.5);color:#fff;text-decoration:none;text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red.hover,.wp-core-ui .button-red:focus,.wp-core-ui .button-red:hover{background-color:#a00;border-color:#7f1c1f;box-shadow:inset 0 1px 0 rgba(120,200,230,.6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3)}.wp-core-ui .button-red.focus,.wp-core-ui .button-red:focus{border-color:#500f0e;box-shadow:inset 0 1px 0 rgba(120,200,230,.6),1px 1px 2px rgba(0,0,0,.4)}.wp-core-ui .button-red.active,.wp-core-ui .button-red.active:focus,.wp-core-ui .button-red.active:hover,.wp-core-ui .button-red:active{background:#7f1c1f;border-color:#601312 #ae2426 #ae2426;box-shadow:inset 0 1px 0 rgba(0,0,0,.1);color:hsla(0,0%,100%,.95);text-shadow:0 1px 0 rgba(0,0,0,.1)}.wp-core-ui .button-red-disabled,.wp-core-ui .button-red:disabled,.wp-core-ui .button-red[disabled]{background:#ba292b!important;border-color:#7f1c1f!important;box-shadow:none!important;color:#e79496!important;cursor:default;text-shadow:0 -1px 0 rgba(0,0,0,.1)!important}.ticket_form .select2-container .select2-selection--single .select2-selection__arrow{display:none}.clear{zoom:1}.clear:after,.clear:before{content:" ";display:table}.clear:after{clear:both}.checkmark:after{border:solid #0ab152;border-width:0 3px 3px 0;content:"";display:block;height:15px;transform:rotate(45deg);width:8px}.checkmark.checkmark-right:after{float:right;margin-right:2em}.checkmark.checkmark-left:after{float:left;margin-left:2em}.checkmark.no-checkmark:after{display:none}.complete,.ok,.on,.yes,[data-status=complete],[data-status=ok],[data-status=on],[data-status=yes]{color:#0ab152}.incomplete,.ko,.no,.off,[data-status=incomplete],[data-status=ko],[data-status=no],[data-status=off]{color:#ff2500}.plugin-card-event-tickets-plus .column-downloaded,.plugin-card-event-tickets-plus .column-rating,.plugin-card-event-tickets-plus .column-updated,.plugin-card-event-tickets .column-downloaded,.plugin-card-event-tickets .column-rating,.plugin-card-event-tickets .column-updated,.plugin-card-events-calendar-pro .column-downloaded,.plugin-card-events-calendar-pro .column-rating,.plugin-card-events-calendar-pro .column-updated,.plugin-card-events-community-tickets .column-downloaded,.plugin-card-events-community-tickets .column-rating,.plugin-card-events-community-tickets .column-updated,.plugin-card-events-community .column-downloaded,.plugin-card-events-community .column-rating,.plugin-card-events-community .column-updated,.plugin-card-image-widget-plus .column-downloaded,.plugin-card-image-widget-plus .column-rating,.plugin-card-image-widget-plus .column-updated,.plugin-card-image-widget .column-downloaded,.plugin-card-image-widget .column-rating,.plugin-card-image-widget .column-updated,.plugin-card-the-events-calendar .column-downloaded,.plugin-card-the-events-calendar .column-rating,.plugin-card-the-events-calendar .column-updated,.plugin-card-tribe-eventbrite .column-downloaded,.plugin-card-tribe-eventbrite .column-rating,.plugin-card-tribe-eventbrite .column-updated,.plugin-card-tribe-filterbar .column-downloaded,.plugin-card-tribe-filterbar .column-rating,.plugin-card-tribe-filterbar .column-updated{display:none}body.tribe-welcome,body.tribe_events_page_tribe-help{background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body.tribe-welcome .update-nag,body.tribe_events_page_tribe-help .update-nag{display:none}body.tribe-welcome #wpcontent,body.tribe_events_page_tribe-help #wpcontent{padding:0}body.tribe-welcome .tribe_settings,body.tribe_events_page_tribe-help .tribe_settings{margin:0}body.tribe-welcome #wpfooter,body.tribe-welcome .tribe_settings>h1,body.tribe_events_page_tribe-help #wpfooter,body.tribe_events_page_tribe-help .tribe_settings>h1{display:none}body.tribe-welcome #wpbody-content,body.tribe_events_page_tribe-help #wpbody-content{padding-bottom:25px}body.tribe-welcome .tribe-dependency-error,body.tribe_events_page_tribe-help .tribe-dependency-error{display:none}.tribe-events-admin-content-wrapper{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;margin:0 auto;padding:0 0 30px;width:calc(100% - 40px)}.tribe-events-admin-card{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;display:block;margin:0 auto 36px;padding:27px;text-align:center}.tribe-events-admin-card--2up .tribe-events-admin-card__title{max-width:260px}.tribe-events-admin-card--3up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--3up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card__button{background-color:#fff;border:none;color:#3d54ff;font-size:14px;font-weight:700;letter-spacing:1px;line-height:16px;position:absolute;right:20px;text-transform:uppercase;top:17px}.tribe-events-admin-card__button:hover{color:#161b7d}.tribe-events-admin-card__description{color:#000;font-size:14px;font-style:normal;font-weight:400;line-height:22px;margin-top:16px}.tribe-events-admin-card__image{display:block;height:100px;margin:0 auto}.tribe-events-admin-card__link{color:#3d54ff;display:inline-block;font-size:16px;font-style:normal;font-weight:700;line-height:18px;margin-top:24px;position:relative;text-decoration:none}.tribe-events-admin-card__link:hover{color:#161b7d}.tribe-events-admin-card__link:after{border-style:solid;border-width:0 0 1px;bottom:-4px;content:"";left:0;position:absolute;width:100%}.tribe-events-admin-card__title{color:#0f1031;font-size:20px;font-weight:700;line-height:23px;margin:auto}.tribe-events-admin-card-grid{max-width:1048px}input[type=checkbox].tribe-common-switch__input{display:none}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label{background:#fff;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;cursor:pointer;display:block;height:18px;outline:0;padding:3px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:27px}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:after,input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:before{content:"";display:block;height:10px;position:relative;width:10px}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:after{background:#878787;border-radius:2px;content:"";left:0;transition:all .2s ease}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label:before{display:none}input[type=checkbox].tribe-common-switch__input+.tribe-common-switch__label::selection{background:none}input[type=checkbox].tribe-common-switch__input:checked+.tribe-common-switch__label:after{background:#2e709d;left:50%}.tribe-events-admin-header__logo-word-mark{display:inline-block;height:auto;margin:0 0 26px;vertical-align:middle;width:312px}.tribe-events-admin-header{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:45px 0 0}.tribe-events-admin-header__right-image{height:280px;position:absolute;right:0;top:0;width:auto;z-index:-1}.tribe-events-admin-header__title{font-size:48px;line-height:48px;margin:0 0 18px}.tribe-events-admin-header__description{font-size:18px;line-height:28px;margin-bottom:44px;max-width:60%}.tribe-events-admin-tab-nav{display:flex;margin:0}.tribe-events-admin-tab-nav li{cursor:pointer;font-size:16px;font-weight:500;margin-bottom:0;margin-right:30px}.tribe-events-admin-tab-nav li:hover{color:#334aff}.tribe-events-admin-tab-nav .selected{border-bottom:3px solid #334aff;color:#334aff;padding-bottom:17px}.tribe-events-admin-tab-nav li:after{background:#334aff;border-radius:100px;bottom:0;content:"";display:block;height:3px;left:0;position:absolute;right:0}.tribe-events-admin__line{border-top:1px solid #e1e1e4}.tribe-events-admin-products-description{color:#0f1031;font-size:14px;line-height:2}.tribe-events-admin-products-card{align-items:center;border:1px solid #e1e1e4;border-radius:20px;display:flex;padding:10px 15px}.tribe-events-admin-products-card__icon{height:40px;object-fit:contain;width:40px}.tribe-events-admin-products-card__group{margin:0 20px;max-width:55%}.tribe-events-admin-products-card__group-title{color:#0f1031;font-size:16px;font-weight:700;line-height:1;margin:0}.tribe-events-admin-products-card__group-description{font-size:12px;margin-top:5px}.tribe-events-admin-products-card__button{background-color:#fff;border:1px solid #e1e1e4;border-radius:20px;color:#0f1031;font-size:12px;font-weight:700;letter-spacing:1px;line-height:16px;margin-left:auto;padding:10px 15px;text-decoration:none;text-transform:uppercase}.tribe-events-admin-products-card__button:hover{background-color:#334aff;color:#fff}.tribe-events-admin-products-card__button:active,.tribe-events-admin-products-card__button:focus{box-shadow:none;outline:none}.tribe-events-admin-products-card__button--active,.tribe-events-admin-products-card__button--active:active,.tribe-events-admin-products-card__button--active:focus,.tribe-events-admin-products-card__button--active:hover{background:rgba(61,84,255,.16);color:#334aff;cursor:not-allowed;text-transform:uppercase}.tribe-events-admin-card--1up{width:100%}.tribe-events-admin-card--no-pad{padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__image{display:block;height:152px;margin:0;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{font-size:28px;line-height:34px;text-align:left}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin:0;padding:0;text-align:left}.tribe-events-admin-card--no-pad .tribe-events-admin-card__link{margin:0;padding:0}.tribe-events-admin-card--faq{display:inline-block;font-size:0;height:147px;margin:0 0 0 30px;padding:24px 16px 22px 20px;width:230px}.tribe-events-admin-card--faq:first-child{margin-left:0}.tribe-events-admin-card--faq img{float:left;height:22px;width:16px}.tribe-events-admin-card--faq .tribe-events-admin-faq__question{color:#334aff;font-size:16px;line-height:19px;margin:0 0 12px 26px;text-align:left}.tribe-events-admin-card--faq .tribe-events-admin-faq__answer{font-size:13px;line-height:16px;margin-left:26px;text-align:left}.tribe-events-admin-video{border-radius:16px;height:200px;margin-bottom:72px;-webkit-mask-image:-webkit-radial-gradient(circle,#fff 100%,#000 0);overflow:hidden;-webkit-transform:rotate(.000001deg)}.tribe-events-admin-video iframe{width:100%}.tribe-events-admin-card--promo-blue{background-color:#3d54ff;background-image:url(../images/welcome/promo.jpg)}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{color:#fff;font-size:16px;margin-bottom:16px;text-align:left}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__title{color:#fff;text-align:left}.tribe-events-admin-graphic{position:absolute;right:0;top:106px;z-index:-1}.tribe-events-admin-graphic--desktop-only{display:none}.tribe-events-admin-graphic--mobile-only{display:block}.tribe-events-admin-card__form{position:relative}input[type=email].tribe-events-admin-card__input{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;font-size:14px;height:54px}input[type=email].tribe-events-admin-card__input::placeholder{color:rgba(15,16,49,.72);letter-spacing:.5px;padding-left:10px}.tribe-events-admin-container,.tribe-events-admin-content-wrapper.tribe-events-admin-container{margin:0 auto;max-width:1024px;width:90%}.tribe-events-admin-2col-grid{display:grid;grid-gap:15px 30px;gap:15px 30px;grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-3col-grid{display:grid;grid-gap:30px;gap:30px;grid-template-areas:". . .";grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-4col-grid{display:grid;grid-gap:30px;gap:30px;grid-template-areas:". . . .";grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr}.tribe-events-admin-products{margin:10px 0 0}.tribe-events-admin-quick-nav{background:#fff;border:1px solid #e1e1e4;border-radius:16px;box-sizing:border-box;display:block;margin:40px 0 78px;padding:18px 23px 2px}.tribe-events-admin-quick-nav__link{color:#3d54ff;font-size:16px;font-weight:700;line-height:18px;text-align:center;text-decoration:none}.tribe-events-admin-quick-nav__link:hover{color:#161b7d}.tribe-events-admin-quick-nav__link-item{display:block;padding-bottom:19px}.tribe-events-admin-quick-nav__links{display:inline}.tribe-events-admin-quick-nav__title{color:rgba(15,16,49,.72);display:inline-block;font-size:14px;font-weight:400;line-height:16px;padding-bottom:14px;text-transform:uppercase}.tribe-events-admin-title{padding-top:14px}.tribe-events-admin-title__description{color:#0f1031;font-size:16px;font-weight:400;line-height:24px;max-width:584px;padding-top:15px}.tribe-events-admin-title__heading{color:#0f1031;display:inline-block;font-size:24px;font-weight:700;line-height:28px;margin:5px 0 0}.tribe-events-admin-title__logo{margin-right:8px;vertical-align:top;width:34px}.tribe-events-admin-notice{background-color:#3d54ff;height:65px}.tribe-events-admin-notice .tribe-events-admin-content-wrapper{padding-bottom:0;padding-top:8px}.tribe-events-admin-notice p{color:#fff;display:inline-block;font-family:Helvetica,sans-serif;font-size:16px;line-height:18px;margin-top:0;padding-bottom:12px;padding-left:16px;vertical-align:middle;width:calc(100% - 60px)}.tribe-events-admin-notice__logo{display:inline-block}.tribe-events-admin-tickets .tribe-events-admin-section-header{font-size:28px;line-height:32px}.tribe-events-admin-tickets .tribe-events-admin-graphic--desktop-only{width:365px}.tribe-events-admin-tickets .tribe-events-admin-graphic--mobile-only{top:230px;width:300px}.tribe-events-admin-tickets .tribe-events-admin-title__heading{margin-top:0}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:4px;width:32px}.tribe-events-admin-kb{margin:10px 0 0}.tribe-events-admin-kb-card{border:1px solid #e1e1e4;border-radius:20px}.tribe-events-admin-kb-card__image{height:auto;width:100%}.tribe-events-admin-kb-card__title{color:#0f1031;flex-grow:0;font-size:20px;font-weight:700;line-height:1.2;margin:0;padding:20px 28px 10px}.tribe-events-admin-kb-card__links{margin:0;padding:0 28px 25px}.tribe-events-admin-kb-card__links li{margin:0 0 10px}.tribe-events-admin-kb-card__links li a{color:#334aff;font-size:14px;line-height:1.2;text-decoration:none}.tribe-events-admin-kb-card__links li a:focus{box-shadow:none;outline:none}.tribe-events-admin-kb-card__links li a:hover{color:#1c39bb}.tribe-events-admin-section-header{align-items:center;color:#000;display:flex;font-weight:700;justify-content:space-between;margin:0}.tribe-events-admin-section-header h3{color:#0f1031;font-size:28px;font-weight:700;line-height:1}.tribe-events-admin-section-header a{border-bottom:2px solid #334aff;color:#334aff;font-size:14px;padding-bottom:2px;text-decoration:none}.tribe-events-admin-section-header a:focus{box-shadow:none;outline:none}.tribe-events-admin-section-header a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-faq{margin:10px 0 0}.tribe-events-admin-faq-card{border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;padding:24px 15px 19px 19px}.tribe-events-admin-faq-card a{color:#0f1031}.tribe-events-admin-faq-card a:focus{box-shadow:none;outline:none}.tribe-events-admin-faq-card a:hover{color:#1c39bb}.tribe-events-admin-faq-card__icon img{height:22px;width:16px}.tribe-events-admin-faq-card__content{margin-left:10px}.tribe-events-admin-faq__question,.tribe-events-admin-faq__question a{color:#334aff;font-size:16px;text-decoration:none}.tribe-events-admin-faq__question a:focus{box-shadow:none;outline:none}.tribe-events-admin-faq__question a:hover{color:#1c39bb}.tribe-events-admin-faq__answer{color:#0f1031;font-size:13px;margin-top:18px}.tribe-events-admin-extensions-title{color:#0f1031;font-size:16px;line-height:1.5;margin:0 0 30px;max-width:70%}.tribe-events-admin-extensions{margin:10px 0 0}.tribe-events-admin-extensions-card{border:1px solid #e1e1e4;border-radius:20px;border-top:8px solid #334aff;padding:48px 35px 24px 25px}.tribe-events-admin-extensions-card__title{font-size:20px;margin:0}.tribe-events-admin-extensions-card__title a{color:#0f1031;font-family:Helvetica,sans-serif;font-size:20px;font-weight:700;line-height:1.2;text-decoration:none}.tribe-events-admin-extensions-card__title a:active,.tribe-events-admin-extensions-card__title a:focus,.tribe-events-admin-extensions-card__title a:hover{box-shadow:none;color:#334aff}.tribe-events-admin-extensions-card__description{color:#0f1031;font-family:Helvetica,sans-serif;font-size:14px;line-height:1.43;margin:20px 0}.tribe-events-admin-cta{align-items:center;border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;margin:60px 0}.tribe-events-admin-cta__image{height:152px;object-fit:contain;width:auto}.tribe-events-admin-cta__content,.tribe-events-admin__troubleshooting-cta{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:20px 0;width:100%}.tribe-events-admin-cta__content-title{color:#0f1031;font-size:28px;font-weight:700;line-height:normal;margin:0 0 10px;text-align:center}.tribe-events-admin-cta__content-subtitle{color:#0f1031;font-size:16px;line-height:1.5;margin-bottom:10px;text-align:center}.tribe-events-admin-cta__content-description a{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;font-weight:700;padding-bottom:2px;text-decoration:none}.tribe-events-admin-cta__content-description a:focus{box-shadow:none;outline:none}.tribe-events-admin-cta__content-description a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-footer-logo{display:inline-block;vertical-align:middle;width:228px}.tribe-events-admin-step{margin:10px 0 0}.tribe-events-admin-step-card{border:1px solid #e1e1e4;border-radius:20px;display:flex;justify-content:space-between;padding:24px 15px 19px 19px}.tribe-events-admin-step-card a{border-bottom:2px solid #334aff;color:#334aff;padding-bottom:2px;text-decoration:none}.tribe-events-admin-step-card a:focus{box-shadow:none;outline:none}.tribe-events-admin-step-card a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin-step-card__icon img{height:43px;margin-right:5px;width:42px}.tribe-events-admin-step-card__content{margin-left:10px}.tribe-events-admin-step__title{color:#0f1031;font-size:20px;font-weight:700;line-height:1.2;margin-bottom:10px}.tribe-events-admin-step__answer{color:#0f1031;font-size:13px;margin-top:18px}.tribe-events-admin__system-information{display:grid;grid-gap:15px 30px;gap:15px 30px;grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr;margin:100px 0;position:relative}.tribe-events-admin__troubleshooting-title{color:#0f1031;font-size:28px;font-weight:700;line-height:1;margin:0}.tribe-events-admin__troubleshooting-description{color:#0f1031;font-size:18px;line-height:1.2;line-height:1.44;margin:20px 0}.tribe-events-admin__system-information-select{display:flex;margin:30px 0 20px}.tribe-events-admin__system-information-select input[type=checkbox]{margin:0 10px 0 0}.tribe-events-admin__system-information-select label{color:#0f1031;font-size:16px;line-height:1.2}.tribe-events-admin__system-information-content small{color:#0f1031;font-size:12px;line-height:1.2}.tribe-events-admin__recent-template-changes .template-updates-wrapper,.tribe-events-admin__system-information-widget{background:#0f1031;border-radius:16px;color:#fff;font-size:14px;line-height:1.14;max-height:280px;overflow:scroll;-ms-overflow-style:none;padding:12px 0 0 27px;scrollbar-width:none}.tribe-events-admin__recent-template-changes .template-updates-wrapper p{color:#fff;font-size:14px;line-height:1.14;margin:0}.tribe-events-admin__system-information-widget a{color:#334aff}.tribe-events-admin__system-information-widget a:hover{opacity:.8}.tribe-events-admin__recent-template-changes .template-updates-wrapper{padding:30px 0 30px 27px}.tribe-events-admin__recent-template-changes .template-updates-wrapper::-webkit-scrollbar,.tribe-events-admin__system-information-widget::-webkit-scrollbar{display:none}.tribe-events-admin__system-information-widget-copy{bottom:10px;position:absolute}.tribe-events-admin__system-information-widget-copy button{background-color:#334aff;border:none;border-radius:100px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;outline:none;padding:18px 25px;text-align:center}.tribe-events-admin__system-information-widget-copy button:hover{background-color:#1c39bb}.tribe-events-admin__system-information-widget-copy button .dashicons,.tribe-events-admin__system-information-widget-copy button .dashicons-before:before{display:none}.tribe-events-admin__system-information-widget-copy button .optin-success{color:#fff;font-size:16px;font-weight:700;text-align:center}.tribe-events-admin__recent-template-changes p{color:#0f1031;font-size:18px;line-height:1.2;line-height:1.44;margin:20px 0}.tribe-events-admin__recent-log{margin-top:50px}.tribe-events-admin__troubleshooting-event-log-wrapper label{color:#0f1031;display:block;font-size:16px;line-height:1.63;margin-bottom:10px}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-controls{margin:20px 0 10px}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-viewer{background:#0f1031;border-radius:16px;color:#fff;font-size:14px;line-height:1.14;max-height:280px;min-height:60px;overflow:scroll;-ms-overflow-style:none;padding:12px 0 0 27px;scrollbar-width:none}.tribe-events-admin__troubleshooting-event-log-wrapper #tribe-log-viewer::-webkit-scrollbar{display:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;padding-bottom:2px;text-decoration:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log:focus{box-shadow:none;outline:none}.tribe-events-admin__troubleshooting-event-log-wrapper .download_log:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__troubleshooting-event-log-wrapper .tribe-events-admin__recent-log-filters-select-wrapper:after{display:none}.tribe-events-admin__recent-log-filters{display:flex;padding:20px 0 40px}.tribe-events-admin__recent-log-filters-field{margin-right:40px}.tribe-events-admin__recent-log-filters-select-wrapper:after{content:url(../images/help/polygon.svg);height:13px;pointer-events:none;position:absolute;right:22px;top:20px;width:14px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default .select2-selection--single{border:1px solid #e1e1e4!important;border-radius:16px;color:#0f1031;font-size:14px;line-height:1.14;padding:0 25px 0 15px!important}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls{margin-bottom:20px;padding:0}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:first-child,.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(2),.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(3){padding-right:75px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-selection__clear{display:none}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow{right:5px}.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,.tribe-events-admin__recent-log-filters-select-wrapper .select2-container--default.select2-container--open.select2-container--below .select2-selection--single{border-bottom-left-radius:16px;border-bottom-right-radius:16px}.tribe-events-admin__recent-log-filters-select-wrapper .select2-container .select2-selection--single .select2-selection__rendered{width:100%}.tribe-events-admin__recent-log-filters-select-wrapper select.focus-visible,.tribe-events-admin__recent-log-filters-select-wrapper select:focus-visible{outline:none}.tribe-events-admin__recent-log-filters-select-wrapper select option{color:#0f1031;font-size:14px;line-height:1.14}.tribe-events-admin__ea-status{margin-top:50px}.tribe-events-admin__issues-found-card{background-color:#f3eee8;border-radius:8px;margin-bottom:20px}.tribe-events-admin__issues-found-card:last-of-type{margin-bottom:100px}.tribe-events-admin__issues-found-card-title{align-items:center;cursor:pointer;display:flex;padding:10px 20px 10px 17px;position:relative}.tribe-events-admin__issues-found-card-title img{height:21px;margin-right:14px;object-fit:contain;width:21px}.tribe-events-admin__issues-found-card-title h3{margin:0}.tribe-events-admin__issues-found-card-title span{color:#0f1031;display:block}.tribe-events-admin__issues-found-card-title i{background-image:url(../images/help/arrow-down.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;height:15px;margin:12px 20px;position:absolute;right:0;top:0;transition:all .3s ease;width:15px}.tribe-events-admin__issues-found-card-title.active i{background-image:url(../images/help/arrow-up.svg);background-repeat:no-repeat;top:5px}.tribe-events-admin__issues-found-card-description{display:none;padding:0 20px 20px 55px}.tribe-events-admin__issues-found-card-description p{color:#0f1031;font-size:16px;margin:0}.tribe-events-admin__issues-found-card-description-actions{display:flex;padding:20px 0 10px}.tribe-events-admin__issues-found-card-description-actions a{border-bottom:2px solid #334aff;color:#334aff;font-size:16px;margin-right:20px;padding-bottom:5px;text-decoration:none}.tribe-events-admin__issues-found-card-description-actions a:focus{box-shadow:none;outline:none}.tribe-events-admin__issues-found-card-description-actions a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__ea-status-table-wrapper{overflow-x:auto}.tribe-events-admin__ea-status-table{border:1px solid #e1e1e4;border-radius:16px;margin:30px 0 40px;overflow:hidden}.tribe-events-admin__ea-status-table a{border-bottom:2px solid #334aff;color:#334aff;padding-bottom:2px;text-decoration:none}.tribe-events-admin__ea-status-table a:focus{box-shadow:none;outline:none}.tribe-events-admin__ea-status-table a:hover{border-bottom:2px solid #1c39bb;color:#1c39bb}.tribe-events-admin__ea-status-table tr{align-items:center;display:flex}.tribe-events-admin__ea-status-table th{color:#0f1031;font-weight:700;line-height:1.17;margin-top:10px;padding:5px 25px}.tribe-events-admin__ea-status-table td{align-items:center;color:#0f1031;display:flex;font-size:16px;line-height:1.63;padding:10px 25px;width:25%}.tribe-events-admin__ea-status-table td:nth-child(2){width:45%}.tribe-events-admin__ea-status-table td:nth-child(3){display:flex;justify-content:flex-end;width:30%}.tribe-events-admin__ea-status-table-dark{background-color:#f9f7f4}.tribe-events-admin__ea-status-table td img{height:21px;margin-right:14px;object-fit:contain;width:21px}.tribe_events_page_tec-troubleshooting{background-color:#fff}#tribe-community,#tribe-ticketing{display:none}.tribe-events-admin__troubleshooting-notice{background-color:#161b7d;color:#fff;font-size:16px;line-height:1;margin-left:-1.55vw;padding:24px 0}.tribe-events-admin__troubleshooting-notice_title{margin:0 auto;max-width:1024px;padding-left:25px;width:90%}.tribe-events-admin__troubleshooting-notice_title a{border-bottom:2px solid #fff;color:#fff;font-size:16px;line-height:1;padding-bottom:2px;text-decoration:none}.tribe-events-admin__troubleshooting-notice_title a:focus{box-shadow:none;outline:none}.tribe-events-admin__troubleshooting-notice_title a:hover{border-bottom:2px solid #f3eee8;color:#f3eee8}.tribe_events_page_tribe-help #tec-help-community,.tribe_events_page_tribe-help #tec-help-ticketing{display:none}.tribe_events_page_tribe-help .tribe-events-admin-title{padding-top:25px}.tribe_events_page_tribe-help .tribe-events-admin-title img{height:67px}body.tribe-welcome #fs_connect{border:1px solid #e1e1e4;border-radius:16px;box-shadow:none;box-sizing:border-box;margin-left:22px}body.tribe-welcome #fs_connect .fs-actions{background-color:transparent}body.tribe-welcome #fs_connect .fs-permissions{border-top:1px solid #e1e1e4;margin:0 16px}body.tribe-welcome #fs_connect button{background-color:#3d54ff;border-color:#3d54ff}body.tribe-welcome #fs_connect .button-secondary{background:#fff;border-color:#3d54ff;color:#3d54ff}body.tribe-welcome #fs_connect a{color:#3d54ff}body.tribe-welcome #fs_connect a:focus{box-shadow:none;outline:none}body.tribe-welcome #fs_connect a:hover{color:#161b7d}.black-friday-promo{align-items:flex-start;display:flex;flex-direction:column-reverse;justify-content:space-between}.black-friday-promo .black-friday-promo__button{background:#3d54ff;border-color:transparent;border-radius:20px;color:#fff;font-size:12px;height:34px;line-height:32px;min-height:unset;width:115px}.black-friday-promo .black-friday-promo__button:active,.black-friday-promo .black-friday-promo__button:focus,.black-friday-promo .black-friday-promo__button:hover{background:#1c39bb;border-color:transparent;color:#fff}.black-friday-promo__promo{background-position:50%;background-repeat:no-repeat;border-radius:10px;display:grid;grid-template-areas:"a b";grid-template-columns:auto 150px;height:150px;margin:10px 0;max-width:100%;width:450px}.black-friday-promo__content{grid-area:b;padding-top:8px;text-align:center}.black-friday-promo__text{color:#0f1031;font-family:monospace;font-size:16px;line-height:1;text-transform:uppercase}.black-friday-promo__branding-image{max-width:390px;width:100%}.end-of-year-sale-promo{align-items:flex-start;display:flex;flex-direction:column-reverse;justify-content:space-between}.end-of-year-sale-promo .end-of-year-sale-promo__button{background:#3d54ff;border-color:transparent;border-radius:20px;color:#fff;font-size:12px;height:34px;line-height:32px;min-height:unset;width:115px}.end-of-year-sale-promo .end-of-year-sale-promo__button:active,.end-of-year-sale-promo .end-of-year-sale-promo__button:focus,.end-of-year-sale-promo .end-of-year-sale-promo__button:hover{background:#1c39bb;border-color:transparent;color:#fff}.end-of-year-sale-promo__promo{background-color:#fff;background-position:0 0;background-repeat:no-repeat;border-radius:10px;display:grid;flex-shrink:0;grid-template-areas:"a b";grid-template-columns:auto 160px;height:150px;margin:10px 0;max-width:100%;width:460px}.end-of-year-sale-promo__content{grid-area:b;padding-top:8px;text-align:center}.end-of-year-sale-promo__text{color:#0f1031;font-family:monospace;font-size:13px;line-height:1.2;margin-bottom:8px;text-transform:uppercase}.end-of-year-sale-promo__branding-image{max-width:390px;width:100%}.tribe-common .tec-admin__upsell{display:inline-block;font-family:var(--tec-font-family-sans-serif);font-size:var(--tec-font-size-1);font-weight:var(--tec-font-weight-regular);line-height:var(--tec-line-height-1)}.tribe-common .tec-admin__upsell-content{align-items:center;display:flex;padding:var(--tec-spacer-1);padding-right:var(--tec-spacer-2)}.tribe-common .tec-admin__upsell-icon,.tribe-common .tec-admin__upsell-icon-image{height:24px;width:24px}.tribe-common .tec-admin__upsell-text-wrap{margin-left:var(--tec-spacer-2)}.tribe-common .tec-admin__upsell-link{color:var(--tec-color-accent-primary);font-weight:var(--tec-font-weight-bold);text-decoration:none}.tribe-common .tec-admin__upsell--rounded-corners .tec-admin__upsell-content{background:var(--tec-color-accent-primary-background);border-radius:24px}.tribe-common .tec-admin__upsell--rounded-corners-text .tec-admin__upsell-text-wrap{background:rgba(51,74,255,.1);border-radius:14px;padding:var(--tec-spacer-1) var(--tec-spacer-2)}.tribe-common .tec-admin__upsell-link--dark{color:var(--tec-color-text-primary)}.tribe-common .tec-admin__upsell-link--underlined{text-decoration:underline}@media only screen and (-o-min-device-pixel-ratio:2/1),only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min--moz-device-pixel-ratio:2),only screen and (min-device-pixel-ratio:2){#tribe-loading span{background-image:url(../images/tribe-loading@2x.gif)}}@media screen and (max-width:782px){.tribe-half-column,.tribe-row .tribe-half-column:last-child{margin:0 0 20px;width:100%}input[type=email]{width:100%}.events-cal .subsubsub{float:none}.events-cal .search-box{width:98%}.events-cal #search-submit{width:100%}.events-cal .tablenav.top{display:none}}@media screen and (min-width:500px){.api-check .tribe-mascot{display:block}.api-check .notice-content{margin-right:180px}}@media screen and (min-width:320px){.tribe-marketing-notice .tribe-marketing-notice__icon{display:block}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px}}@media screen and (min-width:600px) and (max-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:145px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}}@media screen and (min-width:782px){.tribe-marketing-notice .tribe-marketing-notice__content{margin-left:130px}.notice-tribe-banner .tribe-marketing-notice__content{margin-left:22px;padding:0}.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe-welcome .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:642px}}@media screen and (min-width:400px){.notice-tribe-banner .tribe-marketing-notice__icon{width:67px}}@media screen and (min-width:800px){.notice-tribe-banner h3{display:inline-block;font-size:1rem;margin:0 .5rem 0 0}.notice-tribe-banner a{line-height:1.5}.notice-tribe-banner a,.notice-tribe-banner p{font-size:1rem}.notice-tribe-banner p{margin:0 .5rem 0 0}.notice-tribe-banner .tribe-marketing-notice__cta{display:inline-block;margin-left:.5rem}}@media screen and (min-width:1215px){.events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice,.tribe_events_page_tribe-app-shop .notice-tribe-banner .tribe-marketing-notice{max-width:992px}.tribe-welcome .notice-tribe-banner .tribe-marketing-notice{max-width:1036px}}@media screen and (min-width:710px){.tribe-events-admin-content-wrapper{width:670px}.tribe-events-admin-card--2up{display:inline-block;width:calc(50% - 20px)}.tribe-events-admin-card--2up.tribe-events-admin-card--first{margin-right:36px}.tribe-events-admin-card--2up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--2up .tribe-events-admin-card__image{height:100px;margin-bottom:12px}.tribe-events-admin-card--2up .tribe-events-admin-card__title{margin-bottom:27px;max-width:340px}.tribe-events-admin-card--3up{display:inline-block;margin-bottom:32px;width:calc(50% - 18px)}.tribe-events-admin-card--3up.tribe-events-admin-card--first{margin-right:32px}.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:0}.tribe-events-admin-card__title{font-size:20px;line-height:23px}.tribe-events-admin-card--1up{display:inline-block;margin-left:32px;width:calc(50% - 18px)}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:71px}.tribe-events-admin-card--1up .tribe-events-admin-card__image{margin-bottom:28px}.tribe-events-admin-card--no-pad{height:154px;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{margin-left:50%;padding:42px 0 10px}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin-left:50%}.tribe-events-admin-card--promo-blue{display:block;margin-left:0;min-height:170px;width:100%}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{float:left;max-width:300px}.tribe-events-admin-graphic{max-width:250px;top:0}.tribe-events-admin-graphic--desktop-only{display:block}.tribe-events-admin-graphic--mobile-only{display:none}.tribe-events-admin-card__form{float:right;width:300px}input[type=email].tribe-events-admin-card__input{width:300px}.tribe-events-admin-title{padding-top:50px}.tribe-events-admin-title__description{padding-top:15px}.tribe-events-admin-title__heading{font-size:48px;line-height:55px;margin:0}.tribe-events-admin-title__logo{margin-right:14px;padding-top:5px;width:40px}.tribe-events-admin-tickets .tribe-events-admin-card__title{font-size:18px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{font-size:18px;height:66px}.tribe-events-admin-tickets .tribe-events-admin-title__logo{margin-right:8px;padding-top:4px;width:60px}}@media screen and (min-width:1217px){.tribe-events-admin-content-wrapper{max-width:1060px;width:100%}.tribe-events-admin-card--2up{margin-right:36px;width:486px}.tribe-events-admin-card--3up{width:310px}.tribe-events-admin-card--3up.tribe-events-admin-card--first,.tribe-events-admin-card--3up.tribe-events-admin-card--middle{margin-right:36px}.tribe-events-admin-card--3up.tribe-events-admin-card--last{margin-right:0}.tribe-events-admin-card--1up{margin:0 0 36px;padding:33px 44px 30px;text-align:left;width:1012px}.tribe-events-admin-card--1up .tribe-events-admin-card__description{height:auto}.tribe-events-admin-card--1up .tribe-events-admin-card__image{float:left;margin:0 48px 10px 0}.tribe-events-admin-card--no-pad{padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__image{margin:0;padding:0}.tribe-events-admin-card--no-pad .tribe-events-admin-card__title{margin-left:50%;padding:42px 0 10px}.tribe-events-admin-card--no-pad .tribe-events-admin-card__description{margin-left:50%}.tribe-events-admin-card--promo-blue{min-height:150px}.tribe-events-admin-card--promo-blue .tribe-events-admin-card__description{max-width:450px}.tribe-events-admin-graphic{max-width:none}.tribe-events-admin-card__form,input[type=email].tribe-events-admin-card__input{width:365px}.tribe-events-admin-quick-nav{border-radius:100px;display:inline-block;height:54px;margin:24px 0 94px;max-width:1010px;padding:0 36px 0 0}.tribe-events-admin-quick-nav__link-item{display:inline-block;padding:18px 10px 0}.tribe-events-admin-quick-nav__title{padding:19px 6px 17px 32px}.tribe-events-admin-tickets .tribe-events-admin-card--2up .tribe-events-admin-card__title{height:auto}}@media screen and (max-width:768px){.tribe-events-admin-header__logo-word-mark{width:285px}.tribe-events-admin-header__right-image{height:160px}.tribe-events-admin-header__description{max-width:100%}.tribe-events-admin-tab-nav li{margin-right:20px}.tribe-events-admin-tab-nav .selected{border-bottom:2px solid #334aff;padding-bottom:10px}.tribe-events-admin-2col-grid{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr))}.tribe-events-admin-3col-grid{grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr))}.tribe-events-admin-extensions-title{max-width:100%}.tribe-events-admin-cta{align-items:flex-start;flex-direction:column;overflow:hidden}.tribe-events-admin-footer-logo{width:225px}.tribe-events-admin__system-information{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr));margin:50px 0}}@media screen and (max-width:480px){.tribe-events-admin-header__logo-word-mark{width:260px}.tribe-events-admin-header__right-image{height:120px}.tribe-events-admin-header__title{font-size:35px}.tribe-events-admin-header__description{max-width:100%}.tribe-events-admin-tab-nav{border:1px solid #e1e1e4;border-radius:20px;flex-direction:column;padding:18px 22px}.tribe-events-admin-tab-nav li{margin-bottom:18px;margin-right:0}.tribe-events-admin-tab-nav .selected{border-bottom:2px solid #334aff;padding-bottom:10px;width:fit-content}.tribe-events-admin__line{border:none}.tribe-events-admin-products-card,.tribe-events-admin-products-description{display:none}.tribe-events-admin-container,.tribe-events-admin-content-wrapper.tribe-events-admin-container{max-width:90%}.tribe-events-admin-2col-grid,.tribe-events-admin-3col-grid,.tribe-events-admin-4col-grid{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr))}.tribe-events-admin-extensions-title{max-width:100%}.tribe-events-admin-cta__image{height:auto;width:90%}.tribe-events-admin-cta__content,.tribe-events-admin__troubleshooting-cta{align-items:flex-start;padding:32px 23px 45px;width:auto}.tribe-events-admin-cta__content-title{font-size:22px;text-align:left}.tribe-events-admin-cta__content-subtitle{text-align:left}.tribe-events-admin-footer-logo{width:210px}.tribe-events-admin__system-information{grid-template-areas:".";grid-template-columns:repeat(1,minmax(0,1fr));margin:50px 0}.tribe-events-admin__troubleshooting-notice{margin-left:-20px}.tribe-events-admin__troubleshooting-notice_title{max-width:90%}}@media screen and (min-width:1200px){.tribe-events-admin-products-card__group{max-width:47%}}@media screen and (min-width:500px) and (max-width:1080px){.tribe-events-admin-4col-grid{grid-template-areas:". .";grid-template-columns:repeat(2,minmax(0,1fr))}}@media screen and (min-width:768px){.tribe-events-admin-section-header{font-size:28px;line-height:1.143;margin:50px 0 21px}}@media screen and (max-width:1080px){.tribe-events-admin-cta__content-title{font-size:24px}}@media only screen and (max-width:1920px){.tribe-events-admin__system-information-widget-copy{right:20.5vw}}@media only screen and (max-width:1280px){.tribe-events-admin__system-information-widget-copy{right:22vw}}@media only screen and (max-width:768px){.tribe-events-admin__system-information-widget-copy{left:10px;right:auto}.tribe-events-admin__recent-log-filters{flex-direction:column}.tribe-events-admin__recent-log-filters-field{margin-bottom:30px;margin-right:0}.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:first-child,.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(2),.tribe-events-admin__recent-log-filters-select-wrapper #tribe-log-controls div:nth-child(3){padding-right:30px}.tribe-events-admin__issues-found-card-title h3{max-width:90%}}@media only screen and (max-width:480px){.tribe-events-admin__system-information-widget-copy{left:10px;right:auto}.tribe-events-admin__recent-log-filters{flex-direction:column}.tribe-events-admin__recent-log-filters-field{margin-bottom:30px;margin-right:0}.tribe-events-admin__recent-log-filters-select-wrapper:after{right:25px}.tribe-events-admin__issues-found-card-title h3{max-width:80%}.tribe-events-admin__ea-status-table{overflow:scroll}.tribe-events-admin__ea-status-table td{min-width:150px}.tribe-events-admin__ea-status-table td:nth-child(2),.tribe-events-admin__ea-status-table td:nth-child(3){width:100%}}@media (min-width:1024px){.black-friday-promo{align-items:center;flex-direction:row}.black-friday-promo__branding{padding-right:10px;width:calc(100% - 450px)}.end-of-year-sale-promo{align-items:center;flex-direction:row}.end-of-year-sale-promo__branding{padding-right:10px;width:calc(100% - 460px)}}@media (max-width:525px){.end-of-year-sale-promo__promo{grid-template-areas:"a" "b";grid-template-columns:auto;margin:20px auto;padding-top:100px;width:300px}}
|
common/src/resources/images/icons/circle-bolt.svg
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<svg width="28" height="28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M28 14c0 7.732-6.268 14-14 14S0 21.732 0 14C0 6.27 6.268 0 14 0s14 6.269 14 14Z" fill="#FFCF48"/><path d="m13.347 14.107-4.896-.14L19.557 3.754l-4.86 9.129 4.895.14-10.42 11.063 4.175-9.978Z" fill="#161B7D"/></svg>
|
common/vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit73105b855d01e1fed5f3c048fcd48a49::getLoader();
|
common/vendor/autoload_52.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit6aa20b0e950e334e4426d51311f82616::getLoader();
|
common/vendor/composer/autoload_classmap.php
CHANGED
@@ -125,6 +125,7 @@ return array(
|
|
125 |
'Tribe\\Admin\\Notice\\Service_Provider' => $baseDir . '/src/Tribe/Admin/Notice/Service_Provider.php',
|
126 |
'Tribe\\Admin\\Notice\\WP_Version' => $baseDir . '/src/Tribe/Admin/Notice/WP_Version.php',
|
127 |
'Tribe\\Admin\\Troubleshooting' => $baseDir . '/src/Tribe/Admin/Troubleshooting.php',
|
|
|
128 |
'Tribe\\Customizer\\Control' => $baseDir . '/src/Tribe/Customizer/Control.php',
|
129 |
'Tribe\\Customizer\\Controls\\Heading' => $baseDir . '/src/Tribe/Customizer/Controls/Heading.php',
|
130 |
'Tribe\\Customizer\\Controls\\Number' => $baseDir . '/src/Tribe/Customizer/Controls/Number.php',
|
125 |
'Tribe\\Admin\\Notice\\Service_Provider' => $baseDir . '/src/Tribe/Admin/Notice/Service_Provider.php',
|
126 |
'Tribe\\Admin\\Notice\\WP_Version' => $baseDir . '/src/Tribe/Admin/Notice/WP_Version.php',
|
127 |
'Tribe\\Admin\\Troubleshooting' => $baseDir . '/src/Tribe/Admin/Troubleshooting.php',
|
128 |
+
'Tribe\\Admin\\Upsell_Notice\\Main' => $baseDir . '/src/Tribe/Admin/Upsell_Notice/Main.php',
|
129 |
'Tribe\\Customizer\\Control' => $baseDir . '/src/Tribe/Customizer/Control.php',
|
130 |
'Tribe\\Customizer\\Controls\\Heading' => $baseDir . '/src/Tribe/Customizer/Controls/Heading.php',
|
131 |
'Tribe\\Customizer\\Controls\\Number' => $baseDir . '/src/Tribe/Customizer/Controls/Number.php',
|
common/vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit8dc5a9fdbf62c620f4c568133db7c1b6
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
-
call_user_func(\Composer\Autoload\
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit73105b855d01e1fed5f3c048fcd48a49
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit73105b855d01e1fed5f3c048fcd48a49', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit73105b855d01e1fed5f3c048fcd48a49', 'loadClassLoader'));
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
+
call_user_func(\Composer\Autoload\ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49::getInitializer($loader));
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
common/vendor/composer/autoload_real_52.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
4 |
|
5 |
-
class
|
6 |
private static $loader;
|
7 |
|
8 |
public static function loadClassLoader($class) {
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInitb188be7ffda6722adf0aa6f4673cd317 {
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$vendorDir = dirname(dirname(__FILE__));
|
27 |
$baseDir = dirname($vendorDir);
|
2 |
|
3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
4 |
|
5 |
+
class ComposerAutoloaderInit6aa20b0e950e334e4426d51311f82616 {
|
6 |
private static $loader;
|
7 |
|
8 |
public static function loadClassLoader($class) {
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit6aa20b0e950e334e4426d51311f82616', 'loadClassLoader'), true /*, true */);
|
23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit6aa20b0e950e334e4426d51311f82616', 'loadClassLoader'));
|
25 |
|
26 |
$vendorDir = dirname(dirname(__FILE__));
|
27 |
$baseDir = dirname($vendorDir);
|
common/vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'T' =>
|
@@ -181,6 +181,7 @@ class ComposerStaticInit8dc5a9fdbf62c620f4c568133db7c1b6
|
|
181 |
'Tribe\\Admin\\Notice\\Service_Provider' => __DIR__ . '/../..' . '/src/Tribe/Admin/Notice/Service_Provider.php',
|
182 |
'Tribe\\Admin\\Notice\\WP_Version' => __DIR__ . '/../..' . '/src/Tribe/Admin/Notice/WP_Version.php',
|
183 |
'Tribe\\Admin\\Troubleshooting' => __DIR__ . '/../..' . '/src/Tribe/Admin/Troubleshooting.php',
|
|
|
184 |
'Tribe\\Customizer\\Control' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Control.php',
|
185 |
'Tribe\\Customizer\\Controls\\Heading' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Controls/Heading.php',
|
186 |
'Tribe\\Customizer\\Controls\\Number' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Controls/Number.php',
|
@@ -261,10 +262,10 @@ class ComposerStaticInit8dc5a9fdbf62c620f4c568133db7c1b6
|
|
261 |
public static function getInitializer(ClassLoader $loader)
|
262 |
{
|
263 |
return \Closure::bind(function () use ($loader) {
|
264 |
-
$loader->prefixLengthsPsr4 =
|
265 |
-
$loader->prefixDirsPsr4 =
|
266 |
-
$loader->prefixesPsr0 =
|
267 |
-
$loader->classMap =
|
268 |
|
269 |
}, null, ClassLoader::class);
|
270 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'T' =>
|
181 |
'Tribe\\Admin\\Notice\\Service_Provider' => __DIR__ . '/../..' . '/src/Tribe/Admin/Notice/Service_Provider.php',
|
182 |
'Tribe\\Admin\\Notice\\WP_Version' => __DIR__ . '/../..' . '/src/Tribe/Admin/Notice/WP_Version.php',
|
183 |
'Tribe\\Admin\\Troubleshooting' => __DIR__ . '/../..' . '/src/Tribe/Admin/Troubleshooting.php',
|
184 |
+
'Tribe\\Admin\\Upsell_Notice\\Main' => __DIR__ . '/../..' . '/src/Tribe/Admin/Upsell_Notice/Main.php',
|
185 |
'Tribe\\Customizer\\Control' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Control.php',
|
186 |
'Tribe\\Customizer\\Controls\\Heading' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Controls/Heading.php',
|
187 |
'Tribe\\Customizer\\Controls\\Number' => __DIR__ . '/../..' . '/src/Tribe/Customizer/Controls/Number.php',
|
262 |
public static function getInitializer(ClassLoader $loader)
|
263 |
{
|
264 |
return \Closure::bind(function () use ($loader) {
|
265 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49::$prefixLengthsPsr4;
|
266 |
+
$loader->prefixDirsPsr4 = ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49::$prefixDirsPsr4;
|
267 |
+
$loader->prefixesPsr0 = ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49::$prefixesPsr0;
|
268 |
+
$loader->classMap = ComposerStaticInit73105b855d01e1fed5f3c048fcd48a49::$classMap;
|
269 |
|
270 |
}, null, ClassLoader::class);
|
271 |
}
|
event-tickets.php
CHANGED
@@ -3,14 +3,14 @@
|
|
3 |
Plugin Name: Event Tickets
|
4 |
Plugin URI: https://evnt.is/1acb
|
5 |
Description: Event Tickets allows you to sell basic tickets and collect RSVPs from any post, page, or event.
|
6 |
-
Version: 5.3.
|
7 |
Author: The Events Calendar
|
8 |
Author URI: https://evnt.is/1aor
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
11 |
Text Domain: event-tickets
|
12 |
Domain Path: /lang/
|
13 |
-
|
14 |
/*
|
15 |
Copyright 2010-2012 by Modern Tribe Inc and the contributors
|
16 |
|
3 |
Plugin Name: Event Tickets
|
4 |
Plugin URI: https://evnt.is/1acb
|
5 |
Description: Event Tickets allows you to sell basic tickets and collect RSVPs from any post, page, or event.
|
6 |
+
Version: 5.3.2
|
7 |
Author: The Events Calendar
|
8 |
Author URI: https://evnt.is/1aor
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
11 |
Text Domain: event-tickets
|
12 |
Domain Path: /lang/
|
13 |
+
*/
|
14 |
/*
|
15 |
Copyright 2010-2012 by Modern Tribe Inc and the contributors
|
16 |
|
lang/event-tickets-da_DK.mo
CHANGED
Binary file
|
lang/event-tickets-de_DE.mo
CHANGED
Binary file
|
lang/event-tickets-es_ES.mo
CHANGED
Binary file
|
lang/event-tickets-fr_CA.mo
CHANGED
Binary file
|
lang/event-tickets-fr_FR.mo
CHANGED
Binary file
|
lang/event-tickets-it_IT.mo
CHANGED
Binary file
|
lang/event-tickets-nl_NL.mo
CHANGED
Binary file
|
lang/event-tickets-ro_RO.mo
CHANGED
Binary file
|
lang/event-tickets.pot
CHANGED
@@ -2,17 +2,17 @@
|
|
2 |
# This file is distributed under the same license as the Event Tickets package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Event Tickets 5.3.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/event-tickets\n"
|
7 |
-
"POT-Creation-Date: 2022-03-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date: 2022-03-
|
12 |
"Last-Translator: \n"
|
13 |
"Language-Team: \n"
|
14 |
|
15 |
-
#. #-#-#-#-# event-tickets.pot (Event Tickets 5.3.
|
16 |
#. Plugin Name of the plugin/theme
|
17 |
#: event-tickets.php:61 src/Tribe/Admin/Notices.php:92 src/Tribe/Main.php:692
|
18 |
#: src/Tribe/Privacy.php:59 src/admin-views/admin-welcome-message.php:58
|
@@ -31,29 +31,29 @@ msgstr ""
|
|
31 |
msgid "Please provide a valid purchaser email."
|
32 |
msgstr ""
|
33 |
|
34 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
35 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
36 |
msgid "Learn More"
|
37 |
msgstr ""
|
38 |
|
39 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
40 |
msgid "Set up your checkout page"
|
41 |
msgstr ""
|
42 |
|
43 |
#. translators: %1$s: Link to knowledgebase article.
|
44 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
45 |
msgid ""
|
46 |
"In order to start selling with Tickets Commerce, you'll need to set up your "
|
47 |
"checkout page. Please configure the setting on Settings > Payments and "
|
48 |
"confirm that the page you have selected has the proper shortcode. %1$s"
|
49 |
msgstr ""
|
50 |
|
51 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
52 |
msgid "Set up your order success page"
|
53 |
msgstr ""
|
54 |
|
55 |
#. translators: %1$s: Link to knowledgebase article.
|
56 |
-
#: src/Tickets/Commerce/Admin/Notices.php:
|
57 |
msgid ""
|
58 |
"In order to start selling with Tickets Commerce, you'll need to set up your "
|
59 |
"order success page. Please configure the setting on Settings > Payments and "
|
@@ -305,16 +305,16 @@ msgstr ""
|
|
305 |
msgid "Tickets Commerce Checkout Page"
|
306 |
msgstr ""
|
307 |
|
308 |
-
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:
|
309 |
#: src/views/v2/commerce/checkout.php:55
|
310 |
msgid "Something went wrong!"
|
311 |
msgstr ""
|
312 |
|
313 |
-
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:
|
314 |
msgid "Unexpected response recieved."
|
315 |
msgstr ""
|
316 |
|
317 |
-
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:
|
318 |
msgid "Enabled for Checkout"
|
319 |
msgstr ""
|
320 |
|
@@ -374,19 +374,19 @@ msgid ""
|
|
374 |
"again once you are in live mode."
|
375 |
msgstr ""
|
376 |
|
377 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:
|
378 |
msgid "E.g.: 123"
|
379 |
msgstr ""
|
380 |
|
381 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:
|
382 |
msgid "E.g.: 03/26"
|
383 |
msgstr ""
|
384 |
|
385 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:
|
386 |
msgid "E.g.: 4111 1111 1111 1111"
|
387 |
msgstr ""
|
388 |
|
389 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:
|
390 |
msgid "E.g.: 01020"
|
391 |
msgstr ""
|
392 |
|
@@ -412,56 +412,74 @@ msgstr ""
|
|
412 |
msgid "Unexpected PayPal response when updating webhook"
|
413 |
msgstr ""
|
414 |
|
415 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
416 |
msgid "PayPal"
|
417 |
msgstr ""
|
418 |
|
419 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
420 |
msgid "PayPal is now connected."
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
424 |
msgid "Failed to disconnect PayPal account."
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
428 |
msgid "Disconnected PayPal account."
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
432 |
msgid "Failed to refresh PayPal access token."
|
433 |
msgstr ""
|
434 |
|
435 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
436 |
msgid "PayPal access token was refreshed successfully."
|
437 |
msgstr ""
|
438 |
|
439 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
440 |
msgid "Failed to refresh PayPal user info."
|
441 |
msgstr ""
|
442 |
|
443 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
444 |
msgid "PayPal user info was refreshed successfully."
|
445 |
msgstr ""
|
446 |
|
447 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
448 |
msgid "Failed to refresh PayPal webhooks."
|
449 |
msgstr ""
|
450 |
|
451 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
452 |
msgid "PayPal webhooks refreshed successfully."
|
453 |
msgstr ""
|
454 |
|
455 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
456 |
msgid ""
|
457 |
"A valid SSL certificate is required to set up your PayPal account and accept "
|
458 |
"payments"
|
459 |
msgstr ""
|
460 |
|
461 |
-
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:
|
462 |
msgid "Enable payments through PayPal, Venmo, and credit card."
|
463 |
msgstr ""
|
464 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
465 |
#: src/Tickets/Commerce/Gateways/PayPal/Location/Country.php:95
|
466 |
msgid "United States"
|
467 |
msgstr ""
|
@@ -4651,25 +4669,25 @@ msgstr ""
|
|
4651 |
msgid "Change %1$s in PayPal from webhook: %2$s"
|
4652 |
msgstr ""
|
4653 |
|
4654 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4655 |
msgid "Stripe"
|
4656 |
msgstr ""
|
4657 |
|
4658 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4659 |
msgid "Stripe wasn't able to complete your connection request. Try again."
|
4660 |
msgstr ""
|
4661 |
|
4662 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4663 |
msgid ""
|
4664 |
"Stripe signup was successful but the authentication tokens could not be "
|
4665 |
"retrieved. Try refreshing the tokens."
|
4666 |
msgstr ""
|
4667 |
|
4668 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4669 |
msgid "Disconnecting from Stripe failed. Please try again."
|
4670 |
msgstr ""
|
4671 |
|
4672 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4673 |
msgid ""
|
4674 |
"Due to Regulatory Issues between Stripe and the country listed in your "
|
4675 |
"Stripe account, the free version of Event Tickets cannot accept connections "
|
@@ -4679,21 +4697,34 @@ msgstr ""
|
|
4679 |
|
4680 |
#. Translators: %1$s is the opening <a> tag for the Payments Tab page link.
|
4681 |
#. %2$s is the closing <a> tag.
|
4682 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4683 |
msgid ""
|
4684 |
"Your stripe account was disconnected from the Stripe dashboard. If you "
|
4685 |
"believe this is an error, you can re-connect in the %1$sPayments Tab of the "
|
4686 |
"Settings Page%2$s."
|
4687 |
msgstr ""
|
4688 |
|
4689 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:
|
4690 |
msgid ""
|
4691 |
"Enable credit card payments, Afterpay, AliPay, Giropay, Klarna and more."
|
4692 |
msgstr ""
|
4693 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4694 |
#. Translators: %s is the html-formatted response from Stripe servers
|
4695 |
#. containing the error messages.
|
4696 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php:
|
4697 |
msgid ""
|
4698 |
"Stripe reports that it is unable to process charges with the selected "
|
4699 |
"Payment Methods. Usually this means that one of the methods selected is not "
|
@@ -4702,7 +4733,7 @@ msgid ""
|
|
4702 |
"Stripe support, then try again: <div class=\"stripe-errors\">%s</div>"
|
4703 |
msgstr ""
|
4704 |
|
4705 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php:
|
4706 |
msgid "Payment methods accepted cannot be empty"
|
4707 |
msgstr ""
|
4708 |
|
@@ -4880,9 +4911,22 @@ msgstr ""
|
|
4880 |
msgid "Account deauthorized is not the same as account connected."
|
4881 |
msgstr ""
|
4882 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4883 |
#. Translators: %s is the payment intent id.
|
4884 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php:
|
4885 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:
|
4886 |
msgid "Payment Intent %s does not correspond to a known order."
|
4887 |
msgstr ""
|
4888 |
|
@@ -4921,12 +4965,8 @@ msgstr ""
|
|
4921 |
msgid "Event was received but events of type %1$s are not currently handled."
|
4922 |
msgstr ""
|
4923 |
|
4924 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:40
|
4925 |
-
msgid "Payment Intent Test Successful"
|
4926 |
-
msgstr ""
|
4927 |
-
|
4928 |
#. Translators: %s is the payment intent id
|
4929 |
-
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:
|
4930 |
msgid ""
|
4931 |
"Payment Intent %s does not require an update or is a duplicate of a past "
|
4932 |
"event."
|
@@ -5135,44 +5175,44 @@ msgctxt "Browser title"
|
|
5135 |
msgid "%s - Tickets Commerce Orders"
|
5136 |
msgstr ""
|
5137 |
|
5138 |
-
#: src/Tickets/Commerce/Settings.php:
|
5139 |
msgid "Tickets Commerce Test Mode Active"
|
5140 |
msgstr ""
|
5141 |
|
5142 |
-
#: src/Tickets/Commerce/Settings.php:
|
5143 |
msgid "-- No page set --"
|
5144 |
msgstr ""
|
5145 |
|
5146 |
-
#: src/Tickets/Commerce/Settings.php:
|
5147 |
msgid "Tickets Commerce Settings"
|
5148 |
msgstr ""
|
5149 |
|
5150 |
-
#: src/Tickets/Commerce/Settings.php:
|
5151 |
msgid "Enable Test Mode"
|
5152 |
msgstr ""
|
5153 |
|
5154 |
-
#: src/Tickets/Commerce/Settings.php:
|
5155 |
msgid ""
|
5156 |
"Enables Test mode for testing payments. Any payments made will be done on "
|
5157 |
"\"sandbox\" accounts."
|
5158 |
msgstr ""
|
5159 |
|
5160 |
-
#: src/Tickets/Commerce/Settings.php:
|
5161 |
#: src/admin-views/tribe-commerce-settings.php:136
|
5162 |
msgid "Currency Code"
|
5163 |
msgstr ""
|
5164 |
|
5165 |
-
#: src/Tickets/Commerce/Settings.php:
|
5166 |
msgid "The currency that will be used for Tickets Commerce transactions."
|
5167 |
msgstr ""
|
5168 |
|
5169 |
-
#: src/Tickets/Commerce/Settings.php:
|
5170 |
#: src/admin-views/tribe-commerce-settings.php:144
|
5171 |
msgid "Stock Handling"
|
5172 |
msgstr ""
|
5173 |
|
5174 |
#. Translators: %s: The word "ticket" in lowercase.
|
5175 |
-
#: src/Tickets/Commerce/Settings.php:
|
5176 |
msgctxt "tickets fields settings paypal stock handling"
|
5177 |
msgid ""
|
5178 |
"When a customer purchases a %s, the payment gateway might flag the order as "
|
@@ -5182,62 +5222,62 @@ msgstr ""
|
|
5182 |
|
5183 |
#. Translators: %1$s: The word "ticket" in lowercase. %2$s: `<strong>` opening
|
5184 |
#. tag. %3$s: `</strong>` closing tag.
|
5185 |
-
#: src/Tickets/Commerce/Settings.php:
|
5186 |
msgid ""
|
5187 |
"Decrease available %1$s stock as soon as a %2$sPending%3$s order is created."
|
5188 |
msgstr ""
|
5189 |
|
5190 |
#. Translators: %1$s: The word "ticket" in lowercase. %2$s: `<strong>` opening
|
5191 |
#. tag. %3$s: `</strong>` closing tag.
|
5192 |
-
#: src/Tickets/Commerce/Settings.php:
|
5193 |
msgid ""
|
5194 |
"Only decrease available %1$s stock if an order is confirmed as %2$sCompleted"
|
5195 |
"%3$s by the payment gateway."
|
5196 |
msgstr ""
|
5197 |
|
5198 |
-
#: src/Tickets/Commerce/Settings.php:
|
5199 |
msgid "Checkout page"
|
5200 |
msgstr ""
|
5201 |
|
5202 |
#. Translators: %s: The [shortcode] for the success page.
|
5203 |
-
#: src/Tickets/Commerce/Settings.php:
|
5204 |
msgid ""
|
5205 |
"This is the page where customers go to complete their purchase. Use the %s "
|
5206 |
"shortcode to display the checkout experience in the page content."
|
5207 |
msgstr ""
|
5208 |
|
5209 |
-
#: src/Tickets/Commerce/Settings.php:
|
5210 |
#: src/admin-views/tribe-commerce-settings.php:162
|
5211 |
msgid "Success page"
|
5212 |
msgstr ""
|
5213 |
|
5214 |
#. Translators: %s: The [shortcode] for the success page.
|
5215 |
-
#: src/Tickets/Commerce/Settings.php:
|
5216 |
msgid ""
|
5217 |
"After a successful order, users will be redirected to this page. Use the %s "
|
5218 |
"shortcode to display the order confirmation to the user in the page content."
|
5219 |
msgstr ""
|
5220 |
|
5221 |
-
#: src/Tickets/Commerce/Settings.php:
|
5222 |
#: src/admin-views/tribe-commerce-settings.php:176
|
5223 |
msgid "Confirmation email sender address"
|
5224 |
msgstr ""
|
5225 |
|
5226 |
#. Translators: %s: The word "tickets" in lowercase.
|
5227 |
-
#: src/Tickets/Commerce/Settings.php:
|
5228 |
msgctxt "tickets fields settings confirmation email"
|
5229 |
msgid ""
|
5230 |
"Email address that %s customers will receive confirmation from. Leave empty "
|
5231 |
"to use the default WordPress site email address."
|
5232 |
msgstr ""
|
5233 |
|
5234 |
-
#: src/Tickets/Commerce/Settings.php:
|
5235 |
#: src/admin-views/tribe-commerce-settings.php:185
|
5236 |
msgid "Confirmation email sender name"
|
5237 |
msgstr ""
|
5238 |
|
5239 |
#. Translators: %s: The word "ticket" in lowercase.
|
5240 |
-
#: src/Tickets/Commerce/Settings.php:
|
5241 |
#: src/admin-views/tribe-commerce-settings.php:186
|
5242 |
msgctxt "tickets fields settings paypal email sender"
|
5243 |
msgid ""
|
@@ -5245,13 +5285,13 @@ msgid ""
|
|
5245 |
"purchase."
|
5246 |
msgstr ""
|
5247 |
|
5248 |
-
#: src/Tickets/Commerce/Settings.php:
|
5249 |
#: src/admin-views/tribe-commerce-settings.php:194
|
5250 |
msgid "Confirmation email subject"
|
5251 |
msgstr ""
|
5252 |
|
5253 |
#. Translators: %s: The word "ticket" in lowercase.
|
5254 |
-
#: src/Tickets/Commerce/Settings.php:
|
5255 |
#: src/admin-views/tribe-commerce-settings.php:195
|
5256 |
msgctxt "tickets fields settings paypal email subject"
|
5257 |
msgid ""
|
@@ -5260,17 +5300,17 @@ msgid ""
|
|
5260 |
msgstr ""
|
5261 |
|
5262 |
#. Translators: %s: The word "tickets" in lowercase.
|
5263 |
-
#: src/Tickets/Commerce/Settings.php:
|
5264 |
#: src/admin-views/tribe-commerce-settings.php:197
|
5265 |
msgctxt "tickets fields settings paypal email subject"
|
5266 |
msgid "You have %s!"
|
5267 |
msgstr ""
|
5268 |
|
5269 |
-
#: src/Tickets/Commerce/Settings.php:
|
5270 |
msgid "Payment Gateways"
|
5271 |
msgstr ""
|
5272 |
|
5273 |
-
#: src/Tickets/Commerce/Settings.php:
|
5274 |
#: src/admin-views/settings/featured/link.php:33
|
5275 |
msgid "Learn more about configuring payment options with Tickets Commerce"
|
5276 |
msgstr ""
|
@@ -5496,6 +5536,10 @@ msgstr ""
|
|
5496 |
msgid "U.S. Dollar (USD)"
|
5497 |
msgstr ""
|
5498 |
|
|
|
|
|
|
|
|
|
5499 |
#: src/Tribe/Abstract_Attendance_Totals.php:65
|
5500 |
msgctxt "total sold tooltip"
|
5501 |
msgid "Includes all ticketed attendees regardless of order status."
|
@@ -7048,9 +7092,51 @@ msgid "An attendee with the specified ID does not exist."
|
|
7048 |
msgstr ""
|
7049 |
|
7050 |
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:71
|
|
|
7051 |
msgid "The attendee post ID"
|
7052 |
msgstr ""
|
7053 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7054 |
#: src/Tribe/REST/V1/Endpoints/Single_Ticket.php:16
|
7055 |
msgid "Returns a single ticket data"
|
7056 |
msgstr ""
|
@@ -7462,8 +7548,8 @@ msgstr ""
|
|
7462 |
msgid "Invalid ticket capacity data."
|
7463 |
msgstr ""
|
7464 |
|
7465 |
-
#: src/Tribe/Tickets_View.php:845 src/views/blocks/attendees/view-link.php:
|
7466 |
-
#: src/views/tickets/view-link.php:
|
7467 |
msgctxt "separator if there are both RSVPs and Tickets"
|
7468 |
msgid " and "
|
7469 |
msgstr ""
|
@@ -9123,39 +9209,39 @@ msgid_plural "%d people are attending %s"
|
|
9123 |
msgstr[0] ""
|
9124 |
msgstr[1] ""
|
9125 |
|
9126 |
-
#: src/views/blocks/attendees/view-link.php:
|
9127 |
#: src/views/tickets/orders-pp-tickets.php:30
|
9128 |
#: src/views/tickets/orders-rsvp.php:28
|
9129 |
#: src/views/tickets/orders-tc-tickets.php:22 src/views/tickets/orders.php:95
|
9130 |
-
#: src/views/tickets/view-link.php:
|
9131 |
msgctxt "fallback post type singular name"
|
9132 |
msgid "Post"
|
9133 |
msgstr ""
|
9134 |
|
9135 |
#. Translators: 1: the number one, 2: singular RSVP label.
|
9136 |
-
#: src/views/blocks/attendees/view-link.php:
|
9137 |
-
#: src/views/tickets/view-link.php:
|
9138 |
msgctxt "RSVP count singular"
|
9139 |
msgid "%1$d %2$s"
|
9140 |
msgstr ""
|
9141 |
|
9142 |
#. Translators: 1: the plural number of RSVPs, 2: plural RSVP label.
|
9143 |
-
#: src/views/blocks/attendees/view-link.php:
|
9144 |
-
#: src/views/tickets/view-link.php:
|
9145 |
msgctxt "RSVP count plural"
|
9146 |
msgid "%1$d %2$s"
|
9147 |
msgstr ""
|
9148 |
|
9149 |
#. Translators: 1: the number one, 2: singular Ticket label.
|
9150 |
-
#: src/views/blocks/attendees/view-link.php:
|
9151 |
-
#: src/views/tickets/view-link.php:
|
9152 |
msgctxt "Ticket count singular"
|
9153 |
msgid "%1$d %2$s"
|
9154 |
msgstr ""
|
9155 |
|
9156 |
#. Translators: 1: the plural number of Tickets, 2: plural Ticket label.
|
9157 |
-
#: src/views/blocks/attendees/view-link.php:
|
9158 |
-
#: src/views/tickets/view-link.php:
|
9159 |
msgctxt "Ticket count plural"
|
9160 |
msgid "%1$d %2$s"
|
9161 |
msgstr ""
|
@@ -9164,15 +9250,15 @@ msgstr ""
|
|
9164 |
#. text, 2: post type label
|
9165 |
#. Translators: 1: number of RSVPs and/or Tickets with accompanying ticket type
|
9166 |
#. text, 2: post type label.
|
9167 |
-
#: src/views/blocks/attendees/view-link.php:
|
9168 |
-
#: src/views/tickets/view-link.php:
|
9169 |
msgid "You have %1s for this %2s."
|
9170 |
msgstr ""
|
9171 |
|
9172 |
#. Translators: %s: The name(s) of the type(s) of ticket(s) the specified user
|
9173 |
#. (optional) has for the specified event.
|
9174 |
-
#: src/views/blocks/attendees/view-link.php:
|
9175 |
-
#: src/views/tickets/view-link.php:
|
9176 |
msgid "View your %s"
|
9177 |
msgstr ""
|
9178 |
|
2 |
# This file is distributed under the same license as the Event Tickets package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Event Tickets 5.3.2\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/event-tickets\n"
|
7 |
+
"POT-Creation-Date: 2022-03-30 13:23:53+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2022-03-30 13:23\n"
|
12 |
"Last-Translator: \n"
|
13 |
"Language-Team: \n"
|
14 |
|
15 |
+
#. #-#-#-#-# event-tickets.pot (Event Tickets 5.3.2) #-#-#-#-#
|
16 |
#. Plugin Name of the plugin/theme
|
17 |
#: event-tickets.php:61 src/Tribe/Admin/Notices.php:92 src/Tribe/Main.php:692
|
18 |
#: src/Tribe/Privacy.php:59 src/admin-views/admin-welcome-message.php:58
|
31 |
msgid "Please provide a valid purchaser email."
|
32 |
msgstr ""
|
33 |
|
34 |
+
#: src/Tickets/Commerce/Admin/Notices.php:84
|
35 |
+
#: src/Tickets/Commerce/Admin/Notices.php:129
|
36 |
msgid "Learn More"
|
37 |
msgstr ""
|
38 |
|
39 |
+
#: src/Tickets/Commerce/Admin/Notices.php:86
|
40 |
msgid "Set up your checkout page"
|
41 |
msgstr ""
|
42 |
|
43 |
#. translators: %1$s: Link to knowledgebase article.
|
44 |
+
#: src/Tickets/Commerce/Admin/Notices.php:89
|
45 |
msgid ""
|
46 |
"In order to start selling with Tickets Commerce, you'll need to set up your "
|
47 |
"checkout page. Please configure the setting on Settings > Payments and "
|
48 |
"confirm that the page you have selected has the proper shortcode. %1$s"
|
49 |
msgstr ""
|
50 |
|
51 |
+
#: src/Tickets/Commerce/Admin/Notices.php:131
|
52 |
msgid "Set up your order success page"
|
53 |
msgstr ""
|
54 |
|
55 |
#. translators: %1$s: Link to knowledgebase article.
|
56 |
+
#: src/Tickets/Commerce/Admin/Notices.php:134
|
57 |
msgid ""
|
58 |
"In order to start selling with Tickets Commerce, you'll need to set up your "
|
59 |
"order success page. Please configure the setting on Settings > Payments and "
|
305 |
msgid "Tickets Commerce Checkout Page"
|
306 |
msgstr ""
|
307 |
|
308 |
+
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:175
|
309 |
#: src/views/v2/commerce/checkout.php:55
|
310 |
msgid "Something went wrong!"
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:176
|
314 |
msgid "Unexpected response recieved."
|
315 |
msgstr ""
|
316 |
|
317 |
+
#: src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php:272
|
318 |
msgid "Enabled for Checkout"
|
319 |
msgstr ""
|
320 |
|
374 |
"again once you are in live mode."
|
375 |
msgstr ""
|
376 |
|
377 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:110
|
378 |
msgid "E.g.: 123"
|
379 |
msgstr ""
|
380 |
|
381 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:111
|
382 |
msgid "E.g.: 03/26"
|
383 |
msgstr ""
|
384 |
|
385 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:112
|
386 |
msgid "E.g.: 4111 1111 1111 1111"
|
387 |
msgstr ""
|
388 |
|
389 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Assets.php:113
|
390 |
msgid "E.g.: 01020"
|
391 |
msgstr ""
|
392 |
|
412 |
msgid "Unexpected PayPal response when updating webhook"
|
413 |
msgstr ""
|
414 |
|
415 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:66
|
416 |
msgid "PayPal"
|
417 |
msgstr ""
|
418 |
|
419 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:76
|
420 |
msgid "PayPal is now connected."
|
421 |
msgstr ""
|
422 |
|
423 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:81
|
424 |
msgid "Failed to disconnect PayPal account."
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:86
|
428 |
msgid "Disconnected PayPal account."
|
429 |
msgstr ""
|
430 |
|
431 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:91
|
432 |
msgid "Failed to refresh PayPal access token."
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:96
|
436 |
msgid "PayPal access token was refreshed successfully."
|
437 |
msgstr ""
|
438 |
|
439 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:101
|
440 |
msgid "Failed to refresh PayPal user info."
|
441 |
msgstr ""
|
442 |
|
443 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:106
|
444 |
msgid "PayPal user info was refreshed successfully."
|
445 |
msgstr ""
|
446 |
|
447 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:111
|
448 |
msgid "Failed to refresh PayPal webhooks."
|
449 |
msgstr ""
|
450 |
|
451 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:116
|
452 |
msgid "PayPal webhooks refreshed successfully."
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:121
|
456 |
msgid ""
|
457 |
"A valid SSL certificate is required to set up your PayPal account and accept "
|
458 |
"payments"
|
459 |
msgstr ""
|
460 |
|
461 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:140
|
462 |
msgid "Enable payments through PayPal, Venmo, and credit card."
|
463 |
msgstr ""
|
464 |
|
465 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:211
|
466 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:189
|
467 |
+
msgid "here"
|
468 |
+
msgstr ""
|
469 |
+
|
470 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:213
|
471 |
+
msgid "PayPal doesn't support your selected currency"
|
472 |
+
msgstr ""
|
473 |
+
|
474 |
+
#. Translators: %1$s: Currency Name. %2$s: Link to gateway provider's currency
|
475 |
+
#. documentation.
|
476 |
+
#: src/Tickets/Commerce/Gateways/PayPal/Gateway.php:216
|
477 |
+
msgid ""
|
478 |
+
"Unfortunately PayPal doesn't support payments in %1$s. Please try using a "
|
479 |
+
"different gateway or adjusting your Tickets Commerce currency setting. You "
|
480 |
+
"can see a list of supported currencies %2$s."
|
481 |
+
msgstr ""
|
482 |
+
|
483 |
#: src/Tickets/Commerce/Gateways/PayPal/Location/Country.php:95
|
484 |
msgid "United States"
|
485 |
msgstr ""
|
4669 |
msgid "Change %1$s in PayPal from webhook: %2$s"
|
4670 |
msgstr ""
|
4671 |
|
4672 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:69
|
4673 |
msgid "Stripe"
|
4674 |
msgstr ""
|
4675 |
|
4676 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:79
|
4677 |
msgid "Stripe wasn't able to complete your connection request. Try again."
|
4678 |
msgstr ""
|
4679 |
|
4680 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:84
|
4681 |
msgid ""
|
4682 |
"Stripe signup was successful but the authentication tokens could not be "
|
4683 |
"retrieved. Try refreshing the tokens."
|
4684 |
msgstr ""
|
4685 |
|
4686 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:89
|
4687 |
msgid "Disconnecting from Stripe failed. Please try again."
|
4688 |
msgstr ""
|
4689 |
|
4690 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:99
|
4691 |
msgid ""
|
4692 |
"Due to Regulatory Issues between Stripe and the country listed in your "
|
4693 |
"Stripe account, the free version of Event Tickets cannot accept connections "
|
4697 |
|
4698 |
#. Translators: %1$s is the opening <a> tag for the Payments Tab page link.
|
4699 |
#. %2$s is the closing <a> tag.
|
4700 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:106
|
4701 |
msgid ""
|
4702 |
"Your stripe account was disconnected from the Stripe dashboard. If you "
|
4703 |
"believe this is an error, you can re-connect in the %1$sPayments Tab of the "
|
4704 |
"Settings Page%2$s."
|
4705 |
msgstr ""
|
4706 |
|
4707 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:128
|
4708 |
msgid ""
|
4709 |
"Enable credit card payments, Afterpay, AliPay, Giropay, Klarna and more."
|
4710 |
msgstr ""
|
4711 |
|
4712 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:191
|
4713 |
+
msgid "Stripe doesn't support your selected currency"
|
4714 |
+
msgstr ""
|
4715 |
+
|
4716 |
+
#. Translators: %1$s: Currency Name. %2$s: Link to gateway provider's currency
|
4717 |
+
#. documentation.
|
4718 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Gateway.php:194
|
4719 |
+
msgid ""
|
4720 |
+
"Unfortunately, Stripe doesn't support payments in %1$s. Please try using a "
|
4721 |
+
"different gateway or adjusting your Tickets Commerce currency setting. You "
|
4722 |
+
"can see a list of supported currencies %2$s."
|
4723 |
+
msgstr ""
|
4724 |
+
|
4725 |
#. Translators: %s is the html-formatted response from Stripe servers
|
4726 |
#. containing the error messages.
|
4727 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php:93
|
4728 |
msgid ""
|
4729 |
"Stripe reports that it is unable to process charges with the selected "
|
4730 |
"Payment Methods. Usually this means that one of the methods selected is not "
|
4733 |
"Stripe support, then try again: <div class=\"stripe-errors\">%s</div>"
|
4734 |
msgstr ""
|
4735 |
|
4736 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php:293
|
4737 |
msgid "Payment methods accepted cannot be empty"
|
4738 |
msgstr ""
|
4739 |
|
4911 |
msgid "Account deauthorized is not the same as account connected."
|
4912 |
msgstr ""
|
4913 |
|
4914 |
+
#. Translators: %1$s is the event id and %2$s is the event type name.
|
4915 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php:35
|
4916 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:42
|
4917 |
+
msgid ""
|
4918 |
+
"Event %1$s was received and will not be handled because the Payment Intent "
|
4919 |
+
"%2$s does not refer to an Event Tickets transaction."
|
4920 |
+
msgstr ""
|
4921 |
+
|
4922 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php:46
|
4923 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:53
|
4924 |
+
msgid "Payment Intent Test Successful"
|
4925 |
+
msgstr ""
|
4926 |
+
|
4927 |
#. Translators: %s is the payment intent id.
|
4928 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php:54
|
4929 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:61
|
4930 |
msgid "Payment Intent %s does not correspond to a known order."
|
4931 |
msgstr ""
|
4932 |
|
4965 |
msgid "Event was received but events of type %1$s are not currently handled."
|
4966 |
msgstr ""
|
4967 |
|
|
|
|
|
|
|
|
|
4968 |
#. Translators: %s is the payment intent id
|
4969 |
+
#: src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php:71
|
4970 |
msgid ""
|
4971 |
"Payment Intent %s does not require an update or is a duplicate of a past "
|
4972 |
"event."
|
5175 |
msgid "%s - Tickets Commerce Orders"
|
5176 |
msgstr ""
|
5177 |
|
5178 |
+
#: src/Tickets/Commerce/Settings.php:182
|
5179 |
msgid "Tickets Commerce Test Mode Active"
|
5180 |
msgstr ""
|
5181 |
|
5182 |
+
#: src/Tickets/Commerce/Settings.php:222
|
5183 |
msgid "-- No page set --"
|
5184 |
msgstr ""
|
5185 |
|
5186 |
+
#: src/Tickets/Commerce/Settings.php:234
|
5187 |
msgid "Tickets Commerce Settings"
|
5188 |
msgstr ""
|
5189 |
|
5190 |
+
#: src/Tickets/Commerce/Settings.php:238
|
5191 |
msgid "Enable Test Mode"
|
5192 |
msgstr ""
|
5193 |
|
5194 |
+
#: src/Tickets/Commerce/Settings.php:239
|
5195 |
msgid ""
|
5196 |
"Enables Test mode for testing payments. Any payments made will be done on "
|
5197 |
"\"sandbox\" accounts."
|
5198 |
msgstr ""
|
5199 |
|
5200 |
+
#: src/Tickets/Commerce/Settings.php:245
|
5201 |
#: src/admin-views/tribe-commerce-settings.php:136
|
5202 |
msgid "Currency Code"
|
5203 |
msgstr ""
|
5204 |
|
5205 |
+
#: src/Tickets/Commerce/Settings.php:246
|
5206 |
msgid "The currency that will be used for Tickets Commerce transactions."
|
5207 |
msgstr ""
|
5208 |
|
5209 |
+
#: src/Tickets/Commerce/Settings.php:253
|
5210 |
#: src/admin-views/tribe-commerce-settings.php:144
|
5211 |
msgid "Stock Handling"
|
5212 |
msgstr ""
|
5213 |
|
5214 |
#. Translators: %s: The word "ticket" in lowercase.
|
5215 |
+
#: src/Tickets/Commerce/Settings.php:257
|
5216 |
msgctxt "tickets fields settings paypal stock handling"
|
5217 |
msgid ""
|
5218 |
"When a customer purchases a %s, the payment gateway might flag the order as "
|
5222 |
|
5223 |
#. Translators: %1$s: The word "ticket" in lowercase. %2$s: `<strong>` opening
|
5224 |
#. tag. %3$s: `</strong>` closing tag.
|
5225 |
+
#: src/Tickets/Commerce/Settings.php:266
|
5226 |
msgid ""
|
5227 |
"Decrease available %1$s stock as soon as a %2$sPending%3$s order is created."
|
5228 |
msgstr ""
|
5229 |
|
5230 |
#. Translators: %1$s: The word "ticket" in lowercase. %2$s: `<strong>` opening
|
5231 |
#. tag. %3$s: `</strong>` closing tag.
|
5232 |
+
#: src/Tickets/Commerce/Settings.php:273
|
5233 |
msgid ""
|
5234 |
"Only decrease available %1$s stock if an order is confirmed as %2$sCompleted"
|
5235 |
"%3$s by the payment gateway."
|
5236 |
msgstr ""
|
5237 |
|
5238 |
+
#: src/Tickets/Commerce/Settings.php:283
|
5239 |
msgid "Checkout page"
|
5240 |
msgstr ""
|
5241 |
|
5242 |
#. Translators: %s: The [shortcode] for the success page.
|
5243 |
+
#: src/Tickets/Commerce/Settings.php:287
|
5244 |
msgid ""
|
5245 |
"This is the page where customers go to complete their purchase. Use the %s "
|
5246 |
"shortcode to display the checkout experience in the page content."
|
5247 |
msgstr ""
|
5248 |
|
5249 |
+
#: src/Tickets/Commerce/Settings.php:298
|
5250 |
#: src/admin-views/tribe-commerce-settings.php:162
|
5251 |
msgid "Success page"
|
5252 |
msgstr ""
|
5253 |
|
5254 |
#. Translators: %s: The [shortcode] for the success page.
|
5255 |
+
#: src/Tickets/Commerce/Settings.php:302
|
5256 |
msgid ""
|
5257 |
"After a successful order, users will be redirected to this page. Use the %s "
|
5258 |
"shortcode to display the order confirmation to the user in the page content."
|
5259 |
msgstr ""
|
5260 |
|
5261 |
+
#: src/Tickets/Commerce/Settings.php:313
|
5262 |
#: src/admin-views/tribe-commerce-settings.php:176
|
5263 |
msgid "Confirmation email sender address"
|
5264 |
msgstr ""
|
5265 |
|
5266 |
#. Translators: %s: The word "tickets" in lowercase.
|
5267 |
+
#: src/Tickets/Commerce/Settings.php:317
|
5268 |
msgctxt "tickets fields settings confirmation email"
|
5269 |
msgid ""
|
5270 |
"Email address that %s customers will receive confirmation from. Leave empty "
|
5271 |
"to use the default WordPress site email address."
|
5272 |
msgstr ""
|
5273 |
|
5274 |
+
#: src/Tickets/Commerce/Settings.php:328
|
5275 |
#: src/admin-views/tribe-commerce-settings.php:185
|
5276 |
msgid "Confirmation email sender name"
|
5277 |
msgstr ""
|
5278 |
|
5279 |
#. Translators: %s: The word "ticket" in lowercase.
|
5280 |
+
#: src/Tickets/Commerce/Settings.php:332
|
5281 |
#: src/admin-views/tribe-commerce-settings.php:186
|
5282 |
msgctxt "tickets fields settings paypal email sender"
|
5283 |
msgid ""
|
5285 |
"purchase."
|
5286 |
msgstr ""
|
5287 |
|
5288 |
+
#: src/Tickets/Commerce/Settings.php:343
|
5289 |
#: src/admin-views/tribe-commerce-settings.php:194
|
5290 |
msgid "Confirmation email subject"
|
5291 |
msgstr ""
|
5292 |
|
5293 |
#. Translators: %s: The word "ticket" in lowercase.
|
5294 |
+
#: src/Tickets/Commerce/Settings.php:347
|
5295 |
#: src/admin-views/tribe-commerce-settings.php:195
|
5296 |
msgctxt "tickets fields settings paypal email subject"
|
5297 |
msgid ""
|
5300 |
msgstr ""
|
5301 |
|
5302 |
#. Translators: %s: The word "tickets" in lowercase.
|
5303 |
+
#: src/Tickets/Commerce/Settings.php:355
|
5304 |
#: src/admin-views/tribe-commerce-settings.php:197
|
5305 |
msgctxt "tickets fields settings paypal email subject"
|
5306 |
msgid "You have %s!"
|
5307 |
msgstr ""
|
5308 |
|
5309 |
+
#: src/Tickets/Commerce/Settings.php:370
|
5310 |
msgid "Payment Gateways"
|
5311 |
msgstr ""
|
5312 |
|
5313 |
+
#: src/Tickets/Commerce/Settings.php:382
|
5314 |
#: src/admin-views/settings/featured/link.php:33
|
5315 |
msgid "Learn more about configuring payment options with Tickets Commerce"
|
5316 |
msgstr ""
|
5536 |
msgid "U.S. Dollar (USD)"
|
5537 |
msgstr ""
|
5538 |
|
5539 |
+
#: src/Tickets/Commerce/Utils/Currency.php:545
|
5540 |
+
msgid "South African Rand (ZAR)"
|
5541 |
+
msgstr ""
|
5542 |
+
|
5543 |
#: src/Tribe/Abstract_Attendance_Totals.php:65
|
5544 |
msgctxt "total sold tooltip"
|
5545 |
msgid "Includes all ticketed attendees regardless of order status."
|
7092 |
msgstr ""
|
7093 |
|
7094 |
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:71
|
7095 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:217
|
7096 |
msgid "The attendee post ID"
|
7097 |
msgstr ""
|
7098 |
|
7099 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:117
|
7100 |
+
msgid "Something went wrong! Attendee creation failed."
|
7101 |
+
msgstr ""
|
7102 |
+
|
7103 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:141
|
7104 |
+
msgid "The Ticket ID, where the attendee is registered."
|
7105 |
+
msgstr ""
|
7106 |
+
|
7107 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:146
|
7108 |
+
msgid "Full name of the attendee."
|
7109 |
+
msgstr ""
|
7110 |
+
|
7111 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:152
|
7112 |
+
msgid "Email of the attendeee."
|
7113 |
+
msgstr ""
|
7114 |
+
|
7115 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:157
|
7116 |
+
msgid "Order Status for the attendee."
|
7117 |
+
msgstr ""
|
7118 |
+
|
7119 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:194
|
7120 |
+
msgid "Something went wrong! Attendee update failed."
|
7121 |
+
msgstr ""
|
7122 |
+
|
7123 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:245
|
7124 |
+
msgid "Ticket Provider not found."
|
7125 |
+
msgstr ""
|
7126 |
+
|
7127 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:290
|
7128 |
+
msgid "Attendee ID is not valid."
|
7129 |
+
msgstr ""
|
7130 |
+
|
7131 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:296
|
7132 |
+
msgid "Attendee provider not found."
|
7133 |
+
msgstr ""
|
7134 |
+
|
7135 |
+
#. Translators: %s - List of valid statuses.
|
7136 |
+
#: src/Tribe/REST/V1/Endpoints/Single_Attendee.php:345
|
7137 |
+
msgid "Supported statuses for this attendee are: %s"
|
7138 |
+
msgstr ""
|
7139 |
+
|
7140 |
#: src/Tribe/REST/V1/Endpoints/Single_Ticket.php:16
|
7141 |
msgid "Returns a single ticket data"
|
7142 |
msgstr ""
|
7548 |
msgid "Invalid ticket capacity data."
|
7549 |
msgstr ""
|
7550 |
|
7551 |
+
#: src/Tribe/Tickets_View.php:845 src/views/blocks/attendees/view-link.php:73
|
7552 |
+
#: src/views/tickets/view-link.php:101
|
7553 |
msgctxt "separator if there are both RSVPs and Tickets"
|
7554 |
msgid " and "
|
7555 |
msgstr ""
|
9209 |
msgstr[0] ""
|
9210 |
msgstr[1] ""
|
9211 |
|
9212 |
+
#: src/views/blocks/attendees/view-link.php:45
|
9213 |
#: src/views/tickets/orders-pp-tickets.php:30
|
9214 |
#: src/views/tickets/orders-rsvp.php:28
|
9215 |
#: src/views/tickets/orders-tc-tickets.php:22 src/views/tickets/orders.php:95
|
9216 |
+
#: src/views/tickets/view-link.php:73
|
9217 |
msgctxt "fallback post type singular name"
|
9218 |
msgid "Post"
|
9219 |
msgstr ""
|
9220 |
|
9221 |
#. Translators: 1: the number one, 2: singular RSVP label.
|
9222 |
+
#: src/views/blocks/attendees/view-link.php:52
|
9223 |
+
#: src/views/tickets/view-link.php:80
|
9224 |
msgctxt "RSVP count singular"
|
9225 |
msgid "%1$d %2$s"
|
9226 |
msgstr ""
|
9227 |
|
9228 |
#. Translators: 1: the plural number of RSVPs, 2: plural RSVP label.
|
9229 |
+
#: src/views/blocks/attendees/view-link.php:55
|
9230 |
+
#: src/views/tickets/view-link.php:83
|
9231 |
msgctxt "RSVP count plural"
|
9232 |
msgid "%1$d %2$s"
|
9233 |
msgstr ""
|
9234 |
|
9235 |
#. Translators: 1: the number one, 2: singular Ticket label.
|
9236 |
+
#: src/views/blocks/attendees/view-link.php:60
|
9237 |
+
#: src/views/tickets/view-link.php:88
|
9238 |
msgctxt "Ticket count singular"
|
9239 |
msgid "%1$d %2$s"
|
9240 |
msgstr ""
|
9241 |
|
9242 |
#. Translators: 1: the plural number of Tickets, 2: plural Ticket label.
|
9243 |
+
#: src/views/blocks/attendees/view-link.php:63
|
9244 |
+
#: src/views/tickets/view-link.php:91
|
9245 |
msgctxt "Ticket count plural"
|
9246 |
msgid "%1$d %2$s"
|
9247 |
msgstr ""
|
9250 |
#. text, 2: post type label
|
9251 |
#. Translators: 1: number of RSVPs and/or Tickets with accompanying ticket type
|
9252 |
#. text, 2: post type label.
|
9253 |
+
#: src/views/blocks/attendees/view-link.php:73
|
9254 |
+
#: src/views/tickets/view-link.php:101
|
9255 |
msgid "You have %1s for this %2s."
|
9256 |
msgstr ""
|
9257 |
|
9258 |
#. Translators: %s: The name(s) of the type(s) of ticket(s) the specified user
|
9259 |
#. (optional) has for the specified event.
|
9260 |
+
#: src/views/blocks/attendees/view-link.php:78
|
9261 |
+
#: src/views/tickets/view-link.php:109
|
9262 |
msgid "View your %s"
|
9263 |
msgstr ""
|
9264 |
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
=== Event Tickets and Registration ===
|
2 |
|
3 |
Contributors: theeventscalendar, brianjessee, camwynsp, aguseo, bordoni, borkweb, GeoffBel, jentheo, leahkoerper, lucatume, neillmcshea, vicskf, zbtirrell, juanfra, moraleida.me
|
4 |
-
Tags: tickets, registration,
|
5 |
Requires at least: 5.6
|
6 |
Tested up to: 5.9.2
|
7 |
-
Stable tag: 5.3.
|
8 |
Requires PHP: 7.1
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
@@ -23,11 +23,7 @@ https://vimeo.com/480516958
|
|
23 |
|
24 |
Easily connect to PayPal without any complicated API keys or code through our quick connection wizard in your WordPress backend. With just a few clicks, you can begin selling tickets and enable payment through PayPal, Venmo, and credit cards.
|
25 |
|
26 |
-
Even more, you can [upgrade to Event Tickets Plus](https://
|
27 |
-
|
28 |
-
Easily connect to PayPal without any complicated API keys or code through our quick connection wizard in your WordPress backend. With just a few clicks, you can begin selling tickets and enable payment through PayPal, Venmo, and credit cards.
|
29 |
-
|
30 |
-
Even more, you can [upgrade to Event Tickets Plus](https://theeventscalendar.com/products/wordpress-event-tickets/?utm_source=wordpress&utm_medium=referral&utm_campaign=event-tickets-page&utm_content=) and unlock additional payment methods including digital wallets like ApplePay and Google Pay through Stripe, or use WooCommerce to take advantage of popular payment solutions including Braintree, Square, AmazonPay, and more.
|
31 |
|
32 |
= 🎟️ Ticketing and Registration for WordPress =
|
33 |
|
@@ -53,7 +49,7 @@ Whether your vision is big or small, you're in good company. Thousands of small
|
|
53 |
✔️ Generate sales and attendee reports
|
54 |
✔️ Ticket stock countdown
|
55 |
✔️ Automatic ticket confirmation emails
|
56 |
-
✔️ Works out of the box with [The Events Calendar](https://
|
57 |
✔️ Responsive design works on all devices
|
58 |
✔️ Tested on the major theme frameworks such as Avada, Genesis, Kadence, Thesis and many more.
|
59 |
✔️ Internationalized & translated
|
@@ -69,12 +65,12 @@ All of our documentation can be found in [our knowledgebase](https://evnt.is/eu)
|
|
69 |
|
70 |
Additional helpful links:
|
71 |
|
72 |
-
* [Guide: Getting Started with Event Tickets](https://
|
73 |
* [Installing Event Tickets Video](https://evnt.is/1ao9)
|
74 |
-
* [Using Tickets Commerce Video](https://
|
75 |
* [Do I need Event Tickets or Event Tickets Plus?](https://evnt.is/1aoa)
|
76 |
* [How to Make Money with Virtual Events](https://evnt.is/1aob)
|
77 |
-
* [Implementing Stripe on Event Tickets and Event Tickets Plus](https://
|
78 |
|
79 |
If you have any questions about this plugin, you can post a thread in the WordPress.org forum. Please search existing threads before starting a new on
|
80 |
|
@@ -82,8 +78,8 @@ If you have any questions about this plugin, you can post a thread in the WordPr
|
|
82 |
|
83 |
Take your calendar to the next level by pairing it with our plugins for ticketing, crowdsourcing, email marketing, and more. Learn more about all our products on our website.
|
84 |
Our Free Plugins:
|
85 |
-
📅 [The Events Calendar](https://
|
86 |
-
📐 [Advanced Post Manager](https://
|
87 |
|
88 |
Our Premium Plugins and Services:
|
89 |
|
@@ -104,17 +100,17 @@ If you aren't familiar with Event Tickets, check out our [Getting Started Guide]
|
|
104 |
Ready to dig deeper? Check out these resources:
|
105 |
|
106 |
* [Tutorials](https://evnt.is/2u)
|
107 |
-
* [Known Issues](https://
|
108 |
* [Help Videos](https://evnt.is/youtube)
|
109 |
* [Release Notes](https://evnt.is/2v)
|
110 |
|
111 |
-
We check in on the [Event Tickets forum here on WordPress.org](https://
|
112 |
|
113 |
Still have a question? Shoot us an email at support@theeventscalendar.com.
|
114 |
|
115 |
== Translate ==
|
116 |
|
117 |
-
Event Tickets is translated into multiple languages, including German, Danish, and Dutch. Help localize Event Tickets even further by adding your locale – visit [translate.wordpress.org](https://
|
118 |
|
119 |
== Installation ==
|
120 |
|
@@ -142,13 +138,13 @@ Event Tickets is translated into multiple languages, including German, Danish, a
|
|
142 |
|
143 |
First, make sure that you're running the latest version of Event Tickets. If you've got any other add-ons, make sure those are current and running the latest code as well. Also be sure to check our [knowledgebase](https://evnt.is/1aoc).
|
144 |
|
145 |
-
The most common issues we see are either plugin or theme conflicts. You can test if a plugin or theme is conflicting by manually deactivating other plugins until just Event Tickets is running on your site. If the issue persists, revert to the default [Twenty Twenty](https://
|
146 |
|
147 |
Note that we aren't going to say “tough luck” if you identify a plugin/theme conflict. While we can't guarantee 100% integration with any plugin or theme out there, we will do our best (and reach out the plugin/theme author as needed) to figure out a solution that benefits everyone.
|
148 |
|
149 |
= I'm still stuck. Where do I go to file a bug or ask a question? =
|
150 |
|
151 |
-
Free plugin users can post in the [Event Tickets support forum on WordPress.org](https://
|
152 |
|
153 |
If you're already an [Event Tickets Plus](https://evnt.is/18wk) subscriber, you're entitled to our actively-monitored [Premium Support](https://evnt.is/1aoe) on our website. Generally, except in times of increased support loads, we reply to all premium support tickets within 24 hours during the business week.
|
154 |
|
@@ -184,7 +180,7 @@ The following add-ons are available for The Events Calendar:
|
|
184 |
|
185 |
= I have a feature idea. What's the best way to tell you about it? =
|
186 |
|
187 |
-
We've got a [LoopedIn](https://
|
188 |
|
189 |
= I've still got questions. Where can I find answers? =
|
190 |
|
@@ -192,6 +188,27 @@ Check out our extensive [knowledgebase](https://evnt.is/18wm) for articles on us
|
|
192 |
|
193 |
== Changelog ==
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
= [5.3.1] 2022-03-15 =
|
196 |
|
197 |
* Fix - Fixed a warning message when creating an event via Community Events. [CT-51]
|
@@ -248,4 +265,4 @@ Check out our extensive [knowledgebase](https://evnt.is/18wm) for articles on us
|
|
248 |
* Fix - Fixed toggling of shared capacity data for tickets. [ETP-497]
|
249 |
* Language - 7 new strings added, 99 updated, 0 fuzzied, and 0 obsoleted
|
250 |
|
251 |
-
[See changelog for all versions](https://
|
1 |
=== Event Tickets and Registration ===
|
2 |
|
3 |
Contributors: theeventscalendar, brianjessee, camwynsp, aguseo, bordoni, borkweb, GeoffBel, jentheo, leahkoerper, lucatume, neillmcshea, vicskf, zbtirrell, juanfra, moraleida.me
|
4 |
+
Tags: tickets, registration, event registration, RSVP, ticket sales, attendee management
|
5 |
Requires at least: 5.6
|
6 |
Tested up to: 5.9.2
|
7 |
+
Stable tag: 5.3.2
|
8 |
Requires PHP: 7.1
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
23 |
|
24 |
Easily connect to PayPal without any complicated API keys or code through our quick connection wizard in your WordPress backend. With just a few clicks, you can begin selling tickets and enable payment through PayPal, Venmo, and credit cards.
|
25 |
|
26 |
+
Even more, you can [upgrade to Event Tickets Plus](https://evnt.is/1b54) and unlock additional payment methods including digital wallets like ApplePay and Google Pay through Stripe, or use WooCommerce to take advantage of popular payment solutions including Braintree, Square, AmazonPay, and more.
|
|
|
|
|
|
|
|
|
27 |
|
28 |
= 🎟️ Ticketing and Registration for WordPress =
|
29 |
|
49 |
✔️ Generate sales and attendee reports
|
50 |
✔️ Ticket stock countdown
|
51 |
✔️ Automatic ticket confirmation emails
|
52 |
+
✔️ Works out of the box with [The Events Calendar](https://evnt.is/18yi)
|
53 |
✔️ Responsive design works on all devices
|
54 |
✔️ Tested on the major theme frameworks such as Avada, Genesis, Kadence, Thesis and many more.
|
55 |
✔️ Internationalized & translated
|
65 |
|
66 |
Additional helpful links:
|
67 |
|
68 |
+
* [Guide: Getting Started with Event Tickets](https://evnt.is/1aot)
|
69 |
* [Installing Event Tickets Video](https://evnt.is/1ao9)
|
70 |
+
* [Using Tickets Commerce Video](https://evnt.is/1b5f)
|
71 |
* [Do I need Event Tickets or Event Tickets Plus?](https://evnt.is/1aoa)
|
72 |
* [How to Make Money with Virtual Events](https://evnt.is/1aob)
|
73 |
+
* [Implementing Stripe on Event Tickets and Event Tickets Plus](https://evnt.is/1b5g)
|
74 |
|
75 |
If you have any questions about this plugin, you can post a thread in the WordPress.org forum. Please search existing threads before starting a new on
|
76 |
|
78 |
|
79 |
Take your calendar to the next level by pairing it with our plugins for ticketing, crowdsourcing, email marketing, and more. Learn more about all our products on our website.
|
80 |
Our Free Plugins:
|
81 |
+
📅 [The Events Calendar](https://evnt.is/18yi)
|
82 |
+
📐 [Advanced Post Manager](https://evnt.is/18e6)
|
83 |
|
84 |
Our Premium Plugins and Services:
|
85 |
|
100 |
Ready to dig deeper? Check out these resources:
|
101 |
|
102 |
* [Tutorials](https://evnt.is/2u)
|
103 |
+
* [Known Issues](https://evnt.is/1b5h)
|
104 |
* [Help Videos](https://evnt.is/youtube)
|
105 |
* [Release Notes](https://evnt.is/2v)
|
106 |
|
107 |
+
We check in on the [Event Tickets forum here on WordPress.org](https://evnt.is/1ac3) about once a week to help users with basic troubleshooting and identifying bugs. If you're looking for premium, personalized support, consider upgrading to [Event Tickets Plus](https://evnt.is/18wk).
|
108 |
|
109 |
Still have a question? Shoot us an email at support@theeventscalendar.com.
|
110 |
|
111 |
== Translate ==
|
112 |
|
113 |
+
Event Tickets is translated into multiple languages, including German, Danish, and Dutch. Help localize Event Tickets even further by adding your locale – visit [translate.wordpress.org](https://evnt.is/1b5i).
|
114 |
|
115 |
== Installation ==
|
116 |
|
138 |
|
139 |
First, make sure that you're running the latest version of Event Tickets. If you've got any other add-ons, make sure those are current and running the latest code as well. Also be sure to check our [knowledgebase](https://evnt.is/1aoc).
|
140 |
|
141 |
+
The most common issues we see are either plugin or theme conflicts. You can test if a plugin or theme is conflicting by manually deactivating other plugins until just Event Tickets is running on your site. If the issue persists, revert to the default [Twenty Twenty](https://evnt.is/1b5j) theme. If the issue is resolved after deactivating a specific plugin or your theme, you'll know that is the source of the conflict.
|
142 |
|
143 |
Note that we aren't going to say “tough luck” if you identify a plugin/theme conflict. While we can't guarantee 100% integration with any plugin or theme out there, we will do our best (and reach out the plugin/theme author as needed) to figure out a solution that benefits everyone.
|
144 |
|
145 |
= I'm still stuck. Where do I go to file a bug or ask a question? =
|
146 |
|
147 |
+
Free plugin users can post in the [Event Tickets support forum on WordPress.org](https://evnt.is/1ac3). Our team reviews that forum weekly to look for bug reports.
|
148 |
|
149 |
If you're already an [Event Tickets Plus](https://evnt.is/18wk) subscriber, you're entitled to our actively-monitored [Premium Support](https://evnt.is/1aoe) on our website. Generally, except in times of increased support loads, we reply to all premium support tickets within 24 hours during the business week.
|
150 |
|
180 |
|
181 |
= I have a feature idea. What's the best way to tell you about it? =
|
182 |
|
183 |
+
We've got a [LoopedIn](https://evnt.is/ideas) page where we're actively watching for feature ideas from the community. Vote up existing feature requests or add your own, and help us shape the future of the products business in a way that best meets the community's needs.
|
184 |
|
185 |
= I've still got questions. Where can I find answers? =
|
186 |
|
188 |
|
189 |
== Changelog ==
|
190 |
|
191 |
+
= [5.3.2] 2022-04-05 =
|
192 |
+
|
193 |
+
* Feature - REST API endpoints added for creating and updating attendees. [ET-1346]
|
194 |
+
* Enhancement - Added a notice when an enabled Tickets Commerce gateway doesn't support it's selected currency. [ET-1392]
|
195 |
+
* Enhancement - Adding the South African Rand to list of supported currencies in Tickets Commerce. [ET-1438]
|
196 |
+
* Enhancement - Hide 'View My Tickets' link when showing tickets within the `[tribe_tickets]` shortcode. [ETP-775]
|
197 |
+
* Fix - Fixed Events Tickets App check-in for Tickets Commerce tickets. [ET-1436]
|
198 |
+
* Fix - Improved validation of Stripe webhook events to avoid handling events created by other apps. [ET-1474]
|
199 |
+
* Fix - Fixed Issue with Tickets Commerce Tickets not displaying in REST API. [ET-1458]
|
200 |
+
* Fix - Fixed Issue with Tickets Commerce Attendees not displaying in shortcodes. [ET-1461]
|
201 |
+
* Fix - Fixed Issue with Tickets Commerce Attendees not being synced with Promoter. [ET-1476]
|
202 |
+
* Fix - Fixed JS assets loading and causing errors on checkout page for Tickets Commerce. [ET-1426]
|
203 |
+
* Fix - Fixed WooCommerce currency settings not getting reflected on Event Cost Field . [ETP-783]
|
204 |
+
* Fix - Correct a misapplied Customizer color that breaks the loading "dot" animation. [ET-1437]
|
205 |
+
* Fix - Add Mexico to the list of countries ET cannot process fees from. [ET-1479]
|
206 |
+
* Tweak - Updated links in readme.txt file. [ET-1459]
|
207 |
+
* Tweak - Added filters: `tec_tickets_commerce_admin_notices`, `tec_tickets_commerce_gateway_supported_currencies_`, `tec_tickets_commerce_currency_code_options`, `tribe_ticket_rest_api_post_attendee_args`, `tribe_ticket_rest_api_edit_attendee_args`, `tribe_tickets_rest_api_post_attendee_data`, `tribe_tickets_rest_api_update_attendee_data`, `tec_tickets_completed_status_by_provider_name`, `tec_tickets_hide_view_link`
|
208 |
+
* Tweak - Added actions: `tribe_tickets_promoter_trigger_attendee`, `tec-tickets-commerce-checkout-shortcode-assets`, `tec-tickets-commerce-checkout-shortcode-assets`
|
209 |
+
* Tweak - Changed views: `blocks/attendees/view-link`, `tickets/view-link`
|
210 |
+
* Language - 17 new strings added, 70 updated, 0 fuzzied, and 0 obsoleted
|
211 |
+
|
212 |
= [5.3.1] 2022-03-15 =
|
213 |
|
214 |
* Fix - Fixed a warning message when creating an event via Community Events. [CT-51]
|
265 |
* Fix - Fixed toggling of shared capacity data for tickets. [ETP-497]
|
266 |
* Language - 7 new strings added, 99 updated, 0 fuzzied, and 0 obsoleted
|
267 |
|
268 |
+
[See changelog for all versions](https://evnt.is/1b5k)
|
src/Tickets/Commerce/Admin/Notices.php
CHANGED
@@ -21,19 +21,33 @@ class Notices extends tad_DI52_ServiceProvider {
|
|
21 |
*/
|
22 |
public function register() {
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
}
|
38 |
|
39 |
/**
|
21 |
*/
|
22 |
public function register() {
|
23 |
|
24 |
+
$notices = [
|
25 |
+
[
|
26 |
+
'event-tickets-tickets-commerce-checkout-not-set',
|
27 |
+
[ $this, 'render_checkout_notice' ],
|
28 |
+
[ 'dismiss' => false, 'type' => 'error' ],
|
29 |
+
[ $this, 'should_render_checkout_notice' ],
|
30 |
+
],
|
31 |
+
[
|
32 |
+
'event-tickets-tickets-commerce-success-not-set',
|
33 |
+
[ $this, 'render_success_notice' ],
|
34 |
+
[ 'dismiss' => false, 'type' => 'error' ],
|
35 |
+
[ $this, 'should_render_success_notice' ],
|
36 |
+
],
|
37 |
+
];
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Filters admin notices.
|
41 |
+
*
|
42 |
+
* @since 5.3.2
|
43 |
+
*
|
44 |
+
* @param array[] $notices Array of admin notice parameters.
|
45 |
+
*/
|
46 |
+
$notices = apply_filters( 'tec_tickets_commerce_admin_notices', $notices );
|
47 |
+
|
48 |
+
foreach ( $notices as $notice ) {
|
49 |
+
call_user_func_array( 'tribe_notice', $notice );
|
50 |
+
}
|
51 |
}
|
52 |
|
53 |
/**
|
src/Tickets/Commerce/Flag_Actions/Generate_Attendees.php
CHANGED
@@ -68,6 +68,13 @@ class Generate_Attendees extends Flag_Action_Abstract {
|
|
68 |
* @return string[]
|
69 |
*/
|
70 |
public function modify_status_with_attendee_generation_flag( $flags, $post, $status ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
$flags[] = 'generate_attendees';
|
72 |
|
73 |
return $flags;
|
68 |
* @return string[]
|
69 |
*/
|
70 |
public function modify_status_with_attendee_generation_flag( $flags, $post, $status ) {
|
71 |
+
$found = array_search( 'send_email', $flags, true );
|
72 |
+
|
73 |
+
if ( false !== $found ) {
|
74 |
+
array_splice( $flags, $found, 0, 'generate_attendees' );
|
75 |
+
return $flags;
|
76 |
+
}
|
77 |
+
|
78 |
$flags[] = 'generate_attendees';
|
79 |
|
80 |
return $flags;
|
src/Tickets/Commerce/Gateways/Contracts/Abstract_Gateway.php
CHANGED
@@ -48,6 +48,15 @@ abstract class Abstract_Gateway implements Gateway_Interface {
|
|
48 |
*/
|
49 |
protected static $merchant;
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
/**
|
52 |
* The option name prefix that configured whether or not a gateway is enabled.
|
53 |
* It is followed by the gateway 'key'
|
@@ -302,4 +311,45 @@ abstract class Abstract_Gateway implements Gateway_Interface {
|
|
302 |
|
303 |
return tribe_remove_option( static::get_enabled_option_key() );
|
304 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
}
|
48 |
*/
|
49 |
protected static $merchant;
|
50 |
|
51 |
+
/**
|
52 |
+
* Supported currencies.
|
53 |
+
*
|
54 |
+
* @since 5.3.2
|
55 |
+
*
|
56 |
+
* @var string[]
|
57 |
+
*/
|
58 |
+
protected static $supported_currencies = [];
|
59 |
+
|
60 |
/**
|
61 |
* The option name prefix that configured whether or not a gateway is enabled.
|
62 |
* It is followed by the gateway 'key'
|
311 |
|
312 |
return tribe_remove_option( static::get_enabled_option_key() );
|
313 |
}
|
314 |
+
|
315 |
+
/**
|
316 |
+
* Get supported currencies.
|
317 |
+
*
|
318 |
+
* @since 5.3.2
|
319 |
+
*
|
320 |
+
* @return string[]
|
321 |
+
*/
|
322 |
+
public static function get_supported_currencies() {
|
323 |
+
/**
|
324 |
+
* Filter to modify supported currencies for this gateway.
|
325 |
+
*
|
326 |
+
* @since 5.3.2
|
327 |
+
*
|
328 |
+
* @param string[] $supported_currencies Array of three-letter, supported currency codes.
|
329 |
+
*/
|
330 |
+
return apply_filters( 'tec_tickets_commerce_gateway_supported_currencies_' . static::$key, static::$supported_currencies );
|
331 |
+
}
|
332 |
+
|
333 |
+
/**
|
334 |
+
* Is currency supported.
|
335 |
+
*
|
336 |
+
* @since 5.3.2
|
337 |
+
*
|
338 |
+
* @param string $currency_code Currency code.
|
339 |
+
*
|
340 |
+
* @return bool
|
341 |
+
*/
|
342 |
+
public static function is_currency_supported( $currency_code ) {
|
343 |
+
if ( empty( $currency_code ) ) {
|
344 |
+
return false;
|
345 |
+
}
|
346 |
+
|
347 |
+
$supported_currencies = static::get_supported_currencies();
|
348 |
+
|
349 |
+
// If supported currencies aren't set, assume it's supported.
|
350 |
+
if ( empty( $supported_currencies ) ) {
|
351 |
+
return true;
|
352 |
+
}
|
353 |
+
return in_array( $currency_code, $supported_currencies, true );
|
354 |
+
}
|
355 |
}
|
src/Tickets/Commerce/Gateways/PayPal/Assets.php
CHANGED
@@ -94,10 +94,9 @@ class Assets extends \tad_DI52_ServiceProvider {
|
|
94 |
'tribe-tickets-commerce-notice-js',
|
95 |
'tribe-tickets-commerce-base-gateway-checkout-toggler',
|
96 |
],
|
97 |
-
|
98 |
[
|
99 |
'groups' => [
|
100 |
-
'tribe-tickets-commerce-checkout',
|
101 |
'tec-tickets-commerce-gateway-paypal',
|
102 |
],
|
103 |
'conditionals' => [ $this, 'should_enqueue_assets' ],
|
@@ -190,7 +189,7 @@ class Assets extends \tad_DI52_ServiceProvider {
|
|
190 |
* @return bool If the `PayPal` assets should be enqueued or not.
|
191 |
*/
|
192 |
public function should_enqueue_assets() {
|
193 |
-
return tribe( Checkout::class )->is_current_page() && tribe( Gateway::class )->is_active();
|
194 |
}
|
195 |
|
196 |
/**
|
94 |
'tribe-tickets-commerce-notice-js',
|
95 |
'tribe-tickets-commerce-base-gateway-checkout-toggler',
|
96 |
],
|
97 |
+
'tec-tickets-commerce-checkout-shortcode-assets',
|
98 |
[
|
99 |
'groups' => [
|
|
|
100 |
'tec-tickets-commerce-gateway-paypal',
|
101 |
],
|
102 |
'conditionals' => [ $this, 'should_enqueue_assets' ],
|
189 |
* @return bool If the `PayPal` assets should be enqueued or not.
|
190 |
*/
|
191 |
public function should_enqueue_assets() {
|
192 |
+
return tribe( Checkout::class )->is_current_page() && tribe( Gateway::class )->is_enabled() && tribe( Gateway::class )->is_active();
|
193 |
}
|
194 |
|
195 |
/**
|
src/Tickets/Commerce/Gateways/PayPal/Gateway.php
CHANGED
@@ -4,6 +4,8 @@ namespace TEC\Tickets\Commerce\Gateways\PayPal;
|
|
4 |
|
5 |
use TEC\Tickets\Commerce\Gateways\Contracts\Abstract_Gateway;
|
6 |
use TEC\Tickets\Commerce\Notice_Handler;
|
|
|
|
|
7 |
use \Tribe__Tickets__Main;
|
8 |
|
9 |
/**
|
@@ -28,6 +30,15 @@ class Gateway extends Abstract_Gateway {
|
|
28 |
*/
|
29 |
protected static $merchant = Merchant::class;
|
30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
/**
|
32 |
* PayPal's attribution ID for requests.
|
33 |
*
|
@@ -155,4 +166,62 @@ class Gateway extends Abstract_Gateway {
|
|
155 |
|
156 |
return $template->template( $template_path, tribe( Buttons::class )->get_checkout_template_vars() );
|
157 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
}
|
4 |
|
5 |
use TEC\Tickets\Commerce\Gateways\Contracts\Abstract_Gateway;
|
6 |
use TEC\Tickets\Commerce\Notice_Handler;
|
7 |
+
use TEC\Tickets\Commerce\Settings as TC_Settings;
|
8 |
+
use TEC\Tickets\Commerce\Utils\Currency;
|
9 |
use \Tribe__Tickets__Main;
|
10 |
|
11 |
/**
|
30 |
*/
|
31 |
protected static $merchant = Merchant::class;
|
32 |
|
33 |
+
/**
|
34 |
+
* @inheritDoc
|
35 |
+
*/
|
36 |
+
protected static $supported_currencies = [
|
37 |
+
'AUD', 'BRL', 'CAD', 'CNY', 'CZK', 'DKK', 'EUR', 'HKD', 'HUF',
|
38 |
+
'ILS', 'JPY', 'MYR', 'MXN', 'TWD', 'NZD', 'NOK', 'PHP', 'PLN',
|
39 |
+
'GBP', 'RUB', 'SGD', 'SEK', 'CHF', 'THB', 'USD',
|
40 |
+
];
|
41 |
+
|
42 |
/**
|
43 |
* PayPal's attribution ID for requests.
|
44 |
*
|
166 |
|
167 |
return $template->template( $template_path, tribe( Buttons::class )->get_checkout_template_vars() );
|
168 |
}
|
169 |
+
|
170 |
+
/**
|
171 |
+
* Filter to add any admin notices that might be needed.
|
172 |
+
*
|
173 |
+
* @since 5.3.2
|
174 |
+
*
|
175 |
+
* @param array Array of admin notices.
|
176 |
+
*
|
177 |
+
* @return array
|
178 |
+
*/
|
179 |
+
public function filter_admin_notices( $notices ) {
|
180 |
+
|
181 |
+
// Check for unsupported currency.
|
182 |
+
$selected_currency = tribe_get_option( TC_Settings::$option_currency_code );
|
183 |
+
if ( $this->is_enabled() && ! $this->is_currency_supported( $selected_currency ) ){
|
184 |
+
$notices[] = [
|
185 |
+
'tc-paypal-currency-not-supported',
|
186 |
+
[ $this, 'render_unsupported_currency_notice' ],
|
187 |
+
[ 'dismiss' => false, 'type' => 'error' ],
|
188 |
+
];
|
189 |
+
}
|
190 |
+
|
191 |
+
return $notices;
|
192 |
+
}
|
193 |
+
|
194 |
+
/**
|
195 |
+
* HTML for notice for unsupported currencies
|
196 |
+
*
|
197 |
+
* @since 5.3.2
|
198 |
+
*
|
199 |
+
* @return string
|
200 |
+
*/
|
201 |
+
public function render_unsupported_currency_notice() {
|
202 |
+
$selected_currency = tribe_get_option( TC_Settings::$option_currency_code );
|
203 |
+
$currency_name = tribe( Currency::class )->get_currency_name( $selected_currency );
|
204 |
+
// If we don't have the currency name configured, use the currency code instead.
|
205 |
+
if ( empty( $currency_name ) ) {
|
206 |
+
$currency_name = $selected_currency;
|
207 |
+
}
|
208 |
+
$notice_link = sprintf(
|
209 |
+
'<a href="%1$s" target="_blank" rel="noopener noreferrer">%2$s</a>',
|
210 |
+
esc_url( 'https://developer.paypal.com/docs/reports/reference/paypal-supported-currencies/' ),
|
211 |
+
esc_html__( 'here', 'event-tickets' )
|
212 |
+
);
|
213 |
+
$notice_header = esc_html__( 'PayPal doesn\'t support your selected currency', 'event-tickets' );
|
214 |
+
$notice_text = sprintf(
|
215 |
+
// Translators: %1$s: Currency Name. %2$s: Link to gateway provider's currency documentation.
|
216 |
+
esc_html__( 'Unfortunately PayPal doesn\'t support payments in %1$s. Please try using a different gateway or adjusting your Tickets Commerce currency setting. You can see a list of supported currencies %2$s.', 'event-tickets' ),
|
217 |
+
$currency_name,
|
218 |
+
$notice_link
|
219 |
+
);
|
220 |
+
|
221 |
+
return sprintf(
|
222 |
+
'<p><strong>%1$s</strong></p><p>%2$s</p>',
|
223 |
+
$notice_header,
|
224 |
+
$notice_text
|
225 |
+
);
|
226 |
+
}
|
227 |
}
|
src/Tickets/Commerce/Gateways/PayPal/Hooks.php
CHANGED
@@ -77,6 +77,7 @@ class Hooks extends \tad_DI52_ServiceProvider {
|
|
77 |
add_filter( 'tec_tickets_commerce_success_shortcode_success_page_paypal_template_vars', [ $this, 'include_success_page_vars' ], 10, 2 );
|
78 |
add_filter( 'tec_tickets_commerce_notice_messages', [ $this, 'include_admin_notices' ] );
|
79 |
add_filter( 'tribe-events-save-options', [ $this, 'flush_transients_when_toggling_sandbox_mode' ] );
|
|
|
80 |
}
|
81 |
|
82 |
/**
|
@@ -327,4 +328,17 @@ class Hooks extends \tad_DI52_ServiceProvider {
|
|
327 |
public function flush_transients_when_toggling_sandbox_mode( $options ) {
|
328 |
return $this->container->make( Signup::class )->maybe_delete_transient_data( $options );
|
329 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
330 |
}
|
77 |
add_filter( 'tec_tickets_commerce_success_shortcode_success_page_paypal_template_vars', [ $this, 'include_success_page_vars' ], 10, 2 );
|
78 |
add_filter( 'tec_tickets_commerce_notice_messages', [ $this, 'include_admin_notices' ] );
|
79 |
add_filter( 'tribe-events-save-options', [ $this, 'flush_transients_when_toggling_sandbox_mode' ] );
|
80 |
+
add_filter( 'tec_tickets_commerce_admin_notices', [ $this, 'filter_admin_notices' ] );
|
81 |
}
|
82 |
|
83 |
/**
|
328 |
public function flush_transients_when_toggling_sandbox_mode( $options ) {
|
329 |
return $this->container->make( Signup::class )->maybe_delete_transient_data( $options );
|
330 |
}
|
331 |
+
|
332 |
+
/**
|
333 |
+
* Filter admin notices.
|
334 |
+
*
|
335 |
+
* @since 5.3.2
|
336 |
+
*
|
337 |
+
* @param array $notices Array of admin notices.
|
338 |
+
*
|
339 |
+
* @return array
|
340 |
+
*/
|
341 |
+
public function filter_admin_notices( $notices ) {
|
342 |
+
return $this->container->make( Gateway::class )->filter_admin_notices( $notices );
|
343 |
+
}
|
344 |
}
|
src/Tickets/Commerce/Gateways/Stripe/Assets.php
CHANGED
@@ -56,11 +56,10 @@ class Assets extends \tad_DI52_ServiceProvider {
|
|
56 |
'tribe-tickets-commerce-notice-js',
|
57 |
'tribe-tickets-commerce-base-gateway-checkout-toggler',
|
58 |
],
|
59 |
-
|
60 |
[
|
61 |
'module' => true,
|
62 |
'groups' => [
|
63 |
-
'tribe-tickets-commerce-checkout',
|
64 |
'tec-tickets-commerce-gateway-stripe',
|
65 |
],
|
66 |
'conditionals' => [ $this, 'should_enqueue_assets' ],
|
@@ -180,6 +179,6 @@ class Assets extends \tad_DI52_ServiceProvider {
|
|
180 |
* @return bool If the `Stripe` assets should be enqueued or not.
|
181 |
*/
|
182 |
public function should_enqueue_assets() {
|
183 |
-
return tribe( Gateway::class )->
|
184 |
}
|
185 |
}
|
56 |
'tribe-tickets-commerce-notice-js',
|
57 |
'tribe-tickets-commerce-base-gateway-checkout-toggler',
|
58 |
],
|
59 |
+
'tec-tickets-commerce-checkout-shortcode-assets',
|
60 |
[
|
61 |
'module' => true,
|
62 |
'groups' => [
|
|
|
63 |
'tec-tickets-commerce-gateway-stripe',
|
64 |
],
|
65 |
'conditionals' => [ $this, 'should_enqueue_assets' ],
|
179 |
* @return bool If the `Stripe` assets should be enqueued or not.
|
180 |
*/
|
181 |
public function should_enqueue_assets() {
|
182 |
+
return tribe( Checkout::class )->is_current_page() && tribe( Gateway::class )->is_enabled() && tribe( Gateway::class )->is_active();
|
183 |
}
|
184 |
}
|
src/Tickets/Commerce/Gateways/Stripe/Gateway.php
CHANGED
@@ -5,6 +5,8 @@ namespace TEC\Tickets\Commerce\Gateways\Stripe;
|
|
5 |
use TEC\Tickets\Commerce\Gateways\Contracts\Abstract_Gateway;
|
6 |
use TEC\Tickets\Commerce\Gateways\Stripe\REST\Return_Endpoint;
|
7 |
use TEC\Tickets\Commerce\Payments_Tab;
|
|
|
|
|
8 |
use \Tribe__Tickets__Main;
|
9 |
use Tribe__Utils__Array as Arr;
|
10 |
|
@@ -32,6 +34,23 @@ class Gateway extends Abstract_Gateway {
|
|
32 |
*/
|
33 |
protected static $merchant = Merchant::class;
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
/**
|
36 |
* Stripe tracking ID version.
|
37 |
*
|
@@ -125,4 +144,62 @@ class Gateway extends Abstract_Gateway {
|
|
125 |
|
126 |
return $template->template( $template_path, tribe( Stripe_Elements::class )->get_checkout_template_vars() );
|
127 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
}
|
5 |
use TEC\Tickets\Commerce\Gateways\Contracts\Abstract_Gateway;
|
6 |
use TEC\Tickets\Commerce\Gateways\Stripe\REST\Return_Endpoint;
|
7 |
use TEC\Tickets\Commerce\Payments_Tab;
|
8 |
+
use TEC\Tickets\Commerce\Settings as TC_Settings;
|
9 |
+
use TEC\Tickets\Commerce\Utils\Currency;
|
10 |
use \Tribe__Tickets__Main;
|
11 |
use Tribe__Utils__Array as Arr;
|
12 |
|
34 |
*/
|
35 |
protected static $merchant = Merchant::class;
|
36 |
|
37 |
+
/**
|
38 |
+
* @inheritDoc
|
39 |
+
*/
|
40 |
+
protected static $supported_currencies = [
|
41 |
+
'USD', 'AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD',
|
42 |
+
'BDT', 'BGN', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BWP', 'BYN', 'BZD', 'CAD', 'CDF',
|
43 |
+
'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ETB',
|
44 |
+
'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK',
|
45 |
+
'HTG', 'HUF', 'IDR', 'ILS', 'INR', 'ISK', 'JMD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KRW',
|
46 |
+
'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT',
|
47 |
+
'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR',
|
48 |
+
'NZD', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF',
|
49 |
+
'SAR', 'SBD', 'SCR', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SRD', 'STD', 'SZL', 'THB', 'TJS',
|
50 |
+
'TOP', 'TRY', 'TTD', 'TWD', 'TZS', 'UAH', 'UGX', 'UYU', 'UZS', 'VND', 'VUV', 'WST', 'XAF',
|
51 |
+
'XCD', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW',
|
52 |
+
];
|
53 |
+
|
54 |
/**
|
55 |
* Stripe tracking ID version.
|
56 |
*
|
144 |
|
145 |
return $template->template( $template_path, tribe( Stripe_Elements::class )->get_checkout_template_vars() );
|
146 |
}
|
147 |
+
|
148 |
+
/**
|
149 |
+
* Filter to add any admin notices that might be needed.
|
150 |
+
*
|
151 |
+
* @since 5.3.2
|
152 |
+
*
|
153 |
+
* @param array Array of admin notices.
|
154 |
+
*
|
155 |
+
* @return array
|
156 |
+
*/
|
157 |
+
public function filter_admin_notices( $notices ) {
|
158 |
+
|
159 |
+
// Check for unsupported currency.
|
160 |
+
$selected_currency = tribe_get_option( TC_Settings::$option_currency_code );
|
161 |
+
if ( $this->is_enabled() && ! $this->is_currency_supported( $selected_currency ) ){
|
162 |
+
$notices[] = [
|
163 |
+
'tc-stripe-currency-not-supported',
|
164 |
+
[ $this, 'render_unsupported_currency_notice' ],
|
165 |
+
[ 'dismiss' => false, 'type' => 'error' ],
|
166 |
+
];
|
167 |
+
}
|
168 |
+
|
169 |
+
return $notices;
|
170 |
+
}
|
171 |
+
|
172 |
+
/**
|
173 |
+
* HTML for notice for unsupported currencies
|
174 |
+
*
|
175 |
+
* @since 5.3.2
|
176 |
+
*
|
177 |
+
* @return string
|
178 |
+
*/
|
179 |
+
public function render_unsupported_currency_notice() {
|
180 |
+
$selected_currency = tribe_get_option( TC_Settings::$option_currency_code );
|
181 |
+
$currency_name = tribe( Currency::class )->get_currency_name( $selected_currency );
|
182 |
+
// If we don't have the currency name configured, use the currency code instead.
|
183 |
+
if ( empty( $currency_name ) ) {
|
184 |
+
$currency_name = $selected_currency;
|
185 |
+
}
|
186 |
+
$notice_link = sprintf(
|
187 |
+
'<a href="%1$s" target="_blank" rel="noopener noreferrer">%2$s</a>',
|
188 |
+
esc_url( 'https://stripe.com/docs/currencies' ),
|
189 |
+
esc_html__( 'here', 'event-tickets' )
|
190 |
+
);
|
191 |
+
$notice_header = esc_html__( 'Stripe doesn\'t support your selected currency', 'event-tickets' );
|
192 |
+
$notice_text = sprintf(
|
193 |
+
// Translators: %1$s: Currency Name. %2$s: Link to gateway provider's currency documentation.
|
194 |
+
esc_html__( 'Unfortunately, Stripe doesn\'t support payments in %1$s. Please try using a different gateway or adjusting your Tickets Commerce currency setting. You can see a list of supported currencies %2$s.', 'event-tickets' ),
|
195 |
+
$currency_name,
|
196 |
+
$notice_link
|
197 |
+
);
|
198 |
+
|
199 |
+
return sprintf(
|
200 |
+
'<p><strong>%1$s</strong></p><p>%2$s</p>',
|
201 |
+
$notice_header,
|
202 |
+
$notice_text
|
203 |
+
);
|
204 |
+
}
|
205 |
}
|
src/Tickets/Commerce/Gateways/Stripe/Hooks.php
CHANGED
@@ -48,6 +48,7 @@ class Hooks extends \tad_DI52_ServiceProvider {
|
|
48 |
add_filter( 'tribe_field_div_end', [ $this, 'filter_include_webhooks_copy' ], 10, 2 );
|
49 |
add_filter( 'tribe_settings_save_field_value', [ $this, 'validate_payment_methods' ], 10, 2 );
|
50 |
add_filter( 'tribe_settings_validate_field_value', [ $this, 'provide_defaults_for_hidden_fields'], 10, 3 );
|
|
|
51 |
}
|
52 |
|
53 |
/**
|
@@ -201,4 +202,17 @@ class Hooks extends \tad_DI52_ServiceProvider {
|
|
201 |
public function provide_defaults_for_hidden_fields( $value, $field_id, $field ) {
|
202 |
return tribe( Settings::class )->reset_hidden_field_values( $value, $field_id, $field );
|
203 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
}
|
48 |
add_filter( 'tribe_field_div_end', [ $this, 'filter_include_webhooks_copy' ], 10, 2 );
|
49 |
add_filter( 'tribe_settings_save_field_value', [ $this, 'validate_payment_methods' ], 10, 2 );
|
50 |
add_filter( 'tribe_settings_validate_field_value', [ $this, 'provide_defaults_for_hidden_fields'], 10, 3 );
|
51 |
+
add_filter( 'tec_tickets_commerce_admin_notices', [ $this, 'filter_admin_notices' ] );
|
52 |
}
|
53 |
|
54 |
/**
|
202 |
public function provide_defaults_for_hidden_fields( $value, $field_id, $field ) {
|
203 |
return tribe( Settings::class )->reset_hidden_field_values( $value, $field_id, $field );
|
204 |
}
|
205 |
+
|
206 |
+
/**
|
207 |
+
* Filter admin notices.
|
208 |
+
*
|
209 |
+
* @since 5.3.2
|
210 |
+
*
|
211 |
+
* @param array $notices Array of admin notices.
|
212 |
+
*
|
213 |
+
* @return array
|
214 |
+
*/
|
215 |
+
public function filter_admin_notices( $notices ) {
|
216 |
+
return $this->container->make( Gateway::class )->filter_admin_notices( $notices );
|
217 |
+
}
|
218 |
}
|
src/Tickets/Commerce/Gateways/Stripe/Merchant.php
CHANGED
@@ -21,6 +21,7 @@ class Merchant extends Abstract_Merchant {
|
|
21 |
*/
|
22 |
const UNAUTHORIZED_COUNTRIES = [
|
23 |
'BR',
|
|
|
24 |
];
|
25 |
|
26 |
/**
|
21 |
*/
|
22 |
const UNAUTHORIZED_COUNTRIES = [
|
23 |
'BR',
|
24 |
+
'MX',
|
25 |
];
|
26 |
|
27 |
/**
|
src/Tickets/Commerce/Gateways/Stripe/Payment_Intent.php
CHANGED
@@ -34,6 +34,15 @@ class Payment_Intent {
|
|
34 |
*/
|
35 |
public static $test_metadata_key = 'payment_intent_validation_test';
|
36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
/**
|
38 |
* Create a simple payment intent with the designated payment methods to check for errors.
|
39 |
*
|
@@ -56,12 +65,15 @@ class Payment_Intent {
|
|
56 |
$fee = Application_Fee::calculate( $value );
|
57 |
|
58 |
$query_args = [];
|
59 |
-
$body
|
60 |
'currency' => $value->get_currency_code(),
|
61 |
'amount' => (string) $value->get_integer(),
|
62 |
'payment_method_types' => $payment_methods,
|
63 |
'application_fee_amount' => (string) $fee->get_integer(),
|
64 |
-
'metadata' => [
|
|
|
|
|
|
|
65 |
];
|
66 |
|
67 |
$args = [
|
@@ -107,6 +119,9 @@ class Payment_Intent {
|
|
107 |
'amount' => (string) $value->get_integer(),
|
108 |
'payment_method_types' => tribe( Merchant::class )->get_payment_method_types( $retry ),
|
109 |
'application_fee_amount' => (string) $fee->get_integer(),
|
|
|
|
|
|
|
110 |
];
|
111 |
|
112 |
$stripe_statement_descriptor = tribe_get_option( Settings::$option_statement_descriptor );
|
34 |
*/
|
35 |
public static $test_metadata_key = 'payment_intent_validation_test';
|
36 |
|
37 |
+
/**
|
38 |
+
* The key used to identify payment intents created in Tickets Commerce.
|
39 |
+
*
|
40 |
+
* @since 5.3.2
|
41 |
+
*
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
+
public static $tc_metadata_identifier = 'tec_tc_payment_intent';
|
45 |
+
|
46 |
/**
|
47 |
* Create a simple payment intent with the designated payment methods to check for errors.
|
48 |
*
|
65 |
$fee = Application_Fee::calculate( $value );
|
66 |
|
67 |
$query_args = [];
|
68 |
+
$body = [
|
69 |
'currency' => $value->get_currency_code(),
|
70 |
'amount' => (string) $value->get_integer(),
|
71 |
'payment_method_types' => $payment_methods,
|
72 |
'application_fee_amount' => (string) $fee->get_integer(),
|
73 |
+
'metadata' => [
|
74 |
+
static::$test_metadata_key => true,
|
75 |
+
static::$tc_metadata_identifier => true,
|
76 |
+
],
|
77 |
];
|
78 |
|
79 |
$args = [
|
119 |
'amount' => (string) $value->get_integer(),
|
120 |
'payment_method_types' => tribe( Merchant::class )->get_payment_method_types( $retry ),
|
121 |
'application_fee_amount' => (string) $fee->get_integer(),
|
122 |
+
'metadata' => [
|
123 |
+
static::$tc_metadata_identifier => true,
|
124 |
+
],
|
125 |
];
|
126 |
|
127 |
$stripe_statement_descriptor = tribe_get_option( Settings::$option_statement_descriptor );
|
src/Tickets/Commerce/Gateways/Stripe/Webhooks/Charge_Webhook.php
CHANGED
@@ -5,6 +5,8 @@ namespace TEC\Tickets\Commerce\Gateways\Stripe\Webhooks;
|
|
5 |
use TEC\Tickets\Commerce\Order;
|
6 |
use TEC\Tickets\Commerce\Status\Status_Interface;
|
7 |
use TEC\Tickets\Commerce\Gateways\Contracts\Webhook_Event_Interface;
|
|
|
|
|
8 |
|
9 |
/**
|
10 |
* Webhook for Charge operations.
|
@@ -25,6 +27,28 @@ class Charge_Webhook implements Webhook_Event_Interface {
|
|
25 |
$order = tribe( Order::class )->get_from_gateway_order_id( $payment_intent_id );
|
26 |
|
27 |
if ( empty( $order ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
return new \WP_Error( 200, sprintf(
|
29 |
// Translators: %s is the payment intent id.
|
30 |
__( 'Payment Intent %s does not correspond to a known order.', 'event-tickets' ),
|
5 |
use TEC\Tickets\Commerce\Order;
|
6 |
use TEC\Tickets\Commerce\Status\Status_Interface;
|
7 |
use TEC\Tickets\Commerce\Gateways\Contracts\Webhook_Event_Interface;
|
8 |
+
use TEC\Tickets\Commerce\Gateways\Stripe\Payment_Intent;
|
9 |
+
use Tribe__Utils__Array as Arr;
|
10 |
|
11 |
/**
|
12 |
* Webhook for Charge operations.
|
27 |
$order = tribe( Order::class )->get_from_gateway_order_id( $payment_intent_id );
|
28 |
|
29 |
if ( empty( $order ) ) {
|
30 |
+
|
31 |
+
if ( empty( $charge_data['metadata'][ Payment_Intent::$tc_metadata_identifier ] ) ) {
|
32 |
+
$response->set_status( 200 );
|
33 |
+
$response->set_data( sprintf(
|
34 |
+
// Translators: %1$s is the event id and %2$s is the event type name.
|
35 |
+
__( 'Event %1$s was received and will not be handled because the Payment Intent %2$s does not refer to an Event Tickets transaction.', 'event-tickets' ),
|
36 |
+
esc_html( Arr::get( $event, 'id' ) ),
|
37 |
+
esc_html( $payment_intent_id )
|
38 |
+
) );
|
39 |
+
|
40 |
+
return $response;
|
41 |
+
}
|
42 |
+
|
43 |
+
if ( ! empty( $charge_data['metadata'][ Payment_Intent::$test_metadata_key ] ) ) {
|
44 |
+
$response->set_status( 200 );
|
45 |
+
$response->set_data(
|
46 |
+
__( 'Payment Intent Test Successful', 'event-tickets' )
|
47 |
+
);
|
48 |
+
|
49 |
+
return $response;
|
50 |
+
}
|
51 |
+
|
52 |
return new \WP_Error( 200, sprintf(
|
53 |
// Translators: %s is the payment intent id.
|
54 |
__( 'Payment Intent %s does not correspond to a known order.', 'event-tickets' ),
|
src/Tickets/Commerce/Gateways/Stripe/Webhooks/Payment_Intent_Webhook.php
CHANGED
@@ -7,6 +7,7 @@ use TEC\Tickets\Commerce\Gateways\Stripe\Payment_Intent;
|
|
7 |
use TEC\Tickets\Commerce\Gateways\Stripe\Status;
|
8 |
use TEC\Tickets\Commerce\Order;
|
9 |
use TEC\Tickets\Commerce\Status\Status_Interface;
|
|
|
10 |
|
11 |
/**
|
12 |
* Webhook for Payment_Intent operations
|
@@ -34,6 +35,18 @@ class Payment_Intent_Webhook implements Webhook_Event_Interface {
|
|
34 |
|
35 |
if ( empty( $order ) ) {
|
36 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
if ( ! empty( $payment_intent['metadata'][ Payment_Intent::$test_metadata_key ] ) ) {
|
38 |
$response->set_status( 200 );
|
39 |
$response->set_data(
|
@@ -59,7 +72,7 @@ class Payment_Intent_Webhook implements Webhook_Event_Interface {
|
|
59 |
esc_html( $payment_intent_id )
|
60 |
)
|
61 |
);
|
62 |
-
|
63 |
return $response;
|
64 |
}
|
65 |
|
7 |
use TEC\Tickets\Commerce\Gateways\Stripe\Status;
|
8 |
use TEC\Tickets\Commerce\Order;
|
9 |
use TEC\Tickets\Commerce\Status\Status_Interface;
|
10 |
+
use Tribe__Utils__Array as Arr;
|
11 |
|
12 |
/**
|
13 |
* Webhook for Payment_Intent operations
|
35 |
|
36 |
if ( empty( $order ) ) {
|
37 |
|
38 |
+
if ( empty( $payment_intent['metadata'][ Payment_Intent::$tc_metadata_identifier ] ) ) {
|
39 |
+
$response->set_status( 200 );
|
40 |
+
$response->set_data( sprintf(
|
41 |
+
// Translators: %1$s is the event id and %2$s is the event type name.
|
42 |
+
__( 'Event %1$s was received and will not be handled because the Payment Intent %2$s does not refer to an Event Tickets transaction.', 'event-tickets' ),
|
43 |
+
esc_html( Arr::get( $event, 'id' ) ),
|
44 |
+
esc_html( $payment_intent_id )
|
45 |
+
) );
|
46 |
+
|
47 |
+
return $response;
|
48 |
+
}
|
49 |
+
|
50 |
if ( ! empty( $payment_intent['metadata'][ Payment_Intent::$test_metadata_key ] ) ) {
|
51 |
$response->set_status( 200 );
|
52 |
$response->set_data(
|
72 |
esc_html( $payment_intent_id )
|
73 |
)
|
74 |
);
|
75 |
+
|
76 |
return $response;
|
77 |
}
|
78 |
|
src/Tickets/Commerce/Promoter_Observer.php
ADDED
@@ -0,0 +1,86 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace TEC\Tickets\Commerce;
|
4 |
+
|
5 |
+
use Tribe\Tickets\Promoter\Triggers\Contracts\Attendee_Model;
|
6 |
+
use Tribe\Tickets\Promoter\Triggers\Models\Attendee;
|
7 |
+
|
8 |
+
class Promoter_Observer {
|
9 |
+
|
10 |
+
/**
|
11 |
+
* @since 4.12.0
|
12 |
+
*
|
13 |
+
* @var Tribe__Tickets__Promoter__Observer $observer ET Observer reference.
|
14 |
+
*/
|
15 |
+
private $observer;
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Constructor.
|
19 |
+
*
|
20 |
+
*/
|
21 |
+
public function __construct() {
|
22 |
+
$this->observer = tribe( \Tribe__Tickets__Promoter__Observer::class );
|
23 |
+
$this->hook();
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Attach hooks for trigger messages.
|
28 |
+
*
|
29 |
+
* @since 5.3.2
|
30 |
+
*/
|
31 |
+
public function hook() {
|
32 |
+
|
33 |
+
add_action( 'tec_tickets_commerce_flag_action_generated_attendee', [ $this, 'attendee_created' ], 10, 5 );
|
34 |
+
add_action( 'tec_tickets_commerce_ticket_deleted', tribe_callback( 'tickets.promoter.observer', 'notify_event_id' ), 10, 2 );
|
35 |
+
add_action( 'event_tickets_checkin', [ $this, 'checkin' ], 10, 2 );
|
36 |
+
}
|
37 |
+
|
38 |
+
/**
|
39 |
+
* Action fired when a TC attendee is created.
|
40 |
+
*
|
41 |
+
* @since 5.3.2
|
42 |
+
*
|
43 |
+
* @param \WP_Post $attendee Attendee object.
|
44 |
+
*/
|
45 |
+
public function attendee_created( \WP_Post $attendee ) {
|
46 |
+
$this->trigger( 'ticket_purchased', $attendee->ID );
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Responds to a checkin action.
|
51 |
+
*
|
52 |
+
* @since 5.3.2
|
53 |
+
*
|
54 |
+
* @param int $attendee_id The ID of the attendee utilized.
|
55 |
+
* @param bool|null $qr Whether it's from a QR scan.
|
56 |
+
*/
|
57 |
+
public function checkin( $attendee_id, $qr ) {
|
58 |
+
$this->trigger( 'checkin', $attendee_id );
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Fire a trigger action using Tickets Commerce as main source of the ticket data.
|
63 |
+
*
|
64 |
+
* @since 5.3.2
|
65 |
+
*
|
66 |
+
* @param string $type The trigger type.
|
67 |
+
* @param int $attendee_id The ID of the attendee utilized.
|
68 |
+
*/
|
69 |
+
private function trigger( $type, $attendee_id ) {
|
70 |
+
|
71 |
+
$attendee = tec_tc_get_attendee( $attendee_id );
|
72 |
+
$ticket = tribe( Module::class );
|
73 |
+
$attendee = new Attendee( (array) $attendee );
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Create a new action to listen for a trigger associated with an attendee.
|
77 |
+
*
|
78 |
+
* @since 5.3.2
|
79 |
+
*
|
80 |
+
* @param string $type The type of trigger fired.
|
81 |
+
* @param Attendee_Model $attendee The attendee associated with the trigger.
|
82 |
+
* @param Tribe__Tickets__Tickets $ticket The ticket where the attendee was created.
|
83 |
+
*/
|
84 |
+
do_action( 'tribe_tickets_promoter_trigger_attendee', $type, $attendee, $ticket );
|
85 |
+
}
|
86 |
+
}
|
src/Tickets/Commerce/Provider.php
CHANGED
@@ -68,6 +68,7 @@ class Provider extends tad_DI52_ServiceProvider {
|
|
68 |
$this->container->singleton( Checkout::class );
|
69 |
$this->container->singleton( Settings::class );
|
70 |
$this->container->singleton( Tickets_View::class );
|
|
|
71 |
|
72 |
$this->container->register( Status\Status_Handler::class );
|
73 |
$this->container->register( Flag_Actions\Flag_Action_Handler::class );
|
68 |
$this->container->singleton( Checkout::class );
|
69 |
$this->container->singleton( Settings::class );
|
70 |
$this->container->singleton( Tickets_View::class );
|
71 |
+
$this->container->singleton( Promoter_Observer::class, new Promoter_Observer );
|
72 |
|
73 |
$this->container->register( Status\Status_Handler::class );
|
74 |
$this->container->register( Flag_Actions\Flag_Action_Handler::class );
|
src/Tickets/Commerce/Settings.php
CHANGED
@@ -14,6 +14,7 @@ use TEC\Tickets\Commerce\Gateways\Manager;
|
|
14 |
use TEC\Tickets\Commerce\Status\Completed;
|
15 |
use TEC\Tickets\Commerce\Status\Pending;
|
16 |
use TEC\Tickets\Commerce\Traits\Has_Mode;
|
|
|
17 |
use TEC\Tickets\Settings as Tickets_Settings;
|
18 |
use \Tribe__Template;
|
19 |
use Tribe__Field_Conditional;
|
@@ -223,10 +224,7 @@ class Settings {
|
|
223 |
$success_shortcode = Shortcodes\Success_Shortcode::get_wp_slug();
|
224 |
$checkout_shortcode = Shortcodes\Checkout_Shortcode::get_wp_slug();
|
225 |
|
226 |
-
|
227 |
-
$commerce_currency = tribe( 'tickets.commerce.currency' );
|
228 |
-
|
229 |
-
$paypal_currency_code_options = $commerce_currency->generate_currency_code_options();
|
230 |
|
231 |
$current_user = get_user_by( 'id', get_current_user_id() );
|
232 |
|
14 |
use TEC\Tickets\Commerce\Status\Completed;
|
15 |
use TEC\Tickets\Commerce\Status\Pending;
|
16 |
use TEC\Tickets\Commerce\Traits\Has_Mode;
|
17 |
+
use TEC\Tickets\Commerce\Utils\Currency;
|
18 |
use TEC\Tickets\Settings as Tickets_Settings;
|
19 |
use \Tribe__Template;
|
20 |
use Tribe__Field_Conditional;
|
224 |
$success_shortcode = Shortcodes\Success_Shortcode::get_wp_slug();
|
225 |
$checkout_shortcode = Shortcodes\Checkout_Shortcode::get_wp_slug();
|
226 |
|
227 |
+
$paypal_currency_code_options = tribe( Currency::class )->get_currency_code_options();
|
|
|
|
|
|
|
228 |
|
229 |
$current_user = get_user_by( 'id', get_current_user_id() );
|
230 |
|
src/Tickets/Commerce/Shortcodes/Checkout_Shortcode.php
CHANGED
@@ -124,6 +124,7 @@ class Checkout_Shortcode extends Shortcode_Abstract {
|
|
124 |
*/
|
125 |
public static function enqueue_assets() {
|
126 |
// Enqueue assets.
|
|
|
127 |
tribe_asset_enqueue_group( 'tribe-tickets-commerce-checkout' );
|
128 |
tribe_asset_enqueue( 'tribe-tickets-forms-style' );
|
129 |
}
|
124 |
*/
|
125 |
public static function enqueue_assets() {
|
126 |
// Enqueue assets.
|
127 |
+
do_action( 'tec-tickets-commerce-checkout-shortcode-assets' );
|
128 |
tribe_asset_enqueue_group( 'tribe-tickets-commerce-checkout' );
|
129 |
tribe_asset_enqueue( 'tribe-tickets-forms-style' );
|
130 |
}
|
src/Tickets/Commerce/Utils/Currency.php
CHANGED
@@ -541,6 +541,38 @@ class Currency {
|
|
541 |
'decimal_precision' => 2,
|
542 |
'stripe_minimum_charge' => 0.50,
|
543 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
544 |
] );
|
545 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
546 |
}
|
541 |
'decimal_precision' => 2,
|
542 |
'stripe_minimum_charge' => 0.50,
|
543 |
],
|
544 |
+
'ZAR' => [
|
545 |
+
'name' => __( 'South African Rand (ZAR)', 'event-tickets' ),
|
546 |
+
'symbol' => 'R',
|
547 |
+
'decimal_point' => '.',
|
548 |
+
'thousands_sep' => ' ',
|
549 |
+
'decimal_precision' => 2,
|
550 |
+
'stripe_minimum_charge' => 30,
|
551 |
+
],
|
552 |
] );
|
553 |
}
|
554 |
+
|
555 |
+
/**
|
556 |
+
* Creates the array for a currency drop-down using only code & name.
|
557 |
+
*
|
558 |
+
* @since 5.3.2
|
559 |
+
*
|
560 |
+
* @return array<string, string>
|
561 |
+
*/
|
562 |
+
public function get_currency_code_options() {
|
563 |
+
$currency_map = $this->get_default_currency_map();
|
564 |
+
$options = array_combine(
|
565 |
+
array_keys( $currency_map ),
|
566 |
+
wp_list_pluck( $currency_map, 'name' )
|
567 |
+
);
|
568 |
+
|
569 |
+
/**
|
570 |
+
* Filters the currency code options shown to the user in the TC settings.
|
571 |
+
*
|
572 |
+
* @since 5.3.2
|
573 |
+
*
|
574 |
+
* @param array<string, string> $options
|
575 |
+
*/
|
576 |
+
return apply_filters( 'tec_tickets_commerce_currency_code_options', $options );
|
577 |
+
}
|
578 |
}
|
src/Tribe/Commerce/Currency.php
CHANGED
@@ -467,21 +467,21 @@ class Tribe__Tickets__Commerce__Currency {
|
|
467 |
*
|
468 |
* @since 4.7
|
469 |
*
|
470 |
-
* @
|
471 |
-
*
|
|
|
|
|
472 |
*
|
473 |
* @return string
|
474 |
*/
|
475 |
protected function get_provider_cost( $provider = '', $cost = '' ) {
|
476 |
-
|
477 |
-
|
|
|
478 |
}
|
479 |
|
480 |
-
if (
|
481 |
-
|
482 |
-
&& function_exists( 'wc_format_localized_price' )
|
483 |
-
) {
|
484 |
-
return wc_format_localized_price( $cost );
|
485 |
}
|
486 |
|
487 |
if (
|
467 |
*
|
468 |
* @since 4.7
|
469 |
*
|
470 |
+
* @since 5.3.2 removed unused WooCommerce formatting.
|
471 |
+
*
|
472 |
+
* @param string | Tribe__Tickets__Tickets $provider Provider class name or object.
|
473 |
+
* @param string $cost Cost for the Event.
|
474 |
*
|
475 |
* @return string
|
476 |
*/
|
477 |
protected function get_provider_cost( $provider = '', $cost = '' ) {
|
478 |
+
// Convert to class name if object is passed.
|
479 |
+
if ( is_object( $provider ) ) {
|
480 |
+
$provider = get_class( $provider );
|
481 |
}
|
482 |
|
483 |
+
if ( ! class_exists( $provider ) ) {
|
484 |
+
return $cost;
|
|
|
|
|
|
|
485 |
}
|
486 |
|
487 |
if (
|
src/Tribe/Main.php
CHANGED
@@ -7,7 +7,7 @@ class Tribe__Tickets__Main {
|
|
7 |
/**
|
8 |
* Current version of this plugin
|
9 |
*/
|
10 |
-
const VERSION = '5.3.
|
11 |
|
12 |
/**
|
13 |
* Used to store the version history.
|
7 |
/**
|
8 |
* Current version of this plugin
|
9 |
*/
|
10 |
+
const VERSION = '5.3.2';
|
11 |
|
12 |
/**
|
13 |
* Used to store the version history.
|
src/Tribe/REST/V1/Endpoints/Single_Attendee.php
CHANGED
@@ -92,4 +92,274 @@ class Tribe__Tickets__REST__V1__Endpoints__Single_Attendee
|
|
92 |
|
93 |
return tribe_attendees( 'restv1' )->by_primary_key( $request['id'] );
|
94 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
95 |
}
|
92 |
|
93 |
return tribe_attendees( 'restv1' )->by_primary_key( $request['id'] );
|
94 |
}
|
95 |
+
|
96 |
+
/**
|
97 |
+
* Handles POST requests on the endpoint.
|
98 |
+
*
|
99 |
+
* @param WP_REST_Request $request
|
100 |
+
* @param bool $return_id Whether the created post ID should be returned or the full response object.
|
101 |
+
*
|
102 |
+
* @return WP_Error|WP_REST_Response|int An array containing the data on success or a WP_Error instance on failure.
|
103 |
+
*/
|
104 |
+
public function create( WP_REST_Request $request, $return_id = false ) {
|
105 |
+
|
106 |
+
$post_data = $this->prepare_attendee_data( $request );
|
107 |
+
|
108 |
+
if ( is_wp_error( $post_data ) ) {
|
109 |
+
return $post_data;
|
110 |
+
}
|
111 |
+
|
112 |
+
/** @var Tribe__Tickets__Attendees $attendees */
|
113 |
+
$attendees = tribe( 'tickets.attendees' );
|
114 |
+
$attendee_object = $attendees->create_attendee( $post_data['ticket'], $post_data['data'] );
|
115 |
+
|
116 |
+
if ( ! $attendee_object ) {
|
117 |
+
return new WP_Error( 'attendee-creation-failed', __( 'Something went wrong! Attendee creation failed.', 'event-tickets' ) );
|
118 |
+
}
|
119 |
+
|
120 |
+
$attendee = $post_data['provider']->get_attendee( $attendee_object->ID );
|
121 |
+
$response = new WP_REST_Response( $attendee );
|
122 |
+
$response->set_status( 201 );
|
123 |
+
|
124 |
+
return $response;
|
125 |
+
}
|
126 |
+
|
127 |
+
/**
|
128 |
+
* Returns the content of the `args` array that should be used to register the endpoint
|
129 |
+
* with the `register_rest_route` function.
|
130 |
+
*
|
131 |
+
* @since 5.3.2
|
132 |
+
*
|
133 |
+
* @return array Array of supported arguments for the create endpoint.
|
134 |
+
*/
|
135 |
+
public function CREATE_args() {
|
136 |
+
$args = [
|
137 |
+
'ticket_id' => [
|
138 |
+
'required' => true,
|
139 |
+
'validate_callback' => 'tribe_events_product_is_ticket',
|
140 |
+
'type' => 'integer',
|
141 |
+
'description' => __( 'The Ticket ID, where the attendee is registered.', 'event-tickets' ),
|
142 |
+
],
|
143 |
+
'full_name' => [
|
144 |
+
'required' => true,
|
145 |
+
'type' => 'string',
|
146 |
+
'description' => __( 'Full name of the attendee.', 'event-tickets' ),
|
147 |
+
],
|
148 |
+
'email' => [
|
149 |
+
'required' => true,
|
150 |
+
'validate_callback' => 'is_email',
|
151 |
+
'type' => 'email',
|
152 |
+
'description' => __( 'Email of the attendeee.', 'event-tickets' ),
|
153 |
+
],
|
154 |
+
'attendee_status' => [
|
155 |
+
'required' => false,
|
156 |
+
'type' => 'string',
|
157 |
+
'description' => __( 'Order Status for the attendee.', 'event-tickets' ),
|
158 |
+
],
|
159 |
+
|
160 |
+
];
|
161 |
+
|
162 |
+
/**
|
163 |
+
* Filters the supported args for the create endpoint.
|
164 |
+
*
|
165 |
+
* @since 5.3.2
|
166 |
+
*
|
167 |
+
* @param array $args Supported list of arguments.
|
168 |
+
*/
|
169 |
+
return apply_filters( 'tribe_ticket_rest_api_post_attendee_args', $args );
|
170 |
+
}
|
171 |
+
|
172 |
+
/**
|
173 |
+
* Handles Update requests on the endpoint.
|
174 |
+
*
|
175 |
+
* @param WP_REST_Request $request
|
176 |
+
*
|
177 |
+
* @return WP_Error|WP_REST_Response|int An array containing the data on success or a WP_Error instance on failure.
|
178 |
+
*/
|
179 |
+
public function update( WP_REST_Request $request ) {
|
180 |
+
|
181 |
+
$post_data = $this->prepare_update_attendee_data( $request );
|
182 |
+
|
183 |
+
if ( is_wp_error( $post_data ) ) {
|
184 |
+
return $post_data;
|
185 |
+
}
|
186 |
+
|
187 |
+
$provider = tribe_tickets_get_ticket_provider( $post_data['attendee_id'] );
|
188 |
+
|
189 |
+
/** @var Tribe__Tickets__Attendees $attendees */
|
190 |
+
$attendees = tribe( 'tickets.attendees' );
|
191 |
+
$attendee_object = $attendees->update_attendee( $post_data['attendee'], $post_data['data'] );
|
192 |
+
|
193 |
+
if ( ! $attendee_object ) {
|
194 |
+
return new WP_Error( 'attendee-update-failed', __( 'Something went wrong! Attendee update failed.', 'event-tickets' ) );
|
195 |
+
}
|
196 |
+
|
197 |
+
$attendee = $provider->get_attendee( $post_data['attendee_id'] );
|
198 |
+
$response = new WP_REST_Response( $attendee );
|
199 |
+
$response->set_status( 201 );
|
200 |
+
|
201 |
+
return $response;
|
202 |
+
}
|
203 |
+
|
204 |
+
/**
|
205 |
+
* Returns the content of the `args` array that should be used to register the endpoint
|
206 |
+
* with the `register_rest_route` function.
|
207 |
+
*
|
208 |
+
* @since 5.3.2
|
209 |
+
*
|
210 |
+
* @return array Array of supported arguments for the edit endpoint.
|
211 |
+
*/
|
212 |
+
public function EDIT_args() {
|
213 |
+
$args = [
|
214 |
+
'id' => [
|
215 |
+
'type' => 'integer',
|
216 |
+
'in' => 'path',
|
217 |
+
'description' => __( 'The attendee post ID', 'event-tickets' ),
|
218 |
+
'required' => true,
|
219 |
+
],
|
220 |
+
];
|
221 |
+
|
222 |
+
/**
|
223 |
+
* Filters the supported args for the edit endpoint.
|
224 |
+
*
|
225 |
+
* @since 5.3.2
|
226 |
+
*
|
227 |
+
* @param array $args Supported list of arguments.
|
228 |
+
*/
|
229 |
+
return apply_filters( 'tribe_ticket_rest_api_edit_attendee_args', $args );
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
* Process Request data.
|
234 |
+
*
|
235 |
+
* @param WP_REST_Request $request
|
236 |
+
*
|
237 |
+
* @return array|WP_Error
|
238 |
+
*/
|
239 |
+
public function prepare_attendee_data( WP_REST_Request $request ) {
|
240 |
+
|
241 |
+
$ticket_id = (int) $request->get_param( 'ticket_id' );
|
242 |
+
$provider = tribe_tickets_get_ticket_provider( $ticket_id );
|
243 |
+
|
244 |
+
if ( ! $provider ) {
|
245 |
+
return new WP_Error( 'invalid-provider', __( 'Ticket Provider not found.', 'event-tickets' ) );
|
246 |
+
}
|
247 |
+
|
248 |
+
$attendee_data = $request->get_params();
|
249 |
+
$attendee_data[ 'attendee_source' ] = 'rest-api';
|
250 |
+
$validate_status = $this->validate_attendee_status( $attendee_data, $provider );
|
251 |
+
|
252 |
+
if ( is_wp_error( $validate_status ) ) {
|
253 |
+
return $validate_status;
|
254 |
+
}
|
255 |
+
|
256 |
+
/**
|
257 |
+
* Filter REST API attendee data before creating an attendee.
|
258 |
+
*
|
259 |
+
* @since 5.3.2
|
260 |
+
*
|
261 |
+
* @param array $attendee_data Attendee data.
|
262 |
+
* @param WP_REST_Request $request Request object.
|
263 |
+
*/
|
264 |
+
$attendee_data = apply_filters( 'tribe_tickets_rest_api_post_attendee_data', $attendee_data, $request );
|
265 |
+
|
266 |
+
if ( is_wp_error( $attendee_data ) ) {
|
267 |
+
return $attendee_data;
|
268 |
+
}
|
269 |
+
|
270 |
+
return [
|
271 |
+
'ticket' => $ticket_id,
|
272 |
+
'provider' => $provider,
|
273 |
+
'data' => $attendee_data,
|
274 |
+
];
|
275 |
+
}
|
276 |
+
|
277 |
+
/**
|
278 |
+
* Process Request data for updating an attendee.
|
279 |
+
*
|
280 |
+
* @param WP_REST_Request $request
|
281 |
+
*
|
282 |
+
* @return array|WP_Error
|
283 |
+
*/
|
284 |
+
public function prepare_update_attendee_data( WP_REST_Request $request ) {
|
285 |
+
|
286 |
+
$attendee_id = (int) $request->get_param( 'id' );
|
287 |
+
$found = tribe_attendees()->by( 'id', $attendee_id )->found();
|
288 |
+
|
289 |
+
if ( ! $found ) {
|
290 |
+
return new WP_Error( 'invalid-attendee-id', __( 'Attendee ID is not valid.', 'event-tickets' ) );
|
291 |
+
}
|
292 |
+
|
293 |
+
$provider = tribe_tickets_get_ticket_provider( $attendee_id );
|
294 |
+
|
295 |
+
if ( ! $provider ) {
|
296 |
+
return new WP_Error( 'invalid-attendee-provider', __( 'Attendee provider not found.', 'event-tickets' ) );
|
297 |
+
}
|
298 |
+
|
299 |
+
$attendee = $provider->get_attendee( $attendee_id );
|
300 |
+
$updated_data = $request->get_params();
|
301 |
+
$validate_status = $this->validate_attendee_status( $updated_data, $provider );
|
302 |
+
|
303 |
+
if ( is_wp_error( $validate_status ) ) {
|
304 |
+
return $validate_status;
|
305 |
+
}
|
306 |
+
|
307 |
+
/**
|
308 |
+
* Filter REST API attendee data before creating an attendee.
|
309 |
+
*
|
310 |
+
* @since 5.3.2
|
311 |
+
*
|
312 |
+
* @param array $updated_data Data that needs to be updated.
|
313 |
+
* @param WP_REST_Request $request Request object.
|
314 |
+
* @param array $attendee_data Attendee data that will be updated.
|
315 |
+
*/
|
316 |
+
$attendee_data = apply_filters( 'tribe_tickets_rest_api_update_attendee_data', $updated_data, $request, $attendee );
|
317 |
+
|
318 |
+
if ( is_wp_error( $attendee_data ) ) {
|
319 |
+
return $attendee_data;
|
320 |
+
}
|
321 |
+
|
322 |
+
return [
|
323 |
+
'attendee_id' => $attendee_id,
|
324 |
+
'attendee' => $attendee,
|
325 |
+
'data' => $attendee_data,
|
326 |
+
];
|
327 |
+
}
|
328 |
+
|
329 |
+
/**
|
330 |
+
* Validate Attendee status if available.
|
331 |
+
*
|
332 |
+
* @since 5.3.2
|
333 |
+
*
|
334 |
+
* @param array $data Attendee data.
|
335 |
+
* @param Tribe__Tickets__Tickets $provider Provider for the selected ticket.
|
336 |
+
*
|
337 |
+
* @return array | WP_Error
|
338 |
+
*/
|
339 |
+
public function validate_attendee_status( $data, $provider ) {
|
340 |
+
if ( isset( $data['attendee_status'] ) ) {
|
341 |
+
$statuses = tribe( 'tickets.status' )->get_statuses_by_action( 'all', $provider );
|
342 |
+
if ( ! in_array( $data['attendee_status'], $statuses, true ) ) {
|
343 |
+
$error_message = sprintf(
|
344 |
+
// Translators: %s - List of valid statuses.
|
345 |
+
__( 'Supported statuses for this attendee are: %s', 'event-tickets' ),
|
346 |
+
implode( $statuses, ' | ' )
|
347 |
+
);
|
348 |
+
return new WP_Error( 'invalid-attendee-status', $error_message, [ 'status' => 400 ] );
|
349 |
+
}
|
350 |
+
}
|
351 |
+
|
352 |
+
return $data;
|
353 |
+
}
|
354 |
+
|
355 |
+
/**
|
356 |
+
* Validates the user permission.
|
357 |
+
*
|
358 |
+
* @since 5.3.2
|
359 |
+
*
|
360 |
+
* @return bool
|
361 |
+
*/
|
362 |
+
public function validate_user_permission() {
|
363 |
+
return current_user_can( 'edit_users' ) || current_user_can( 'tribe_manage_attendees' );
|
364 |
+
}
|
365 |
}
|
src/Tribe/REST/V1/Service_Provider.php
CHANGED
@@ -228,7 +228,7 @@ class Tribe__Tickets__REST__V1__Service_Provider extends tad_DI52_ServiceProvide
|
|
228 |
}
|
229 |
|
230 |
protected function register_single_attendee_endpoint() {
|
231 |
-
/** @var
|
232 |
$endpoint = tribe( 'tickets.rest-v1.endpoints.attendees-single' );
|
233 |
|
234 |
register_rest_route( $this->namespace, '/attendees/(?P<id>\\d+)', array(
|
@@ -238,6 +238,20 @@ class Tribe__Tickets__REST__V1__Service_Provider extends tad_DI52_ServiceProvide
|
|
238 |
'permission_callback' => '__return_true',
|
239 |
) );
|
240 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
241 |
tribe( 'tickets.rest-v1.endpoints.documentation' )->register_documentation_provider( '/attendees/{id}', $endpoint );
|
242 |
|
243 |
return $endpoint;
|
228 |
}
|
229 |
|
230 |
protected function register_single_attendee_endpoint() {
|
231 |
+
/** @var Tribe__Tickets__REST__V1__Endpoints__Single_Attendee $endpoint */
|
232 |
$endpoint = tribe( 'tickets.rest-v1.endpoints.attendees-single' );
|
233 |
|
234 |
register_rest_route( $this->namespace, '/attendees/(?P<id>\\d+)', array(
|
238 |
'permission_callback' => '__return_true',
|
239 |
) );
|
240 |
|
241 |
+
register_rest_route( $this->namespace, '/attendees/', [
|
242 |
+
'methods' => WP_REST_Server::CREATABLE,
|
243 |
+
'args' => $endpoint->CREATE_args(),
|
244 |
+
'callback' => [ $endpoint, 'create' ],
|
245 |
+
'permission_callback' => [ $endpoint, 'validate_user_permission' ],
|
246 |
+
] );
|
247 |
+
|
248 |
+
register_rest_route( $this->namespace, '/attendees/(?P<id>\\d+)', [
|
249 |
+
'methods' => WP_REST_Server::EDITABLE,
|
250 |
+
'args' => $endpoint->EDIT_args(),
|
251 |
+
'callback' => [ $endpoint, 'update' ],
|
252 |
+
'permission_callback' => [ $endpoint, 'validate_user_permission' ],
|
253 |
+
] );
|
254 |
+
|
255 |
tribe( 'tickets.rest-v1.endpoints.documentation' )->register_documentation_provider( '/attendees/{id}', $endpoint );
|
256 |
|
257 |
return $endpoint;
|
src/Tribe/Repositories/Post_Repository.php
CHANGED
@@ -9,6 +9,7 @@
|
|
9 |
|
10 |
namespace Tribe\Tickets\Repositories;
|
11 |
|
|
|
12 |
use Tribe\Tickets\Repositories\Traits\Event;
|
13 |
use Tribe\Tickets\Repositories\Traits\Post_Attendees;
|
14 |
use Tribe\Tickets\Repositories\Traits\Post_Tickets;
|
@@ -82,8 +83,9 @@ class Post_Repository extends Tribe__Repository {
|
|
82 |
*/
|
83 |
public function attendee_types() {
|
84 |
return [
|
85 |
-
'rsvp'
|
86 |
-
'tribe-commerce'
|
|
|
87 |
];
|
88 |
}
|
89 |
|
@@ -98,8 +100,9 @@ class Post_Repository extends Tribe__Repository {
|
|
98 |
*/
|
99 |
public function attendee_to_event_keys() {
|
100 |
return [
|
101 |
-
'rsvp'
|
102 |
-
'tribe-commerce'
|
|
|
103 |
];
|
104 |
}
|
105 |
|
9 |
|
10 |
namespace Tribe\Tickets\Repositories;
|
11 |
|
12 |
+
use TEC\Tickets\Commerce;
|
13 |
use Tribe\Tickets\Repositories\Traits\Event;
|
14 |
use Tribe\Tickets\Repositories\Traits\Post_Attendees;
|
15 |
use Tribe\Tickets\Repositories\Traits\Post_Tickets;
|
83 |
*/
|
84 |
public function attendee_types() {
|
85 |
return [
|
86 |
+
'rsvp' => 'tribe_rsvp_attendees',
|
87 |
+
'tribe-commerce' => 'tribe_tpp_attendees',
|
88 |
+
Commerce::PROVIDER => Commerce\Attendee::POSTTYPE,
|
89 |
];
|
90 |
}
|
91 |
|
100 |
*/
|
101 |
public function attendee_to_event_keys() {
|
102 |
return [
|
103 |
+
'rsvp' => '_tribe_rsvp_event',
|
104 |
+
'tribe-commerce' => '_tribe_tpp_event',
|
105 |
+
Commerce::PROVIDER => Commerce\Attendee::$event_relation_meta_key,
|
106 |
];
|
107 |
}
|
108 |
|
src/Tribe/Service_Providers/Customizer.php
CHANGED
@@ -154,11 +154,7 @@ class Customizer extends \tad_DI52_ServiceProvider {
|
|
154 |
|
155 |
// overrides for common components/full/_loader.pcss.
|
156 |
$template .= '
|
157 |
-
|
158 |
-
0% {}
|
159 |
-
50% { background-color: <%= global_elements.accent_color %>; }
|
160 |
-
100% {}
|
161 |
-
}
|
162 |
';
|
163 |
}
|
164 |
|
154 |
|
155 |
// overrides for common components/full/_loader.pcss.
|
156 |
$template .= '
|
157 |
+
.tribe-common .tribe-common-c-svgicon--dot { color: <%= global_elements.accent_color %>; }
|
|
|
|
|
|
|
|
|
158 |
';
|
159 |
}
|
160 |
|
src/Tribe/Shortcodes/Tribe_Tickets_Checkout.php
CHANGED
@@ -65,6 +65,7 @@ class Tribe_Tickets_Checkout extends Shortcode_Abstract {
|
|
65 |
$template->add_template_globals( $args );
|
66 |
|
67 |
// Enqueue assets.
|
|
|
68 |
tribe_asset_enqueue_group( 'tribe-tickets-commerce-checkout' );
|
69 |
|
70 |
return $template->template( 'v2/tickets/commerce/checkout', $args, false );
|
65 |
$template->add_template_globals( $args );
|
66 |
|
67 |
// Enqueue assets.
|
68 |
+
do_action( 'tec-tickets-commerce-checkout-shortcode-assets' );
|
69 |
tribe_asset_enqueue_group( 'tribe-tickets-commerce-checkout' );
|
70 |
|
71 |
return $template->template( 'v2/tickets/commerce/checkout', $args, false );
|
src/Tribe/Status/Manager.php
CHANGED
@@ -326,6 +326,8 @@ class Tribe__Tickets__Status__Manager {
|
|
326 |
*
|
327 |
* @since 4.10.5
|
328 |
*
|
|
|
|
|
329 |
* @param string|object $provider_name an object or string of a commerce main class name
|
330 |
*
|
331 |
* @return array
|
@@ -337,25 +339,41 @@ class Tribe__Tickets__Status__Manager {
|
|
337 |
}
|
338 |
|
339 |
$abbreviated_name = $this->get_provider_slug( $provider_name );
|
|
|
340 |
|
341 |
-
$
|
342 |
-
$
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
|
347 |
-
|
348 |
-
|
349 |
|
350 |
-
|
351 |
-
|
|
|
352 |
}
|
353 |
-
|
354 |
}
|
355 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
356 |
|
357 |
-
|
358 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
}
|
360 |
|
361 |
/**
|
326 |
*
|
327 |
* @since 4.10.5
|
328 |
*
|
329 |
+
* @since 5.3.2 add support fot Tickets Commerce completed statuses directly, as we have changed the way statuses are handled for Tickets Commerce.
|
330 |
+
*
|
331 |
* @param string|object $provider_name an object or string of a commerce main class name
|
332 |
*
|
333 |
* @return array
|
339 |
}
|
340 |
|
341 |
$abbreviated_name = $this->get_provider_slug( $provider_name );
|
342 |
+
$trigger_statuses = [];
|
343 |
|
344 |
+
if ( isset( $this->statuses[ $abbreviated_name ] ) ) {
|
345 |
+
$filtered_statuses = wp_list_filter(
|
346 |
+
$this->statuses[ $abbreviated_name ]->statuses,
|
347 |
+
[ 'count_completed' => true ]
|
348 |
+
);
|
349 |
|
350 |
+
foreach ( $filtered_statuses as $status ) {
|
351 |
+
$trigger_statuses[] = $status->provider_name;
|
352 |
|
353 |
+
if ( ! empty( $status->additional_names ) ) {
|
354 |
+
$trigger_statuses = $this->add_additional_names_to_array( $trigger_statuses, $status->additional_names );
|
355 |
+
}
|
356 |
}
|
|
|
357 |
}
|
358 |
|
359 |
+
// Add Completed statuses for Tickets Commerce providers.
|
360 |
+
if ( \TEC\Tickets\Commerce::ABBR === $abbreviated_name ) {
|
361 |
+
$completed_status = tribe( \TEC\Tickets\Commerce\Status\Completed::class );
|
362 |
+
$trigger_statuses = [
|
363 |
+
$completed_status::SLUG,
|
364 |
+
$completed_status->get_name(),
|
365 |
+
];
|
366 |
+
}
|
367 |
|
368 |
+
/**
|
369 |
+
* Filters the array of completed status slugs for the providers.
|
370 |
+
*
|
371 |
+
* @since 5.3.2
|
372 |
+
*
|
373 |
+
* @param array $trigger_statuses Array of supported statuses.
|
374 |
+
* @param string|object $provider_name an object or string of a commerce main class name.
|
375 |
+
*/
|
376 |
+
return apply_filters( 'tec_tickets_completed_status_by_provider_name', $trigger_statuses, $provider_name );
|
377 |
}
|
378 |
|
379 |
/**
|
src/Tribe/Ticket_Repository.php
CHANGED
@@ -95,6 +95,7 @@ class Tribe__Tickets__Ticket_Repository extends Tribe__Repository {
|
|
95 |
return [
|
96 |
'rsvp' => '_tribe_rsvp_for_event',
|
97 |
'tribe-commerce' => '_tribe_tpp_for_event',
|
|
|
98 |
];
|
99 |
}
|
100 |
|
95 |
return [
|
96 |
'rsvp' => '_tribe_rsvp_for_event',
|
97 |
'tribe-commerce' => '_tribe_tpp_for_event',
|
98 |
+
TEC\Tickets\Commerce::PROVIDER => TEC\Tickets\Commerce\Ticket::$event_relation_meta_key,
|
99 |
];
|
100 |
}
|
101 |
|
src/views/blocks/attendees/view-link.php
CHANGED
@@ -19,8 +19,9 @@
|
|
19 |
* @since 4.10.9 Uses new functions to get singular and plural texts.
|
20 |
* @since 4.12.1 Account for empty post type object, such as if post type got disabled. Fix typo in sprintf placeholders.
|
21 |
* @since 5.0.2 Fix template path in documentation block.
|
|
|
22 |
*
|
23 |
-
* @version 5.
|
24 |
*
|
25 |
* @var Tribe__Tickets__Editor__Template $this
|
26 |
*/
|
@@ -29,6 +30,10 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
29 |
die( '-1' );
|
30 |
}
|
31 |
|
|
|
|
|
|
|
|
|
32 |
$view = Tribe__Tickets__Tickets_View::instance();
|
33 |
$event_id = $this->get( 'post_id' );
|
34 |
$event = get_post( $event_id );
|
19 |
* @since 4.10.9 Uses new functions to get singular and plural texts.
|
20 |
* @since 4.12.1 Account for empty post type object, such as if post type got disabled. Fix typo in sprintf placeholders.
|
21 |
* @since 5.0.2 Fix template path in documentation block.
|
22 |
+
* @since 5.3.2 Added use of $hide_view_my_tickets_link variable to hide link as an option.
|
23 |
*
|
24 |
+
* @version 5.3.2
|
25 |
*
|
26 |
* @var Tribe__Tickets__Editor__Template $this
|
27 |
*/
|
30 |
die( '-1' );
|
31 |
}
|
32 |
|
33 |
+
if ( isset( $hide_view_my_tickets_link ) && tribe_is_truthy( $hide_view_my_tickets_link ) ) {
|
34 |
+
return;
|
35 |
+
}
|
36 |
+
|
37 |
$view = Tribe__Tickets__Tickets_View::instance();
|
38 |
$event_id = $this->get( 'post_id' );
|
39 |
$event = get_post( $event_id );
|
src/views/tickets/view-link.php
CHANGED
@@ -20,8 +20,9 @@
|
|
20 |
* @since 5.0.1 Add additional checks to prevent PHP errors when called from automated testing.
|
21 |
* @since 5.0.2 Fix template path in documentation block.
|
22 |
* @since 5.1.3 Use /tribe-events/ for the template path in documentation block.
|
|
|
23 |
*
|
24 |
-
* @version 5.
|
25 |
*
|
26 |
* @var Tribe__Tickets__Tickets_View $this
|
27 |
*/
|
@@ -30,6 +31,10 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
30 |
die( '-1' );
|
31 |
}
|
32 |
|
|
|
|
|
|
|
|
|
33 |
$view = Tribe__Tickets__Tickets_View::instance();
|
34 |
|
35 |
$event_id = get_the_ID();
|
@@ -51,6 +56,18 @@ if ( empty( $post_type ) || ! is_user_logged_in() ) {
|
|
51 |
return;
|
52 |
}
|
53 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
$is_event_page = class_exists( 'Tribe__Events__Main' ) && Tribe__Events__Main::POSTTYPE === $event->post_type;
|
55 |
|
56 |
$post_type_singular = $post_type ? $post_type->labels->singular_name : _x( 'Post', 'fallback post type singular name', 'event-tickets' );
|
20 |
* @since 5.0.1 Add additional checks to prevent PHP errors when called from automated testing.
|
21 |
* @since 5.0.2 Fix template path in documentation block.
|
22 |
* @since 5.1.3 Use /tribe-events/ for the template path in documentation block.
|
23 |
+
* @since 5.3.2 Added use of $hide_view_my_tickets_link variable to hide link as an option.
|
24 |
*
|
25 |
+
* @version 5.3.2
|
26 |
*
|
27 |
* @var Tribe__Tickets__Tickets_View $this
|
28 |
*/
|
31 |
die( '-1' );
|
32 |
}
|
33 |
|
34 |
+
if ( isset( $hide_view_my_tickets_link ) && tribe_is_truthy( $hide_view_my_tickets_link ) ) {
|
35 |
+
return;
|
36 |
+
}
|
37 |
+
|
38 |
$view = Tribe__Tickets__Tickets_View::instance();
|
39 |
|
40 |
$event_id = get_the_ID();
|
56 |
return;
|
57 |
}
|
58 |
|
59 |
+
/**
|
60 |
+
* Filters the arg to determine whether or not to hide the view link.
|
61 |
+
*
|
62 |
+
* @since 5.3.2
|
63 |
+
*
|
64 |
+
* @param bool True/false to hide view link.
|
65 |
+
*/
|
66 |
+
$hide_view_link = apply_filters( 'tec_tickets_hide_view_link', tribe_doing_shortcode( 'tribe_tickets' ) );
|
67 |
+
if ( $hide_view_link ) {
|
68 |
+
return;
|
69 |
+
}
|
70 |
+
|
71 |
$is_event_page = class_exists( 'Tribe__Events__Main' ) && Tribe__Events__Main::POSTTYPE === $event->post_type;
|
72 |
|
73 |
$post_type_singular = $post_type ? $post_type->labels->singular_name : _x( 'Post', 'fallback post type singular name', 'event-tickets' );
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInitad38379fa06ea34b7130e18f8a365a72::getLoader();
|
vendor/composer/autoload_classmap.php
CHANGED
@@ -109,6 +109,7 @@ return array(
|
|
109 |
'TEC\\Tickets\\Commerce\\Notice_Handler' => $baseDir . '/src/Tickets/Commerce/Notice_Handler.php',
|
110 |
'TEC\\Tickets\\Commerce\\Order' => $baseDir . '/src/Tickets/Commerce/Order.php',
|
111 |
'TEC\\Tickets\\Commerce\\Payments_Tab' => $baseDir . '/src/Tickets/Commerce/Payments_Tab.php',
|
|
|
112 |
'TEC\\Tickets\\Commerce\\Provider' => $baseDir . '/src/Tickets/Commerce/Provider.php',
|
113 |
'TEC\\Tickets\\Commerce\\Reports\\Attendance_Totals' => $baseDir . '/src/Tickets/Commerce/Reports/Attendance_Totals.php',
|
114 |
'TEC\\Tickets\\Commerce\\Reports\\Attendees' => $baseDir . '/src/Tickets/Commerce/Reports/Attendees.php',
|
109 |
'TEC\\Tickets\\Commerce\\Notice_Handler' => $baseDir . '/src/Tickets/Commerce/Notice_Handler.php',
|
110 |
'TEC\\Tickets\\Commerce\\Order' => $baseDir . '/src/Tickets/Commerce/Order.php',
|
111 |
'TEC\\Tickets\\Commerce\\Payments_Tab' => $baseDir . '/src/Tickets/Commerce/Payments_Tab.php',
|
112 |
+
'TEC\\Tickets\\Commerce\\Promoter_Observer' => $baseDir . '/src/Tickets/Commerce/Promoter_Observer.php',
|
113 |
'TEC\\Tickets\\Commerce\\Provider' => $baseDir . '/src/Tickets/Commerce/Provider.php',
|
114 |
'TEC\\Tickets\\Commerce\\Reports\\Attendance_Totals' => $baseDir . '/src/Tickets/Commerce/Reports/Attendance_Totals.php',
|
115 |
'TEC\\Tickets\\Commerce\\Reports\\Attendees' => $baseDir . '/src/Tickets/Commerce/Reports/Attendees.php',
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit3984c88c5542fb513530dd03c098a3b4
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
-
call_user_func(\Composer\Autoload\
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInitad38379fa06ea34b7130e18f8a365a72
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInitad38379fa06ea34b7130e18f8a365a72', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInitad38379fa06ea34b7130e18f8a365a72', 'loadClassLoader'));
|
25 |
|
26 |
$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
|
27 |
if ($useStaticLoader) {
|
28 |
require_once __DIR__ . '/autoload_static.php';
|
29 |
|
30 |
+
call_user_func(\Composer\Autoload\ComposerStaticInitad38379fa06ea34b7130e18f8a365a72::getInitializer($loader));
|
31 |
} else {
|
32 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
33 |
foreach ($map as $namespace => $path) {
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'T' =>
|
@@ -129,6 +129,7 @@ class ComposerStaticInit3984c88c5542fb513530dd03c098a3b4
|
|
129 |
'TEC\\Tickets\\Commerce\\Notice_Handler' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Notice_Handler.php',
|
130 |
'TEC\\Tickets\\Commerce\\Order' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Order.php',
|
131 |
'TEC\\Tickets\\Commerce\\Payments_Tab' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Payments_Tab.php',
|
|
|
132 |
'TEC\\Tickets\\Commerce\\Provider' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Provider.php',
|
133 |
'TEC\\Tickets\\Commerce\\Reports\\Attendance_Totals' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Reports/Attendance_Totals.php',
|
134 |
'TEC\\Tickets\\Commerce\\Reports\\Attendees' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Reports/Attendees.php',
|
@@ -199,9 +200,9 @@ class ComposerStaticInit3984c88c5542fb513530dd03c098a3b4
|
|
199 |
public static function getInitializer(ClassLoader $loader)
|
200 |
{
|
201 |
return \Closure::bind(function () use ($loader) {
|
202 |
-
$loader->prefixLengthsPsr4 =
|
203 |
-
$loader->prefixDirsPsr4 =
|
204 |
-
$loader->classMap =
|
205 |
|
206 |
}, null, ClassLoader::class);
|
207 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInitad38379fa06ea34b7130e18f8a365a72
|
8 |
{
|
9 |
public static $prefixLengthsPsr4 = array (
|
10 |
'T' =>
|
129 |
'TEC\\Tickets\\Commerce\\Notice_Handler' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Notice_Handler.php',
|
130 |
'TEC\\Tickets\\Commerce\\Order' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Order.php',
|
131 |
'TEC\\Tickets\\Commerce\\Payments_Tab' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Payments_Tab.php',
|
132 |
+
'TEC\\Tickets\\Commerce\\Promoter_Observer' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Promoter_Observer.php',
|
133 |
'TEC\\Tickets\\Commerce\\Provider' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Provider.php',
|
134 |
'TEC\\Tickets\\Commerce\\Reports\\Attendance_Totals' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Reports/Attendance_Totals.php',
|
135 |
'TEC\\Tickets\\Commerce\\Reports\\Attendees' => __DIR__ . '/../..' . '/src/Tickets/Commerce/Reports/Attendees.php',
|
200 |
public static function getInitializer(ClassLoader $loader)
|
201 |
{
|
202 |
return \Closure::bind(function () use ($loader) {
|
203 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInitad38379fa06ea34b7130e18f8a365a72::$prefixLengthsPsr4;
|
204 |
+
$loader->prefixDirsPsr4 = ComposerStaticInitad38379fa06ea34b7130e18f8a365a72::$prefixDirsPsr4;
|
205 |
+
$loader->classMap = ComposerStaticInitad38379fa06ea34b7130e18f8a365a72::$classMap;
|
206 |
|
207 |
}, null, ClassLoader::class);
|
208 |
}
|