Version Description
Download this release
Release Info
Developer | ModernTribe |
Plugin | The Events Calendar |
Version | 4.7.1 |
Comparing to | |
See all releases |
Code changes from version 4.7.0.1 to 4.7.1
- common/readme.txt +5 -0
- common/src/Tribe/Feature_Detection.php +63 -10
- common/src/Tribe/Field.php +1 -1
- common/src/Tribe/Main.php +1 -1
- common/src/Tribe/Process/Handler.php +1 -1
- common/src/Tribe/Process/Tester.php +2 -13
- common/tribe-common.php +2 -2
- lang/the-events-calendar-cs_CZ.mo +0 -0
- lang/the-events-calendar-cs_CZ.po +5 -5
- lang/the-events-calendar-de_DE.mo +0 -0
- lang/the-events-calendar-el.mo +0 -0
- lang/the-events-calendar-el.po +4 -4
- lang/the-events-calendar-fr_FR.mo +0 -0
- lang/the-events-calendar-fr_FR.po +103 -103
- lang/the-events-calendar-gl_ES.mo +0 -0
- lang/the-events-calendar-gl_ES.po +11 -11
- lang/the-events-calendar-ro_RO.mo +0 -0
- lang/the-events-calendar-ro_RO.po +2 -2
- readme.txt +10 -2
- src/Tribe/Aggregator/Processes/Import_Events.php +29 -0
- src/Tribe/Aggregator/Record/Abstract.php +1 -1
- src/Tribe/Aggregator/Record/Async_Queue.php +5 -1
- src/Tribe/Aggregator/Record/CSV.php +16 -2
- src/Tribe/Main.php +5 -1
- src/Tribe/Query.php +10 -4
- src/Tribe/REST/V1/Endpoints/Archive_Event.php +44 -30
- src/Tribe/REST/V1/Endpoints/Archive_Organizer.php +36 -27
- src/Tribe/REST/V1/Endpoints/Archive_Venue.php +37 -27
- src/Tribe/REST/V1/Post_Repository.php +53 -0
- src/Tribe/Template/Month.php +9 -0
- src/resources/js/tribe-events-ajax-calendar.js +3 -1
- src/resources/js/tribe-events-ajax-calendar.min.js +1 -1
- src/views/month/mobile.php +2 -2
- the-events-calendar.php +1 -1
common/readme.txt
CHANGED
@@ -3,6 +3,11 @@
|
|
3 |
|
4 |
== Changelog ==
|
5 |
|
|
|
|
|
|
|
|
|
|
|
6 |
= [4.8.0.1] 2018-11-30 =
|
7 |
|
8 |
* Fix - Added safety measure to reduce risk of a fatal error when examining list of network-activated plugins [115826]
|
3 |
|
4 |
== Changelog ==
|
5 |
|
6 |
+
= [4.8.1] 2018-12-05 =
|
7 |
+
|
8 |
+
* Fix - speed up and improve robustness of the asynchronous process feature detection code [118934]
|
9 |
+
* Language - 0 new strings added, 0 updated, 1 fuzzied, and 0 obsoleted
|
10 |
+
|
11 |
= [4.8.0.1] 2018-11-30 =
|
12 |
|
13 |
* Fix - Added safety measure to reduce risk of a fatal error when examining list of network-activated plugins [115826]
|
common/src/Tribe/Feature_Detection.php
CHANGED
@@ -12,6 +12,7 @@
|
|
12 |
* @since 4.7.23
|
13 |
*/
|
14 |
class Tribe__Feature_Detection {
|
|
|
15 |
/**
|
16 |
* The name of the transient storing the support check results.
|
17 |
*
|
@@ -19,6 +20,13 @@ class Tribe__Feature_Detection {
|
|
19 |
*/
|
20 |
public static $transient = 'tribe_feature_detection';
|
21 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
/**
|
23 |
* Checks whether async, AJAX-based, background processing is supported or not.
|
24 |
*
|
@@ -52,33 +60,78 @@ class Tribe__Feature_Detection {
|
|
52 |
|
53 |
$cached = get_transient( self::$transient );
|
54 |
|
|
|
55 |
if (
|
56 |
$force
|
57 |
|| false === $cached
|
58 |
|| ( is_array( $cached ) && ! isset( $cached['supports_async_process'] ) )
|
59 |
) {
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
|
|
|
|
|
|
|
|
65 |
|
66 |
$wait_up_to = 10;
|
67 |
$start = time();
|
68 |
$supports_async_process = false;
|
|
|
69 |
|
70 |
-
while (
|
71 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
}
|
73 |
|
74 |
// Remove it not to spoof future checks.
|
75 |
-
delete_transient( $
|
|
|
|
|
76 |
|
77 |
$cached['supports_async_process'] = $supports_async_process;
|
78 |
|
79 |
set_transient( self::$transient, $cached, WEEK_IN_SECONDS );
|
80 |
}
|
81 |
|
82 |
-
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
}
|
84 |
-
}
|
12 |
* @since 4.7.23
|
13 |
*/
|
14 |
class Tribe__Feature_Detection {
|
15 |
+
|
16 |
/**
|
17 |
* The name of the transient storing the support check results.
|
18 |
*
|
20 |
*/
|
21 |
public static $transient = 'tribe_feature_detection';
|
22 |
|
23 |
+
/**
|
24 |
+
* The name of the option that will be used to indicate a feature detection is running.
|
25 |
+
*
|
26 |
+
* @var string
|
27 |
+
*/
|
28 |
+
protected $lock_option_name;
|
29 |
+
|
30 |
/**
|
31 |
* Checks whether async, AJAX-based, background processing is supported or not.
|
32 |
*
|
60 |
|
61 |
$cached = get_transient( self::$transient );
|
62 |
|
63 |
+
$this->lock_option_name = 'tribe_feature_support_check_lock';
|
64 |
if (
|
65 |
$force
|
66 |
|| false === $cached
|
67 |
|| ( is_array( $cached ) && ! isset( $cached['supports_async_process'] ) )
|
68 |
) {
|
69 |
+
if ( ! $this->has_lock() ) {
|
70 |
+
// Let's avoid race conditions by running two or more checks at the same time.
|
71 |
+
$this->lock();
|
72 |
+
/*
|
73 |
+
* Build and dispatch the tester: if it works a transient should be set.
|
74 |
+
*/
|
75 |
+
$tester = new Tribe__Process__Tester();
|
76 |
+
$tester->dispatch();
|
77 |
+
}
|
78 |
|
79 |
$wait_up_to = 10;
|
80 |
$start = time();
|
81 |
$supports_async_process = false;
|
82 |
+
$transient_name = Tribe__Process__Tester::TRANSIENT_NAME;
|
83 |
|
84 |
+
while ( time() <= $start + $wait_up_to ) {
|
85 |
+
// We want to force a refetch from the database on each check.
|
86 |
+
wp_cache_delete( $transient_name, 'transient' );
|
87 |
+
$supports_async_process = ( (bool) $transient_name );
|
88 |
+
if ( $supports_async_process ) {
|
89 |
+
break;
|
90 |
+
}
|
91 |
+
sleep( $wait_up_to / 5 );
|
92 |
}
|
93 |
|
94 |
// Remove it not to spoof future checks.
|
95 |
+
delete_transient( $transient_name );
|
96 |
+
|
97 |
+
$this->unlock();
|
98 |
|
99 |
$cached['supports_async_process'] = $supports_async_process;
|
100 |
|
101 |
set_transient( self::$transient, $cached, WEEK_IN_SECONDS );
|
102 |
}
|
103 |
|
104 |
+
return $cached['supports_async_process'];
|
105 |
+
}
|
106 |
+
|
107 |
+
/**
|
108 |
+
* Sets the lock option to `1` to indicate a feature detection is running.
|
109 |
+
*
|
110 |
+
* @since 4.8.1
|
111 |
+
*/
|
112 |
+
protected function lock() {
|
113 |
+
update_option( $this->lock_option_name, '1' );
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* Deletes the lock option to indicate the current feature detection process is done.
|
118 |
+
*
|
119 |
+
* @since 4.8.1
|
120 |
+
*/
|
121 |
+
protected function unlock() {
|
122 |
+
delete_option( $this->lock_option_name );
|
123 |
+
}
|
124 |
+
|
125 |
+
/**
|
126 |
+
* Checks whether a feature detection lock is currently in place or not.
|
127 |
+
*
|
128 |
+
* @since 4.8.1
|
129 |
+
*
|
130 |
+
* @return bool Whether a feature detection lock is currently in place or not.
|
131 |
+
*/
|
132 |
+
protected function has_lock() {
|
133 |
+
$lock_option = get_option( $this->lock_option_name );
|
134 |
+
|
135 |
+
return ! empty( $lock_option );
|
136 |
}
|
137 |
+
}
|
common/src/Tribe/Field.php
CHANGED
@@ -245,7 +245,7 @@ if ( ! class_exists( 'Tribe__Field' ) ) {
|
|
245 |
$return .= ( $this->error ) ? ' tribe-error' : '';
|
246 |
$return .= ( $this->size ) ? ' tribe-size-' . $this->size : '';
|
247 |
$return .= ( $this->class ) ? ' ' . $this->class . '"' : '"';
|
248 |
-
$return .= ( $this->fieldset_attributes ) ? ' ' . $this->do_fieldset_attributes()
|
249 |
$return .= '>';
|
250 |
|
251 |
return apply_filters( 'tribe_field_start', $return, $this->id, $this->type, $this->error, $this->class, $this );
|
245 |
$return .= ( $this->error ) ? ' tribe-error' : '';
|
246 |
$return .= ( $this->size ) ? ' tribe-size-' . $this->size : '';
|
247 |
$return .= ( $this->class ) ? ' ' . $this->class . '"' : '"';
|
248 |
+
$return .= ( $this->fieldset_attributes ) ? ' ' . $this->do_fieldset_attributes() : '';
|
249 |
$return .= '>';
|
250 |
|
251 |
return apply_filters( 'tribe_field_start', $return, $this->id, $this->type, $this->error, $this->class, $this );
|
common/src/Tribe/Main.php
CHANGED
@@ -17,7 +17,7 @@ class Tribe__Main {
|
|
17 |
const OPTIONNAME = 'tribe_events_calendar_options';
|
18 |
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
19 |
|
20 |
-
const VERSION = '4.8.
|
21 |
|
22 |
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
23 |
|
17 |
const OPTIONNAME = 'tribe_events_calendar_options';
|
18 |
const OPTIONNAMENETWORK = 'tribe_events_calendar_network_options';
|
19 |
|
20 |
+
const VERSION = '4.8.1';
|
21 |
|
22 |
const FEED_URL = 'https://theeventscalendar.com/feed/';
|
23 |
|
common/src/Tribe/Process/Handler.php
CHANGED
@@ -55,7 +55,7 @@ abstract class Tribe__Process__Handler extends WP_Async_Request {
|
|
55 |
*/
|
56 |
public function __construct( ) {
|
57 |
$class = get_class( $this );
|
58 |
-
$this->action = $class
|
59 |
parent::__construct();
|
60 |
|
61 |
$this->cron_hook_identifier = $this->identifier;
|
55 |
*/
|
56 |
public function __construct( ) {
|
57 |
$class = get_class( $this );
|
58 |
+
$this->action = call_user_func( array( $class, 'action' ) );
|
59 |
parent::__construct();
|
60 |
|
61 |
$this->cron_hook_identifier = $this->identifier;
|
common/src/Tribe/Process/Tester.php
CHANGED
@@ -12,7 +12,7 @@ class Tribe__Process__Tester extends Tribe__Process__Handler {
|
|
12 |
*
|
13 |
* @var
|
14 |
*/
|
15 |
-
|
16 |
|
17 |
/**
|
18 |
* Handles the process immediately, not in an async manner.
|
@@ -32,17 +32,6 @@ class Tribe__Process__Tester extends Tribe__Process__Handler {
|
|
32 |
return null;
|
33 |
}
|
34 |
|
35 |
-
/**
|
36 |
-
* Returns the name of the transient this class will set as part of its test.
|
37 |
-
*
|
38 |
-
* @since 4.7.23
|
39 |
-
*
|
40 |
-
* @return string The set transient name.
|
41 |
-
*/
|
42 |
-
public function get_canary_transient() {
|
43 |
-
return $this->transient_name;
|
44 |
-
}
|
45 |
-
|
46 |
/**
|
47 |
* Call the dispatch method, in its vanilla form, as the base class would.
|
48 |
*
|
@@ -88,7 +77,7 @@ class Tribe__Process__Tester extends Tribe__Process__Handler {
|
|
88 |
* @since 4.7.23
|
89 |
*/
|
90 |
protected function handle() {
|
91 |
-
set_transient(
|
92 |
}
|
93 |
|
94 |
/**
|
12 |
*
|
13 |
* @var
|
14 |
*/
|
15 |
+
const TRANSIENT_NAME = 'tribe_supports_async_process';
|
16 |
|
17 |
/**
|
18 |
* Handles the process immediately, not in an async manner.
|
32 |
return null;
|
33 |
}
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
/**
|
36 |
* Call the dispatch method, in its vanilla form, as the base class would.
|
37 |
*
|
77 |
* @since 4.7.23
|
78 |
*/
|
79 |
protected function handle() {
|
80 |
+
set_transient( self::TRANSIENT_NAME, 1, HOUR_IN_SECONDS );
|
81 |
}
|
82 |
|
83 |
/**
|
common/tribe-common.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
-
|
2 |
/*
|
3 |
Description: An event settings framework for managing shared options
|
4 |
-
Version: 4.8.
|
5 |
Author: Modern Tribe, Inc.
|
6 |
Author URI: http://m.tri.be/1x
|
7 |
Text Domain: tribe-common
|
1 |
+
4.18.<?php
|
2 |
/*
|
3 |
Description: An event settings framework for managing shared options
|
4 |
+
Version: 4.8.1
|
5 |
Author: Modern Tribe, Inc.
|
6 |
Author URI: http://m.tri.be/1x
|
7 |
Text Domain: tribe-common
|
lang/the-events-calendar-cs_CZ.mo
CHANGED
Binary file
|
lang/the-events-calendar-cs_CZ.po
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -6172,7 +6172,7 @@ msgstr "Importování Akcí"
|
|
6172 |
#: src/modules/blocks/event-links/template.js:101
|
6173 |
#: src/resources/js/app/blocks.js:48525
|
6174 |
msgid "Share Settings"
|
6175 |
-
msgstr ""
|
6176 |
|
6177 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6178 |
msgid "Draft"
|
@@ -6294,7 +6294,7 @@ msgstr "Název:"
|
|
6294 |
|
6295 |
#: src/resources/js/app/blocks.js:47396
|
6296 |
msgid "Show Google Maps Link"
|
6297 |
-
msgstr ""
|
6298 |
|
6299 |
#: src/admin-views/create-venue-fields.php:166
|
6300 |
#: src/admin-views/venue-meta-box.php:136
|
@@ -6749,12 +6749,12 @@ msgstr "Výchozí šablona akcí"
|
|
6749 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6750 |
#: src/resources/js/app/blocks.js:45080
|
6751 |
msgid "Price: "
|
6752 |
-
msgstr ""
|
6753 |
|
6754 |
#: common/src/modules/elements/image-upload/element.js:46
|
6755 |
#: common/src/resources/js/app/elements.js:59497
|
6756 |
msgid "remove"
|
6757 |
-
msgstr ""
|
6758 |
|
6759 |
#: common/src/admin-views/event-log.php:65
|
6760 |
msgid "View"
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"PO-Revision-Date: 2018-12-02 22:12:10+0000\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
6172 |
#: src/modules/blocks/event-links/template.js:101
|
6173 |
#: src/resources/js/app/blocks.js:48525
|
6174 |
msgid "Share Settings"
|
6175 |
+
msgstr "Uložit nastavení"
|
6176 |
|
6177 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6178 |
msgid "Draft"
|
6294 |
|
6295 |
#: src/resources/js/app/blocks.js:47396
|
6296 |
msgid "Show Google Maps Link"
|
6297 |
+
msgstr "Zobrazit odkaz na Google Mapy:"
|
6298 |
|
6299 |
#: src/admin-views/create-venue-fields.php:166
|
6300 |
#: src/admin-views/venue-meta-box.php:136
|
6749 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6750 |
#: src/resources/js/app/blocks.js:45080
|
6751 |
msgid "Price: "
|
6752 |
+
msgstr "Cena:"
|
6753 |
|
6754 |
#: common/src/modules/elements/image-upload/element.js:46
|
6755 |
#: common/src/resources/js/app/elements.js:59497
|
6756 |
msgid "remove"
|
6757 |
+
msgstr "Odstranit"
|
6758 |
|
6759 |
#: common/src/admin-views/event-log.php:65
|
6760 |
msgid "View"
|
lang/the-events-calendar-de_DE.mo
CHANGED
Binary file
|
lang/the-events-calendar-el.mo
CHANGED
Binary file
|
lang/the-events-calendar-el.po
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -6143,7 +6143,7 @@ msgstr "Εισαγωγή εκδηλώσεων"
|
|
6143 |
#: src/modules/blocks/event-links/template.js:101
|
6144 |
#: src/resources/js/app/blocks.js:48525
|
6145 |
msgid "Share Settings"
|
6146 |
-
msgstr ""
|
6147 |
|
6148 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6149 |
msgid "Draft"
|
@@ -6264,7 +6264,7 @@ msgstr "Τίτλος:"
|
|
6264 |
|
6265 |
#: src/resources/js/app/blocks.js:47396
|
6266 |
msgid "Show Google Maps Link"
|
6267 |
-
msgstr ""
|
6268 |
|
6269 |
#: src/admin-views/create-venue-fields.php:166
|
6270 |
#: src/admin-views/venue-meta-box.php:136
|
@@ -6719,7 +6719,7 @@ msgstr "Προεπιλεγμένο Πρότυπο Εκδηλώσεων"
|
|
6719 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6720 |
#: src/resources/js/app/blocks.js:45080
|
6721 |
msgid "Price: "
|
6722 |
-
msgstr ""
|
6723 |
|
6724 |
#: common/src/modules/elements/image-upload/element.js:46
|
6725 |
#: common/src/resources/js/app/elements.js:59497
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"PO-Revision-Date: 2018-12-03 10:34:43+0000\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
6143 |
#: src/modules/blocks/event-links/template.js:101
|
6144 |
#: src/resources/js/app/blocks.js:48525
|
6145 |
msgid "Share Settings"
|
6146 |
+
msgstr "Αποθήκευση ρυθμίσεων"
|
6147 |
|
6148 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6149 |
msgid "Draft"
|
6264 |
|
6265 |
#: src/resources/js/app/blocks.js:47396
|
6266 |
msgid "Show Google Maps Link"
|
6267 |
+
msgstr "Εμφάνιση Συνδέσμου Χαρτών Google"
|
6268 |
|
6269 |
#: src/admin-views/create-venue-fields.php:166
|
6270 |
#: src/admin-views/venue-meta-box.php:136
|
6719 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6720 |
#: src/resources/js/app/blocks.js:45080
|
6721 |
msgid "Price: "
|
6722 |
+
msgstr "Τιμή:"
|
6723 |
|
6724 |
#: common/src/modules/elements/image-upload/element.js:46
|
6725 |
#: common/src/resources/js/app/elements.js:59497
|
lang/the-events-calendar-fr_FR.mo
CHANGED
Binary file
|
lang/the-events-calendar-fr_FR.po
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -13,51 +13,51 @@ msgstr ""
|
|
13 |
|
14 |
#: src/resources/js/app/blocks.js:48214
|
15 |
msgid "Edit Organizer"
|
16 |
-
msgstr ""
|
17 |
|
18 |
#: src/resources/js/app/blocks.js:48211
|
19 |
msgid "Organizer Settings"
|
20 |
-
msgstr ""
|
21 |
|
22 |
#: src/resources/js/app/blocks.js:48137
|
23 |
msgid "Add or find an organizer"
|
24 |
-
msgstr ""
|
25 |
|
26 |
#: src/resources/js/app/blocks.js:47979
|
27 |
msgid "Add email"
|
28 |
-
msgstr ""
|
29 |
|
30 |
#: src/resources/js/app/blocks.js:47972
|
31 |
msgid "Add website"
|
32 |
-
msgstr ""
|
33 |
|
34 |
#: src/resources/js/app/blocks.js:47965
|
35 |
msgid "Add Phone"
|
36 |
-
msgstr ""
|
37 |
|
38 |
#: src/resources/js/app/blocks.js:47394
|
39 |
msgid "Venue Settings"
|
40 |
-
msgstr ""
|
41 |
|
42 |
#: src/resources/js/app/blocks.js:47272
|
43 |
msgid "Add or find a venue"
|
44 |
-
msgstr ""
|
45 |
|
46 |
#: src/resources/js/app/blocks.js:46934
|
47 |
msgid "(Untitled Venue)"
|
48 |
-
msgstr ""
|
49 |
|
50 |
#: src/resources/js/app/blocks.js:46387
|
51 |
msgid "Multi-Day"
|
52 |
-
msgstr ""
|
53 |
|
54 |
#: src/resources/js/app/blocks.js:45448
|
55 |
msgid "Show Time Zone"
|
56 |
-
msgstr ""
|
57 |
|
58 |
#: src/resources/js/app/blocks.js:45441
|
59 |
msgid "Time Zone"
|
60 |
-
msgstr ""
|
61 |
|
62 |
#: src/resources/js/app/blocks.js:45434
|
63 |
msgid "Time Range Separator"
|
@@ -69,27 +69,27 @@ msgstr ""
|
|
69 |
|
70 |
#: src/resources/js/app/blocks.js:13219 src/resources/js/app/elements.js:9845
|
71 |
msgid "Add or Find"
|
72 |
-
msgstr ""
|
73 |
|
74 |
#: src/resources/js/app/blocks.js:12598 src/resources/js/app/elements.js:9224
|
75 |
msgid "A Google Map API KEY is required to view the map"
|
76 |
-
msgstr ""
|
77 |
|
78 |
#: src/resources/js/app/blocks.js:12479 src/resources/js/app/elements.js:9105
|
79 |
msgid "The map does not have valid coordinates nor a valid address"
|
80 |
-
msgstr ""
|
81 |
|
82 |
#: src/resources/js/app/blocks.js:12389 src/resources/js/app/elements.js:9015
|
83 |
msgid "Make sure Google Maps Library is included on this page."
|
84 |
-
msgstr ""
|
85 |
|
86 |
#: src/resources/js/app/blocks.js:11712 src/resources/js/app/elements.js:8338
|
87 |
msgid "Country"
|
88 |
-
msgstr ""
|
89 |
|
90 |
#: src/resources/js/app/blocks.js:11444 src/resources/js/app/elements.js:8070
|
91 |
msgid "Name:"
|
92 |
-
msgstr ""
|
93 |
|
94 |
#: src/modules/blocks/event-datetime/subblocks/content/index.js:23
|
95 |
#: src/resources/js/app/blocks.js:46184
|
@@ -107,7 +107,7 @@ msgstr ""
|
|
107 |
#: src/resources/js/app/blocks.js:46185 src/resources/js/app/blocks.js:46660
|
108 |
#: src/resources/js/app/blocks.js:46745
|
109 |
msgid "Define the date, time, and duration for your event."
|
110 |
-
msgstr ""
|
111 |
|
112 |
#: src/modules/blocks/event-datetime/index.js:27
|
113 |
#: src/resources/js/app/blocks.js:46744
|
@@ -117,27 +117,27 @@ msgstr ""
|
|
117 |
#: src/modules/blocks/event-website/index.js:22
|
118 |
#: src/resources/js/app/blocks.js:49446
|
119 |
msgid "Is there another website for this event? Link to it with a button!"
|
120 |
-
msgstr ""
|
121 |
|
122 |
#: src/modules/blocks/event-website/template.js:26
|
123 |
#: src/resources/js/app/blocks.js:49305
|
124 |
msgid "Add Event Website"
|
125 |
-
msgstr ""
|
126 |
|
127 |
#: src/modules/blocks/event-links/index.js:22
|
128 |
#: src/resources/js/app/blocks.js:48614
|
129 |
msgid "Encourage visitors to add your event to their calendars with handy sharing buttons."
|
130 |
-
msgstr ""
|
131 |
|
132 |
#: src/modules/blocks/event-links/index.js:21
|
133 |
#: src/resources/js/app/blocks.js:48613
|
134 |
msgid "Event Sharing"
|
135 |
-
msgstr ""
|
136 |
|
137 |
#: src/modules/blocks/event-links/template.js:108
|
138 |
#: src/resources/js/app/blocks.js:48532
|
139 |
msgid "iCal"
|
140 |
-
msgstr ""
|
141 |
|
142 |
#: src/resources/js/app/blocks.js:47401
|
143 |
msgid "Show Google Maps Embed"
|
@@ -146,27 +146,27 @@ msgstr ""
|
|
146 |
#: src/modules/blocks/event-category/index.js:22
|
147 |
#: src/resources/js/app/blocks.js:49143
|
148 |
msgid "Show assigned event categories as links to their respective archives."
|
149 |
-
msgstr ""
|
150 |
|
151 |
#: src/modules/blocks/event-category/index.js:21
|
152 |
#: src/resources/js/app/blocks.js:49142
|
153 |
msgid "Event Categories"
|
154 |
-
msgstr ""
|
155 |
|
156 |
#: src/modules/blocks/event-category/block.js:46
|
157 |
#: src/resources/js/app/blocks.js:49112
|
158 |
msgid "Add Event Categories in document settings"
|
159 |
-
msgstr ""
|
160 |
|
161 |
#: src/modules/blocks/featured-image/index.js:22
|
162 |
#: src/resources/js/app/blocks.js:49610
|
163 |
msgid "Display the featured image in the post content."
|
164 |
-
msgstr ""
|
165 |
|
166 |
#: src/modules/blocks/featured-image/block.js:80
|
167 |
#: src/resources/js/app/blocks.js:49562
|
168 |
msgid "Loading the Image"
|
169 |
-
msgstr ""
|
170 |
|
171 |
#: src/modules/blocks/featured-image/block.js:65
|
172 |
#: src/resources/js/app/blocks.js:49551
|
@@ -177,7 +177,7 @@ msgstr ""
|
|
177 |
#: src/modules/blocks/featured-image/index.js:21
|
178 |
#: src/resources/js/app/blocks.js:49542 src/resources/js/app/blocks.js:49609
|
179 |
msgid "Featured Image"
|
180 |
-
msgstr ""
|
181 |
|
182 |
#: src/modules/blocks/event-tags/index.js:22
|
183 |
#: src/resources/js/app/blocks.js:49255
|
@@ -193,74 +193,74 @@ msgstr ""
|
|
193 |
#: src/modules/blocks/event-tags/index.js:21
|
194 |
#: src/resources/js/app/blocks.js:49223 src/resources/js/app/blocks.js:49254
|
195 |
msgid "Tags"
|
196 |
-
msgstr ""
|
197 |
|
198 |
#: src/modules/blocks/event-venue/index.js:18
|
199 |
#: src/resources/js/app/blocks.js:47617
|
200 |
msgid "Where is this event happening? Select or create a location."
|
201 |
-
msgstr ""
|
202 |
|
203 |
#: src/modules/blocks/event-venue/index.js:17
|
204 |
#: src/resources/js/app/blocks.js:47616
|
205 |
msgid "Event Venue"
|
206 |
-
msgstr ""
|
207 |
|
208 |
#: src/modules/blocks/event-price/index.js:18
|
209 |
#: src/resources/js/app/blocks.js:49019
|
210 |
msgid "Let visitors know the cost of this event or if it’s free to attend."
|
211 |
-
msgstr ""
|
212 |
|
213 |
#: src/modules/blocks/event-price/index.js:17
|
214 |
#: src/resources/js/app/blocks.js:49018
|
215 |
msgid "Event Price"
|
216 |
-
msgstr ""
|
217 |
|
218 |
#: src/modules/blocks/event-price/template.js:156
|
219 |
#: src/resources/js/app/blocks.js:48830
|
220 |
msgid "Currency symbol follows price"
|
221 |
-
msgstr ""
|
222 |
|
223 |
#: src/modules/blocks/event-price/template.js:123
|
224 |
#: src/resources/js/app/blocks.js:48791
|
225 |
msgid "enter 0 as price for free events"
|
226 |
-
msgstr ""
|
227 |
|
228 |
#: src/modules/blocks/event-price/template.js:117
|
229 |
#: src/resources/js/app/blocks.js:48783
|
230 |
msgid "Description"
|
231 |
-
msgstr ""
|
232 |
|
233 |
#: src/modules/blocks/event-price/template.js:109
|
234 |
#: src/resources/js/app/blocks.js:48775
|
235 |
msgid "Fixed Price or Range"
|
236 |
-
msgstr ""
|
237 |
|
238 |
#: src/modules/blocks/event-price/template.js:43
|
239 |
#: src/resources/js/app/blocks.js:48696
|
240 |
msgid "Add Price"
|
241 |
-
msgstr ""
|
242 |
|
243 |
#: src/modules/blocks/classic-event-details/event-details-organizers/event-details-organizer/template.js:40
|
244 |
#: src/resources/js/app/blocks.js:44712
|
245 |
msgid "Remove Organizer"
|
246 |
-
msgstr ""
|
247 |
|
248 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:62
|
249 |
#: src/resources/js/app/blocks.js:44842
|
250 |
msgid "Add existing Organizer"
|
251 |
-
msgstr ""
|
252 |
|
253 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:61
|
254 |
#: src/resources/js/app/blocks.js:44841
|
255 |
msgid "Search for an organizer"
|
256 |
-
msgstr ""
|
257 |
|
258 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:25
|
259 |
#: src/resources/js/app/blocks.js:11429 src/resources/js/app/blocks.js:11538
|
260 |
#: src/resources/js/app/blocks.js:44791 src/resources/js/app/elements.js:8055
|
261 |
#: src/resources/js/app/elements.js:8164
|
262 |
msgid "Create Organizer"
|
263 |
-
msgstr ""
|
264 |
|
265 |
#: src/modules/blocks/classic-event-details/index.js:22
|
266 |
#: src/resources/js/app/blocks.js:45285
|
@@ -276,64 +276,64 @@ msgstr ""
|
|
276 |
#: src/modules/blocks/event-price/template.js:152
|
277 |
#: src/resources/js/app/blocks.js:45170 src/resources/js/app/blocks.js:48826
|
278 |
msgid "E.g.: $"
|
279 |
-
msgstr ""
|
280 |
|
281 |
#: src/modules/blocks/classic-event-details/template.js:191
|
282 |
#: src/modules/blocks/event-price/template.js:150
|
283 |
#: src/resources/js/app/blocks.js:45168 src/resources/js/app/blocks.js:48824
|
284 |
msgid " Currency Symbol"
|
285 |
-
msgstr ""
|
286 |
|
287 |
#: src/modules/blocks/classic-event-details/template.js:186
|
288 |
#: src/resources/js/app/blocks.js:45163
|
289 |
msgid "Show symbol before"
|
290 |
-
msgstr ""
|
291 |
|
292 |
#: src/modules/blocks/classic-event-details/template.js:184
|
293 |
#: src/modules/blocks/event-price/template.js:147
|
294 |
#: src/resources/js/app/blocks.js:45161 src/resources/js/app/blocks.js:48821
|
295 |
msgid "Price Settings"
|
296 |
-
msgstr ""
|
297 |
|
298 |
#: src/modules/blocks/classic-event-details/template.js:179
|
299 |
#: src/resources/js/app/blocks.js:45154
|
300 |
msgid "Is All Day Event"
|
301 |
-
msgstr ""
|
302 |
|
303 |
#: src/modules/blocks/classic-event-details/template.js:177
|
304 |
#: src/resources/js/app/blocks.js:45152 src/resources/js/app/blocks.js:45425
|
305 |
msgid "Date Time Settings"
|
306 |
-
msgstr ""
|
307 |
|
308 |
#: src/modules/blocks/classic-event-details/template.js:156
|
309 |
#: src/resources/js/app/blocks.js:45129
|
310 |
msgid "Event Category:"
|
311 |
-
msgstr ""
|
312 |
|
313 |
#: src/modules/blocks/classic-event-details/template.js:122
|
314 |
#: src/resources/js/app/blocks.js:45091 src/resources/js/app/blocks.js:45895
|
315 |
msgid "Enter price"
|
316 |
-
msgstr ""
|
317 |
|
318 |
#: src/modules/blocks/classic-event-details/template.js:101
|
319 |
#: src/resources/js/app/blocks.js:45060
|
320 |
msgid "Enter url"
|
321 |
-
msgstr ""
|
322 |
|
323 |
#: src/modules/blocks/classic-event-details/template.js:97
|
324 |
#: src/resources/js/app/blocks.js:45054
|
325 |
msgid "Website: "
|
326 |
-
msgstr ""
|
327 |
|
328 |
#: src/modules/blocks/classic-event-details/template.js:79
|
329 |
#: src/resources/js/app/blocks.js:45022
|
330 |
msgid "End: "
|
331 |
-
msgstr ""
|
332 |
|
333 |
#: src/modules/blocks/classic-event-details/template.js:57
|
334 |
#: src/resources/js/app/blocks.js:44982
|
335 |
msgid "Start: "
|
336 |
-
msgstr ""
|
337 |
|
338 |
#: src/modules/blocks/event-organizer/index.js:17
|
339 |
#: src/resources/js/app/blocks.js:48388
|
@@ -343,34 +343,34 @@ msgstr ""
|
|
343 |
#: src/modules/blocks/event-organizer/index.js:16
|
344 |
#: src/resources/js/app/blocks.js:48387
|
345 |
msgid "Event Organizer"
|
346 |
-
msgstr ""
|
347 |
|
348 |
#: src/modules/data/blocks/price/reducer.js:23
|
349 |
#: src/resources/js/app/data.js:9364 src/resources/js/app/blocks.js:10508
|
350 |
msgid "$"
|
351 |
-
msgstr ""
|
352 |
|
353 |
#: src/modules/data/blocks/datetime/reducer.js:23
|
354 |
#: src/resources/js/app/data.js:6796 src/resources/js/app/blocks.js:6842
|
355 |
msgid "-"
|
356 |
-
msgstr ""
|
357 |
|
358 |
#: src/modules/data/blocks/datetime/reducer.js:22
|
359 |
#: src/resources/js/app/data.js:6795 src/resources/js/app/blocks.js:6841
|
360 |
msgid "@"
|
361 |
-
msgstr ""
|
362 |
|
363 |
#: src/modules/elements/terms-list/element.js:128
|
364 |
#: src/resources/js/app/blocks.js:11214 src/resources/js/app/elements.js:7840
|
365 |
msgid ", "
|
366 |
-
msgstr ""
|
367 |
|
368 |
#: src/modules/elements/terms-list/element.js:45
|
369 |
#: src/modules/blocks/classic-event-details/event-details-organizers/event-details-organizer/template.js:26
|
370 |
#: src/resources/js/app/blocks.js:11083 src/resources/js/app/blocks.js:44700
|
371 |
#: src/resources/js/app/elements.js:7709
|
372 |
msgid "(Untitled)"
|
373 |
-
msgstr ""
|
374 |
|
375 |
#: src/modules/elements/upsell/element.js:33
|
376 |
#: src/resources/js/app/blocks.js:13490 src/resources/js/app/elements.js:10116
|
@@ -387,19 +387,19 @@ msgstr ""
|
|
387 |
#: common/src/resources/js/app/elements.js:9791
|
388 |
#: common/src/resources/js/app/utils.js:7339
|
389 |
msgid "at"
|
390 |
-
msgstr ""
|
391 |
|
392 |
#: src/views/blocks/event-datetime.php:80
|
393 |
msgid "All day"
|
394 |
-
msgstr ""
|
395 |
|
396 |
#: src/views/modules/bar.php:51
|
397 |
msgid "Hide %s Search"
|
398 |
-
msgstr ""
|
399 |
|
400 |
#: src/views/modules/bar.php:50 src/views/modules/bar.php:54
|
401 |
msgid "Show %s Search"
|
402 |
-
msgstr ""
|
403 |
|
404 |
#: src/admin-views/aggregator/settings.php:159
|
405 |
#: src/admin-views/aggregator/settings.php:268
|
@@ -409,33 +409,33 @@ msgstr ""
|
|
409 |
#: src/admin-views/aggregator/settings.php:456
|
410 |
#: src/admin-views/aggregator/settings.php:524
|
411 |
msgid "Show Map"
|
412 |
-
msgstr ""
|
413 |
|
414 |
#: src/admin-views/tribe-options-general.php:243
|
415 |
msgid "Enable Maps"
|
416 |
-
msgstr ""
|
417 |
|
418 |
#: src/admin-views/create-venue-fields.php:257
|
419 |
msgid "Show Map Link?"
|
420 |
-
msgstr ""
|
421 |
|
422 |
#: src/admin-views/create-venue-fields.php:248
|
423 |
#: src/admin-views/create-venue-fields.php:285
|
424 |
#: src/admin-views/venue-meta-box.php:202
|
425 |
#: src/admin-views/venue-meta-box.php:238
|
426 |
msgid "Show Map Link:"
|
427 |
-
msgstr ""
|
428 |
|
429 |
#: src/admin-views/create-venue-fields.php:239
|
430 |
msgid "Show Map?"
|
431 |
-
msgstr ""
|
432 |
|
433 |
#: src/admin-views/create-venue-fields.php:230
|
434 |
#: src/admin-views/create-venue-fields.php:268
|
435 |
#: src/admin-views/venue-meta-box.php:185
|
436 |
#: src/admin-views/venue-meta-box.php:221
|
437 |
msgid "Show Map:"
|
438 |
-
msgstr ""
|
439 |
|
440 |
#: src/Tribe/Editor/Compatibility.php:118
|
441 |
msgid "Hidden Blocks Editor Config"
|
@@ -447,7 +447,7 @@ msgstr ""
|
|
447 |
|
448 |
#: src/Tribe/Editor/Compatibility.php:110
|
449 |
msgid "Activate Block Editor for Events"
|
450 |
-
msgstr ""
|
451 |
|
452 |
#: src/Tribe/Editor/Blocks/Event_Website.php:26
|
453 |
msgid "Add Button Text"
|
@@ -455,11 +455,11 @@ msgstr ""
|
|
455 |
|
456 |
#: src/Tribe/Editor/Meta.php:61 src/Tribe/Editor/Meta.php:70
|
457 |
msgid "Event Organizers"
|
458 |
-
msgstr ""
|
459 |
|
460 |
#: src/Tribe/Aggregator/Record/CSV.php:104
|
461 |
msgid "Unknown Column "
|
462 |
-
msgstr ""
|
463 |
|
464 |
#: src/Tribe/Aggregator/Record/Queue_Processor.php:288
|
465 |
msgid "There was an error building the record queue: "
|
@@ -467,11 +467,11 @@ msgstr ""
|
|
467 |
|
468 |
#: src/Tribe/Admin/Notice/Marketing.php:114
|
469 |
msgid "Try Events Gutenberg"
|
470 |
-
msgstr ""
|
471 |
|
472 |
#: src/Tribe/Admin/Notice/Marketing.php:106
|
473 |
msgid "Download the eBook"
|
474 |
-
msgstr ""
|
475 |
|
476 |
#: src/Tribe/Admin/Notice/Marketing.php:100
|
477 |
msgid "Get up to speed with our comprehensive Guide to Gutenberg ebook, then see how events and tickets will behave in the block editor by installing our free Events Gutenberg extension."
|
@@ -479,11 +479,11 @@ msgstr ""
|
|
479 |
|
480 |
#: src/Tribe/Admin/Notice/Marketing.php:95
|
481 |
msgid "WordPress 5.0 is coming soon, and with it, the arrival of the new block editor interface."
|
482 |
-
msgstr ""
|
483 |
|
484 |
#: src/Tribe/Admin/Notice/Marketing.php:91
|
485 |
msgid "<strong>The Events Calendar & Gutenberg</strong>"
|
486 |
-
msgstr ""
|
487 |
|
488 |
#: src/Tribe/Main.php:1464
|
489 |
msgid "When running version %1$s of The Events Calendar alongside %2$s, %2$s must be version %3$s or greater. Please %4$smanually update now.%5$s"
|
@@ -491,37 +491,37 @@ msgstr ""
|
|
491 |
|
492 |
#: src/Tribe/Google/Maps_API_Key.php:107
|
493 |
msgid "(click here for details)"
|
494 |
-
msgstr ""
|
495 |
|
496 |
#: src/Tribe/Editor.php:534
|
497 |
msgid "Event Blocks"
|
498 |
-
msgstr ""
|
499 |
|
500 |
#: src/Tribe/Editor.php:258 src/Tribe/Editor.php:301
|
501 |
msgid "Add Description..."
|
502 |
-
msgstr ""
|
503 |
|
504 |
#: common/src/Tribe/Editor/Configuration.php:97
|
505 |
msgid "F j, Y g:i a"
|
506 |
-
msgstr ""
|
507 |
|
508 |
#: common/src/Tribe/Editor/Configuration.php:96
|
509 |
#: src/resources/js/app/blocks.js:45852 src/resources/js/app/blocks.js:46326
|
510 |
msgid "F j"
|
511 |
-
msgstr ""
|
512 |
|
513 |
#: common/src/Tribe/Editor/Configuration.php:95
|
514 |
msgid "F j, Y"
|
515 |
-
msgstr ""
|
516 |
|
517 |
#: common/src/Tribe/Editor/Configuration.php:94
|
518 |
msgid "g:i a"
|
519 |
-
msgstr ""
|
520 |
|
521 |
#. translators: %s: duration
|
522 |
#: common/src/Tribe/Editor/Configuration.php:90
|
523 |
msgid "%s ago"
|
524 |
-
msgstr ""
|
525 |
|
526 |
#. translators: %s: duration
|
527 |
#: common/src/Tribe/Editor/Configuration.php:88
|
@@ -530,7 +530,7 @@ msgstr ""
|
|
530 |
|
531 |
#: common/src/Tribe/Editor/Blocks/Abstract.php:127
|
532 |
msgid "Problem loading the block, please remove this block to restart."
|
533 |
-
msgstr ""
|
534 |
|
535 |
#: common/src/Tribe/Editor/Meta.php:123
|
536 |
msgid "Text Array"
|
@@ -542,11 +542,11 @@ msgstr ""
|
|
542 |
|
543 |
#: src/admin-views/tribe-options-general.php:69
|
544 |
msgid "Enable WordPress Custom Fields on Events."
|
545 |
-
msgstr ""
|
546 |
|
547 |
#: src/admin-views/tribe-options-general.php:68
|
548 |
msgid "Show Custom Fields metabox"
|
549 |
-
msgstr ""
|
550 |
|
551 |
#: src/admin-views/tribe-options-display.php:139
|
552 |
msgid "Please note that you are using The Events Calendar's default Google Maps API key, which will limit the Map View's functionality. Visit %sthe API Settings page%s to learn more and add your own Google Maps API key."
|
@@ -554,7 +554,7 @@ msgstr ""
|
|
554 |
|
555 |
#: src/admin-views/aggregator/settings.php:230
|
556 |
msgid "Stop current processes"
|
557 |
-
msgstr ""
|
558 |
|
559 |
#: src/admin-views/aggregator/settings.php:219
|
560 |
msgid "The Asynchronous import process is faster and does not rely on WordPress Cron but might not work correctly in all WordPress installations, try switching to the Cron-based process for maximum compatibility."
|
@@ -574,11 +574,11 @@ msgstr ""
|
|
574 |
|
575 |
#: src/admin-views/aggregator/origins/eventbrite.php:127
|
576 |
msgid "Import from Eventbrite URL"
|
577 |
-
msgstr ""
|
578 |
|
579 |
#: src/Tribe/Google/Maps_API_Key.php:109
|
580 |
msgid "to create your own free Google Maps API key."
|
581 |
-
msgstr ""
|
582 |
|
583 |
#: src/Tribe/Google/Maps_API_Key.php:106
|
584 |
msgid "If you do not add your own API key, the built-in API key will always populate this field and some map-related functionality will be limited "
|
@@ -586,7 +586,7 @@ msgstr ""
|
|
586 |
|
587 |
#: src/Tribe/Google/Maps_API_Key.php:105
|
588 |
msgid "You are using The Events Calendar's built-in Google Maps API key."
|
589 |
-
msgstr ""
|
590 |
|
591 |
#: src/Tribe/Google/Maps_API_Key.php:77
|
592 |
msgid "Read More"
|
@@ -1281,7 +1281,7 @@ msgstr "L'URL actuelle de votre page d'événements est %1$s.<br><br>Vous ne pou
|
|
1281 |
|
1282 |
#: src/admin-views/tribe-options-display.php:61
|
1283 |
msgid "There are going to be situations where no out-of-the-box template is 100% perfect. Check out our <a href=\"%s\">our themer's guide</a> for instructions on custom modifications."
|
1284 |
-
msgstr "Il va y avoir des situations où aucun modèle
|
1285 |
|
1286 |
#: src/admin-views/tribe-options-display.php:58
|
1287 |
msgid "The settings below control the display of your calendar. If things don't look right, try switching between the three style sheet options or pick a page template from your theme."
|
@@ -2236,7 +2236,7 @@ msgstr "Autres URL"
|
|
2236 |
|
2237 |
#: src/admin-views/aggregator/settings.php:481
|
2238 |
msgid "Fetch source event's settings (e.g. Show Maps Link or Sticky in Month View) when importing from another site using The Events Calendar."
|
2239 |
-
msgstr ""
|
2240 |
|
2241 |
#: src/admin-views/aggregator/settings.php:480
|
2242 |
msgid "Import Event Settings"
|
@@ -3829,7 +3829,7 @@ msgstr "Réglages de l’import iCalendar"
|
|
3829 |
#: src/admin-views/aggregator/settings.php:457
|
3830 |
#: src/admin-views/aggregator/settings.php:525
|
3831 |
msgid "Show map by default on imported event and venues"
|
3832 |
-
msgstr ""
|
3833 |
|
3834 |
#: src/admin-views/aggregator/settings.php:148
|
3835 |
msgid "The default event category for events"
|
@@ -6145,7 +6145,7 @@ msgstr "Import d’évènements"
|
|
6145 |
#: src/modules/blocks/event-links/template.js:101
|
6146 |
#: src/resources/js/app/blocks.js:48525
|
6147 |
msgid "Share Settings"
|
6148 |
-
msgstr ""
|
6149 |
|
6150 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6151 |
msgid "Draft"
|
@@ -6266,7 +6266,7 @@ msgstr "Titre :"
|
|
6266 |
|
6267 |
#: src/resources/js/app/blocks.js:47396
|
6268 |
msgid "Show Google Maps Link"
|
6269 |
-
msgstr ""
|
6270 |
|
6271 |
#: src/admin-views/create-venue-fields.php:166
|
6272 |
#: src/admin-views/venue-meta-box.php:136
|
@@ -6721,12 +6721,12 @@ msgstr "Thème par défaut des évènements"
|
|
6721 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6722 |
#: src/resources/js/app/blocks.js:45080
|
6723 |
msgid "Price: "
|
6724 |
-
msgstr ""
|
6725 |
|
6726 |
#: common/src/modules/elements/image-upload/element.js:46
|
6727 |
#: common/src/resources/js/app/elements.js:59497
|
6728 |
msgid "remove"
|
6729 |
-
msgstr ""
|
6730 |
|
6731 |
#: common/src/admin-views/event-log.php:65
|
6732 |
msgid "View"
|
@@ -8634,7 +8634,7 @@ msgstr "Ajouter un %s"
|
|
8634 |
|
8635 |
#: src/Tribe/Main.php:1967 src/Tribe/Venue.php:110 src/Tribe/Organizer.php:91
|
8636 |
msgid "Add New"
|
8637 |
-
msgstr "Ajouter un"
|
8638 |
|
8639 |
#: src/Tribe/Main.php:1934 src/Tribe/Main.php:2373
|
8640 |
msgid "tag"
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"PO-Revision-Date: 2018-12-03 14:35:18+0000\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
13 |
|
14 |
#: src/resources/js/app/blocks.js:48214
|
15 |
msgid "Edit Organizer"
|
16 |
+
msgstr "Modifier l’organisateur"
|
17 |
|
18 |
#: src/resources/js/app/blocks.js:48211
|
19 |
msgid "Organizer Settings"
|
20 |
+
msgstr "Réglages de l’organisateur"
|
21 |
|
22 |
#: src/resources/js/app/blocks.js:48137
|
23 |
msgid "Add or find an organizer"
|
24 |
+
msgstr "Ajouter ou chercher un organisateur"
|
25 |
|
26 |
#: src/resources/js/app/blocks.js:47979
|
27 |
msgid "Add email"
|
28 |
+
msgstr "Ajouter l’e-mail"
|
29 |
|
30 |
#: src/resources/js/app/blocks.js:47972
|
31 |
msgid "Add website"
|
32 |
+
msgstr "Ajouter un site web"
|
33 |
|
34 |
#: src/resources/js/app/blocks.js:47965
|
35 |
msgid "Add Phone"
|
36 |
+
msgstr "Ajouter le téléphone"
|
37 |
|
38 |
#: src/resources/js/app/blocks.js:47394
|
39 |
msgid "Venue Settings"
|
40 |
+
msgstr "Réglages du lieu"
|
41 |
|
42 |
#: src/resources/js/app/blocks.js:47272
|
43 |
msgid "Add or find a venue"
|
44 |
+
msgstr "Ajouter une chercher un lieu"
|
45 |
|
46 |
#: src/resources/js/app/blocks.js:46934
|
47 |
msgid "(Untitled Venue)"
|
48 |
+
msgstr "(Lieu sans titre)"
|
49 |
|
50 |
#: src/resources/js/app/blocks.js:46387
|
51 |
msgid "Multi-Day"
|
52 |
+
msgstr "Plusieurs jours"
|
53 |
|
54 |
#: src/resources/js/app/blocks.js:45448
|
55 |
msgid "Show Time Zone"
|
56 |
+
msgstr "Afficher le fuseau horaire"
|
57 |
|
58 |
#: src/resources/js/app/blocks.js:45441
|
59 |
msgid "Time Zone"
|
60 |
+
msgstr "Fuseau horaire"
|
61 |
|
62 |
#: src/resources/js/app/blocks.js:45434
|
63 |
msgid "Time Range Separator"
|
69 |
|
70 |
#: src/resources/js/app/blocks.js:13219 src/resources/js/app/elements.js:9845
|
71 |
msgid "Add or Find"
|
72 |
+
msgstr "Ajouter ou chercher"
|
73 |
|
74 |
#: src/resources/js/app/blocks.js:12598 src/resources/js/app/elements.js:9224
|
75 |
msgid "A Google Map API KEY is required to view the map"
|
76 |
+
msgstr "Une clé API Google Maps est nécessaire pour afficher la carte."
|
77 |
|
78 |
#: src/resources/js/app/blocks.js:12479 src/resources/js/app/elements.js:9105
|
79 |
msgid "The map does not have valid coordinates nor a valid address"
|
80 |
+
msgstr "Les coordonnées ou l'adresse de cette carte ne sont pas valides"
|
81 |
|
82 |
#: src/resources/js/app/blocks.js:12389 src/resources/js/app/elements.js:9015
|
83 |
msgid "Make sure Google Maps Library is included on this page."
|
84 |
+
msgstr "Assurez-vous que la Librairie Google Maps est bien incluse sur cette page."
|
85 |
|
86 |
#: src/resources/js/app/blocks.js:11712 src/resources/js/app/elements.js:8338
|
87 |
msgid "Country"
|
88 |
+
msgstr "Pays"
|
89 |
|
90 |
#: src/resources/js/app/blocks.js:11444 src/resources/js/app/elements.js:8070
|
91 |
msgid "Name:"
|
92 |
+
msgstr "Nom :"
|
93 |
|
94 |
#: src/modules/blocks/event-datetime/subblocks/content/index.js:23
|
95 |
#: src/resources/js/app/blocks.js:46184
|
107 |
#: src/resources/js/app/blocks.js:46185 src/resources/js/app/blocks.js:46660
|
108 |
#: src/resources/js/app/blocks.js:46745
|
109 |
msgid "Define the date, time, and duration for your event."
|
110 |
+
msgstr "Définissez une date, une heure et une durée pour votre évènement."
|
111 |
|
112 |
#: src/modules/blocks/event-datetime/index.js:27
|
113 |
#: src/resources/js/app/blocks.js:46744
|
117 |
#: src/modules/blocks/event-website/index.js:22
|
118 |
#: src/resources/js/app/blocks.js:49446
|
119 |
msgid "Is there another website for this event? Link to it with a button!"
|
120 |
+
msgstr "Y a-t-il un autre site internet pour cet évènement ? Affichez un bouton avec un lien vers ce site !"
|
121 |
|
122 |
#: src/modules/blocks/event-website/template.js:26
|
123 |
#: src/resources/js/app/blocks.js:49305
|
124 |
msgid "Add Event Website"
|
125 |
+
msgstr "Ajouter un site web de l’évènement"
|
126 |
|
127 |
#: src/modules/blocks/event-links/index.js:22
|
128 |
#: src/resources/js/app/blocks.js:48614
|
129 |
msgid "Encourage visitors to add your event to their calendars with handy sharing buttons."
|
130 |
+
msgstr "Encouragez vos visiteurs à ajouter votre évènement à leur agenda avec des boutons de partage très pratiques."
|
131 |
|
132 |
#: src/modules/blocks/event-links/index.js:21
|
133 |
#: src/resources/js/app/blocks.js:48613
|
134 |
msgid "Event Sharing"
|
135 |
+
msgstr "Partage d’évènement"
|
136 |
|
137 |
#: src/modules/blocks/event-links/template.js:108
|
138 |
#: src/resources/js/app/blocks.js:48532
|
139 |
msgid "iCal"
|
140 |
+
msgstr "iCal"
|
141 |
|
142 |
#: src/resources/js/app/blocks.js:47401
|
143 |
msgid "Show Google Maps Embed"
|
146 |
#: src/modules/blocks/event-category/index.js:22
|
147 |
#: src/resources/js/app/blocks.js:49143
|
148 |
msgid "Show assigned event categories as links to their respective archives."
|
149 |
+
msgstr "Afficher les Catégories d'évènements en tant que liens vers leurs archives respectives."
|
150 |
|
151 |
#: src/modules/blocks/event-category/index.js:21
|
152 |
#: src/resources/js/app/blocks.js:49142
|
153 |
msgid "Event Categories"
|
154 |
+
msgstr "Catégorie d’évènement"
|
155 |
|
156 |
#: src/modules/blocks/event-category/block.js:46
|
157 |
#: src/resources/js/app/blocks.js:49112
|
158 |
msgid "Add Event Categories in document settings"
|
159 |
+
msgstr "Ajouter les Catégories d'évènements dans les réglages du document."
|
160 |
|
161 |
#: src/modules/blocks/featured-image/index.js:22
|
162 |
#: src/resources/js/app/blocks.js:49610
|
163 |
msgid "Display the featured image in the post content."
|
164 |
+
msgstr "Afficher l'image à la Une dans le contenu de l'article."
|
165 |
|
166 |
#: src/modules/blocks/featured-image/block.js:80
|
167 |
#: src/resources/js/app/blocks.js:49562
|
168 |
msgid "Loading the Image"
|
169 |
+
msgstr "Chargement de l’image"
|
170 |
|
171 |
#: src/modules/blocks/featured-image/block.js:65
|
172 |
#: src/resources/js/app/blocks.js:49551
|
177 |
#: src/modules/blocks/featured-image/index.js:21
|
178 |
#: src/resources/js/app/blocks.js:49542 src/resources/js/app/blocks.js:49609
|
179 |
msgid "Featured Image"
|
180 |
+
msgstr "Image à la une"
|
181 |
|
182 |
#: src/modules/blocks/event-tags/index.js:22
|
183 |
#: src/resources/js/app/blocks.js:49255
|
193 |
#: src/modules/blocks/event-tags/index.js:21
|
194 |
#: src/resources/js/app/blocks.js:49223 src/resources/js/app/blocks.js:49254
|
195 |
msgid "Tags"
|
196 |
+
msgstr "Étiquettes"
|
197 |
|
198 |
#: src/modules/blocks/event-venue/index.js:18
|
199 |
#: src/resources/js/app/blocks.js:47617
|
200 |
msgid "Where is this event happening? Select or create a location."
|
201 |
+
msgstr "Où cet évènement a-t-il lieu ? Sélectionnez ou créez un lieu."
|
202 |
|
203 |
#: src/modules/blocks/event-venue/index.js:17
|
204 |
#: src/resources/js/app/blocks.js:47616
|
205 |
msgid "Event Venue"
|
206 |
+
msgstr "Lieu de l'évènement"
|
207 |
|
208 |
#: src/modules/blocks/event-price/index.js:18
|
209 |
#: src/resources/js/app/blocks.js:49019
|
210 |
msgid "Let visitors know the cost of this event or if it’s free to attend."
|
211 |
+
msgstr "Indiquez le prix de cet évènement, ou si il est gratuit."
|
212 |
|
213 |
#: src/modules/blocks/event-price/index.js:17
|
214 |
#: src/resources/js/app/blocks.js:49018
|
215 |
msgid "Event Price"
|
216 |
+
msgstr "Prix de l’évènement"
|
217 |
|
218 |
#: src/modules/blocks/event-price/template.js:156
|
219 |
#: src/resources/js/app/blocks.js:48830
|
220 |
msgid "Currency symbol follows price"
|
221 |
+
msgstr "Le symbole monétaire suit le prix"
|
222 |
|
223 |
#: src/modules/blocks/event-price/template.js:123
|
224 |
#: src/resources/js/app/blocks.js:48791
|
225 |
msgid "enter 0 as price for free events"
|
226 |
+
msgstr "Indiquez 0 en tant que prix pour les évènements gratuits"
|
227 |
|
228 |
#: src/modules/blocks/event-price/template.js:117
|
229 |
#: src/resources/js/app/blocks.js:48783
|
230 |
msgid "Description"
|
231 |
+
msgstr "Description"
|
232 |
|
233 |
#: src/modules/blocks/event-price/template.js:109
|
234 |
#: src/resources/js/app/blocks.js:48775
|
235 |
msgid "Fixed Price or Range"
|
236 |
+
msgstr "Prix fixe ou fourchette de prix"
|
237 |
|
238 |
#: src/modules/blocks/event-price/template.js:43
|
239 |
#: src/resources/js/app/blocks.js:48696
|
240 |
msgid "Add Price"
|
241 |
+
msgstr "Ajouter un prix"
|
242 |
|
243 |
#: src/modules/blocks/classic-event-details/event-details-organizers/event-details-organizer/template.js:40
|
244 |
#: src/resources/js/app/blocks.js:44712
|
245 |
msgid "Remove Organizer"
|
246 |
+
msgstr "Retirer l’organisateur"
|
247 |
|
248 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:62
|
249 |
#: src/resources/js/app/blocks.js:44842
|
250 |
msgid "Add existing Organizer"
|
251 |
+
msgstr "Ajouter un organisateur existant"
|
252 |
|
253 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:61
|
254 |
#: src/resources/js/app/blocks.js:44841
|
255 |
msgid "Search for an organizer"
|
256 |
+
msgstr "Rechercher un organisateur"
|
257 |
|
258 |
#: src/modules/blocks/classic-event-details/event-details-organizers/template.js:25
|
259 |
#: src/resources/js/app/blocks.js:11429 src/resources/js/app/blocks.js:11538
|
260 |
#: src/resources/js/app/blocks.js:44791 src/resources/js/app/elements.js:8055
|
261 |
#: src/resources/js/app/elements.js:8164
|
262 |
msgid "Create Organizer"
|
263 |
+
msgstr "Créer un organisateur"
|
264 |
|
265 |
#: src/modules/blocks/classic-event-details/index.js:22
|
266 |
#: src/resources/js/app/blocks.js:45285
|
276 |
#: src/modules/blocks/event-price/template.js:152
|
277 |
#: src/resources/js/app/blocks.js:45170 src/resources/js/app/blocks.js:48826
|
278 |
msgid "E.g.: $"
|
279 |
+
msgstr "Exemple : $"
|
280 |
|
281 |
#: src/modules/blocks/classic-event-details/template.js:191
|
282 |
#: src/modules/blocks/event-price/template.js:150
|
283 |
#: src/resources/js/app/blocks.js:45168 src/resources/js/app/blocks.js:48824
|
284 |
msgid " Currency Symbol"
|
285 |
+
msgstr "Symbole monétaire"
|
286 |
|
287 |
#: src/modules/blocks/classic-event-details/template.js:186
|
288 |
#: src/resources/js/app/blocks.js:45163
|
289 |
msgid "Show symbol before"
|
290 |
+
msgstr "Afficher le symbole avant"
|
291 |
|
292 |
#: src/modules/blocks/classic-event-details/template.js:184
|
293 |
#: src/modules/blocks/event-price/template.js:147
|
294 |
#: src/resources/js/app/blocks.js:45161 src/resources/js/app/blocks.js:48821
|
295 |
msgid "Price Settings"
|
296 |
+
msgstr "Réglages du prix"
|
297 |
|
298 |
#: src/modules/blocks/classic-event-details/template.js:179
|
299 |
#: src/resources/js/app/blocks.js:45154
|
300 |
msgid "Is All Day Event"
|
301 |
+
msgstr "Est-ce un évènement qui dure la journée ?"
|
302 |
|
303 |
#: src/modules/blocks/classic-event-details/template.js:177
|
304 |
#: src/resources/js/app/blocks.js:45152 src/resources/js/app/blocks.js:45425
|
305 |
msgid "Date Time Settings"
|
306 |
+
msgstr "Réglages de la date"
|
307 |
|
308 |
#: src/modules/blocks/classic-event-details/template.js:156
|
309 |
#: src/resources/js/app/blocks.js:45129
|
310 |
msgid "Event Category:"
|
311 |
+
msgstr "Catégorie de l’évènement :"
|
312 |
|
313 |
#: src/modules/blocks/classic-event-details/template.js:122
|
314 |
#: src/resources/js/app/blocks.js:45091 src/resources/js/app/blocks.js:45895
|
315 |
msgid "Enter price"
|
316 |
+
msgstr "Saisir le prix"
|
317 |
|
318 |
#: src/modules/blocks/classic-event-details/template.js:101
|
319 |
#: src/resources/js/app/blocks.js:45060
|
320 |
msgid "Enter url"
|
321 |
+
msgstr "Saisissez l’url"
|
322 |
|
323 |
#: src/modules/blocks/classic-event-details/template.js:97
|
324 |
#: src/resources/js/app/blocks.js:45054
|
325 |
msgid "Website: "
|
326 |
+
msgstr "Site Web :"
|
327 |
|
328 |
#: src/modules/blocks/classic-event-details/template.js:79
|
329 |
#: src/resources/js/app/blocks.js:45022
|
330 |
msgid "End: "
|
331 |
+
msgstr "Fin : "
|
332 |
|
333 |
#: src/modules/blocks/classic-event-details/template.js:57
|
334 |
#: src/resources/js/app/blocks.js:44982
|
335 |
msgid "Start: "
|
336 |
+
msgstr "Début : "
|
337 |
|
338 |
#: src/modules/blocks/event-organizer/index.js:17
|
339 |
#: src/resources/js/app/blocks.js:48388
|
343 |
#: src/modules/blocks/event-organizer/index.js:16
|
344 |
#: src/resources/js/app/blocks.js:48387
|
345 |
msgid "Event Organizer"
|
346 |
+
msgstr "Organisateur de l’évènement"
|
347 |
|
348 |
#: src/modules/data/blocks/price/reducer.js:23
|
349 |
#: src/resources/js/app/data.js:9364 src/resources/js/app/blocks.js:10508
|
350 |
msgid "$"
|
351 |
+
msgstr "$"
|
352 |
|
353 |
#: src/modules/data/blocks/datetime/reducer.js:23
|
354 |
#: src/resources/js/app/data.js:6796 src/resources/js/app/blocks.js:6842
|
355 |
msgid "-"
|
356 |
+
msgstr "-"
|
357 |
|
358 |
#: src/modules/data/blocks/datetime/reducer.js:22
|
359 |
#: src/resources/js/app/data.js:6795 src/resources/js/app/blocks.js:6841
|
360 |
msgid "@"
|
361 |
+
msgstr "@"
|
362 |
|
363 |
#: src/modules/elements/terms-list/element.js:128
|
364 |
#: src/resources/js/app/blocks.js:11214 src/resources/js/app/elements.js:7840
|
365 |
msgid ", "
|
366 |
+
msgstr ", "
|
367 |
|
368 |
#: src/modules/elements/terms-list/element.js:45
|
369 |
#: src/modules/blocks/classic-event-details/event-details-organizers/event-details-organizer/template.js:26
|
370 |
#: src/resources/js/app/blocks.js:11083 src/resources/js/app/blocks.js:44700
|
371 |
#: src/resources/js/app/elements.js:7709
|
372 |
msgid "(Untitled)"
|
373 |
+
msgstr "(sans titre)"
|
374 |
|
375 |
#: src/modules/elements/upsell/element.js:33
|
376 |
#: src/resources/js/app/blocks.js:13490 src/resources/js/app/elements.js:10116
|
387 |
#: common/src/resources/js/app/elements.js:9791
|
388 |
#: common/src/resources/js/app/utils.js:7339
|
389 |
msgid "at"
|
390 |
+
msgstr "à"
|
391 |
|
392 |
#: src/views/blocks/event-datetime.php:80
|
393 |
msgid "All day"
|
394 |
+
msgstr "Toute la journée"
|
395 |
|
396 |
#: src/views/modules/bar.php:51
|
397 |
msgid "Hide %s Search"
|
398 |
+
msgstr "Masquer %s la Recherche"
|
399 |
|
400 |
#: src/views/modules/bar.php:50 src/views/modules/bar.php:54
|
401 |
msgid "Show %s Search"
|
402 |
+
msgstr "Afficher %s la Recherche"
|
403 |
|
404 |
#: src/admin-views/aggregator/settings.php:159
|
405 |
#: src/admin-views/aggregator/settings.php:268
|
409 |
#: src/admin-views/aggregator/settings.php:456
|
410 |
#: src/admin-views/aggregator/settings.php:524
|
411 |
msgid "Show Map"
|
412 |
+
msgstr "Afficher la carte"
|
413 |
|
414 |
#: src/admin-views/tribe-options-general.php:243
|
415 |
msgid "Enable Maps"
|
416 |
+
msgstr "Activer les cartes"
|
417 |
|
418 |
#: src/admin-views/create-venue-fields.php:257
|
419 |
msgid "Show Map Link?"
|
420 |
+
msgstr "Afficher le lien vers la Google Map ?"
|
421 |
|
422 |
#: src/admin-views/create-venue-fields.php:248
|
423 |
#: src/admin-views/create-venue-fields.php:285
|
424 |
#: src/admin-views/venue-meta-box.php:202
|
425 |
#: src/admin-views/venue-meta-box.php:238
|
426 |
msgid "Show Map Link:"
|
427 |
+
msgstr "Afficher le lien vers la Google Map :"
|
428 |
|
429 |
#: src/admin-views/create-venue-fields.php:239
|
430 |
msgid "Show Map?"
|
431 |
+
msgstr "Afficher la carte ?"
|
432 |
|
433 |
#: src/admin-views/create-venue-fields.php:230
|
434 |
#: src/admin-views/create-venue-fields.php:268
|
435 |
#: src/admin-views/venue-meta-box.php:185
|
436 |
#: src/admin-views/venue-meta-box.php:221
|
437 |
msgid "Show Map:"
|
438 |
+
msgstr "Afficher la carte :"
|
439 |
|
440 |
#: src/Tribe/Editor/Compatibility.php:118
|
441 |
msgid "Hidden Blocks Editor Config"
|
447 |
|
448 |
#: src/Tribe/Editor/Compatibility.php:110
|
449 |
msgid "Activate Block Editor for Events"
|
450 |
+
msgstr "Activer l'éditeur de blocs pour les évènements."
|
451 |
|
452 |
#: src/Tribe/Editor/Blocks/Event_Website.php:26
|
453 |
msgid "Add Button Text"
|
455 |
|
456 |
#: src/Tribe/Editor/Meta.php:61 src/Tribe/Editor/Meta.php:70
|
457 |
msgid "Event Organizers"
|
458 |
+
msgstr "organisateurs de l’évènement"
|
459 |
|
460 |
#: src/Tribe/Aggregator/Record/CSV.php:104
|
461 |
msgid "Unknown Column "
|
462 |
+
msgstr "Colonne inconnue"
|
463 |
|
464 |
#: src/Tribe/Aggregator/Record/Queue_Processor.php:288
|
465 |
msgid "There was an error building the record queue: "
|
467 |
|
468 |
#: src/Tribe/Admin/Notice/Marketing.php:114
|
469 |
msgid "Try Events Gutenberg"
|
470 |
+
msgstr "Essayez Events pour Gutenberg"
|
471 |
|
472 |
#: src/Tribe/Admin/Notice/Marketing.php:106
|
473 |
msgid "Download the eBook"
|
474 |
+
msgstr "Télécharger le eBook"
|
475 |
|
476 |
#: src/Tribe/Admin/Notice/Marketing.php:100
|
477 |
msgid "Get up to speed with our comprehensive Guide to Gutenberg ebook, then see how events and tickets will behave in the block editor by installing our free Events Gutenberg extension."
|
479 |
|
480 |
#: src/Tribe/Admin/Notice/Marketing.php:95
|
481 |
msgid "WordPress 5.0 is coming soon, and with it, the arrival of the new block editor interface."
|
482 |
+
msgstr "WordPress 5.0 arrive bientôt, et avec lui, l'nterface avec le nouvel éditeur de bloc."
|
483 |
|
484 |
#: src/Tribe/Admin/Notice/Marketing.php:91
|
485 |
msgid "<strong>The Events Calendar & Gutenberg</strong>"
|
486 |
+
msgstr "<strong>The Events Calendar & Gutenberg</strong>"
|
487 |
|
488 |
#: src/Tribe/Main.php:1464
|
489 |
msgid "When running version %1$s of The Events Calendar alongside %2$s, %2$s must be version %3$s or greater. Please %4$smanually update now.%5$s"
|
491 |
|
492 |
#: src/Tribe/Google/Maps_API_Key.php:107
|
493 |
msgid "(click here for details)"
|
494 |
+
msgstr "(Cliquez ici pour plus de datails)"
|
495 |
|
496 |
#: src/Tribe/Editor.php:534
|
497 |
msgid "Event Blocks"
|
498 |
+
msgstr "Blocks Évènements"
|
499 |
|
500 |
#: src/Tribe/Editor.php:258 src/Tribe/Editor.php:301
|
501 |
msgid "Add Description..."
|
502 |
+
msgstr "Ajouter une description..."
|
503 |
|
504 |
#: common/src/Tribe/Editor/Configuration.php:97
|
505 |
msgid "F j, Y g:i a"
|
506 |
+
msgstr "F j, Y g:i a"
|
507 |
|
508 |
#: common/src/Tribe/Editor/Configuration.php:96
|
509 |
#: src/resources/js/app/blocks.js:45852 src/resources/js/app/blocks.js:46326
|
510 |
msgid "F j"
|
511 |
+
msgstr "F j"
|
512 |
|
513 |
#: common/src/Tribe/Editor/Configuration.php:95
|
514 |
msgid "F j, Y"
|
515 |
+
msgstr "F j, Y"
|
516 |
|
517 |
#: common/src/Tribe/Editor/Configuration.php:94
|
518 |
msgid "g:i a"
|
519 |
+
msgstr "g:i a"
|
520 |
|
521 |
#. translators: %s: duration
|
522 |
#: common/src/Tribe/Editor/Configuration.php:90
|
523 |
msgid "%s ago"
|
524 |
+
msgstr "Il y a %s"
|
525 |
|
526 |
#. translators: %s: duration
|
527 |
#: common/src/Tribe/Editor/Configuration.php:88
|
530 |
|
531 |
#: common/src/Tribe/Editor/Blocks/Abstract.php:127
|
532 |
msgid "Problem loading the block, please remove this block to restart."
|
533 |
+
msgstr "Problème lors du chargement du bloc, veuillez supprimer ce bloc pour recommencer."
|
534 |
|
535 |
#: common/src/Tribe/Editor/Meta.php:123
|
536 |
msgid "Text Array"
|
542 |
|
543 |
#: src/admin-views/tribe-options-general.php:69
|
544 |
msgid "Enable WordPress Custom Fields on Events."
|
545 |
+
msgstr "Activer les champs personnalisés de WordPress pour les évènements."
|
546 |
|
547 |
#: src/admin-views/tribe-options-general.php:68
|
548 |
msgid "Show Custom Fields metabox"
|
549 |
+
msgstr "Afficher la boîte de méta pour les champs personnalisés"
|
550 |
|
551 |
#: src/admin-views/tribe-options-display.php:139
|
552 |
msgid "Please note that you are using The Events Calendar's default Google Maps API key, which will limit the Map View's functionality. Visit %sthe API Settings page%s to learn more and add your own Google Maps API key."
|
554 |
|
555 |
#: src/admin-views/aggregator/settings.php:230
|
556 |
msgid "Stop current processes"
|
557 |
+
msgstr "Arrêter les process en cours"
|
558 |
|
559 |
#: src/admin-views/aggregator/settings.php:219
|
560 |
msgid "The Asynchronous import process is faster and does not rely on WordPress Cron but might not work correctly in all WordPress installations, try switching to the Cron-based process for maximum compatibility."
|
574 |
|
575 |
#: src/admin-views/aggregator/origins/eventbrite.php:127
|
576 |
msgid "Import from Eventbrite URL"
|
577 |
+
msgstr "Import depuis une URL Eventbrite"
|
578 |
|
579 |
#: src/Tribe/Google/Maps_API_Key.php:109
|
580 |
msgid "to create your own free Google Maps API key."
|
581 |
+
msgstr "pour créer votre propre clé API Google Maps gratuite."
|
582 |
|
583 |
#: src/Tribe/Google/Maps_API_Key.php:106
|
584 |
msgid "If you do not add your own API key, the built-in API key will always populate this field and some map-related functionality will be limited "
|
586 |
|
587 |
#: src/Tribe/Google/Maps_API_Key.php:105
|
588 |
msgid "You are using The Events Calendar's built-in Google Maps API key."
|
589 |
+
msgstr "Vous utilisez la clé API Google Maps intégrée à The Events Calendar."
|
590 |
|
591 |
#: src/Tribe/Google/Maps_API_Key.php:77
|
592 |
msgid "Read More"
|
1281 |
|
1282 |
#: src/admin-views/tribe-options-display.php:61
|
1283 |
msgid "There are going to be situations where no out-of-the-box template is 100% perfect. Check out our <a href=\"%s\">our themer's guide</a> for instructions on custom modifications."
|
1284 |
+
msgstr "Il va y avoir des situations où aucun modèle prédéfini n’est parfait à 100%. Consultez notre <a href=\"\"%s\"\">Guide d’instructions</a> sur les modifications personnalisées."
|
1285 |
|
1286 |
#: src/admin-views/tribe-options-display.php:58
|
1287 |
msgid "The settings below control the display of your calendar. If things don't look right, try switching between the three style sheet options or pick a page template from your theme."
|
2236 |
|
2237 |
#: src/admin-views/aggregator/settings.php:481
|
2238 |
msgid "Fetch source event's settings (e.g. Show Maps Link or Sticky in Month View) when importing from another site using The Events Calendar."
|
2239 |
+
msgstr "Récupérez la configuration des évènements d’une autre source (ex. Show Google Maps Link ou Sticky in Month View) lors d’import d’un autre site en utilisant The Events Calendar."
|
2240 |
|
2241 |
#: src/admin-views/aggregator/settings.php:480
|
2242 |
msgid "Import Event Settings"
|
3829 |
#: src/admin-views/aggregator/settings.php:457
|
3830 |
#: src/admin-views/aggregator/settings.php:525
|
3831 |
msgid "Show map by default on imported event and venues"
|
3832 |
+
msgstr "Afficher Google Map par défaut sur les évènements et les lieux importés"
|
3833 |
|
3834 |
#: src/admin-views/aggregator/settings.php:148
|
3835 |
msgid "The default event category for events"
|
6145 |
#: src/modules/blocks/event-links/template.js:101
|
6146 |
#: src/resources/js/app/blocks.js:48525
|
6147 |
msgid "Share Settings"
|
6148 |
+
msgstr "Partager les réglages"
|
6149 |
|
6150 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6151 |
msgid "Draft"
|
6266 |
|
6267 |
#: src/resources/js/app/blocks.js:47396
|
6268 |
msgid "Show Google Maps Link"
|
6269 |
+
msgstr "Afficher le lien Google Maps :"
|
6270 |
|
6271 |
#: src/admin-views/create-venue-fields.php:166
|
6272 |
#: src/admin-views/venue-meta-box.php:136
|
6721 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6722 |
#: src/resources/js/app/blocks.js:45080
|
6723 |
msgid "Price: "
|
6724 |
+
msgstr "Prix :"
|
6725 |
|
6726 |
#: common/src/modules/elements/image-upload/element.js:46
|
6727 |
#: common/src/resources/js/app/elements.js:59497
|
6728 |
msgid "remove"
|
6729 |
+
msgstr "Supprimer"
|
6730 |
|
6731 |
#: common/src/admin-views/event-log.php:65
|
6732 |
msgid "View"
|
8634 |
|
8635 |
#: src/Tribe/Main.php:1967 src/Tribe/Venue.php:110 src/Tribe/Organizer.php:91
|
8636 |
msgid "Add New"
|
8637 |
+
msgstr "Ajouter un évènement"
|
8638 |
|
8639 |
#: src/Tribe/Main.php:1934 src/Tribe/Main.php:2373
|
8640 |
msgid "tag"
|
lang/the-events-calendar-gl_ES.mo
CHANGED
Binary file
|
lang/the-events-calendar-gl_ES.po
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -2234,7 +2234,7 @@ msgstr "Outras URLs"
|
|
2234 |
|
2235 |
#: src/admin-views/aggregator/settings.php:481
|
2236 |
msgid "Fetch source event's settings (e.g. Show Maps Link or Sticky in Month View) when importing from another site using The Events Calendar."
|
2237 |
-
msgstr ""
|
2238 |
|
2239 |
#: src/admin-views/aggregator/settings.php:480
|
2240 |
msgid "Import Event Settings"
|
@@ -3827,7 +3827,7 @@ msgstr "configuración de importación de ICalendar"
|
|
3827 |
#: src/admin-views/aggregator/settings.php:457
|
3828 |
#: src/admin-views/aggregator/settings.php:525
|
3829 |
msgid "Show map by default on imported event and venues"
|
3830 |
-
msgstr ""
|
3831 |
|
3832 |
#: src/admin-views/aggregator/settings.php:148
|
3833 |
msgid "The default event category for events"
|
@@ -3881,7 +3881,7 @@ msgstr "Sobreescribe o meu evento con calquera cambio da fonte orixinal."
|
|
3881 |
|
3882 |
#: src/admin-views/aggregator/settings.php:49
|
3883 |
msgid "You can make changes to imported events via The Events Calendar and see those changes reflected on your site’s calendar. The owner of the original event source (e.g. the iCalendar feed or Meetup group) might also make changes to their event. If you choose to re-import an altered event (manually or via a scheduled import), any changes made at the source or on your calendar will need to be addressed."
|
3884 |
-
msgstr ""
|
3885 |
|
3886 |
#: src/admin-views/aggregator/settings.php:44
|
3887 |
#: src/admin-views/aggregator/settings.php:54
|
@@ -4410,7 +4410,7 @@ msgstr "Renova a túa licenza Aggregator de eventos"
|
|
4410 |
|
4411 |
#: src/Tribe/Aggregator/Tabs/New.php:561
|
4412 |
msgid "Renew your license in order to import events from iCalendar, Google, or Meetup."
|
4413 |
-
msgstr ""
|
4414 |
|
4415 |
#: src/Tribe/Aggregator/Tabs/New.php:560
|
4416 |
msgid "Your Event Aggregator license is expired."
|
@@ -4431,7 +4431,7 @@ msgstr "Mércao agora"
|
|
4431 |
|
4432 |
#: src/Tribe/Aggregator/Tabs/New.php:502
|
4433 |
msgid "With Event Aggregator, you can import events from iCalendar, Google, and Meetup.com in a jiffy."
|
4434 |
-
msgstr ""
|
4435 |
|
4436 |
#: src/Tribe/Aggregator/Tabs/New.php:500
|
4437 |
msgid "Import Using Event Aggregator"
|
@@ -6143,7 +6143,7 @@ msgstr "Importar eventos"
|
|
6143 |
#: src/modules/blocks/event-links/template.js:101
|
6144 |
#: src/resources/js/app/blocks.js:48525
|
6145 |
msgid "Share Settings"
|
6146 |
-
msgstr ""
|
6147 |
|
6148 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6149 |
msgid "Draft"
|
@@ -6264,7 +6264,7 @@ msgstr "Título:"
|
|
6264 |
|
6265 |
#: src/resources/js/app/blocks.js:47396
|
6266 |
msgid "Show Google Maps Link"
|
6267 |
-
msgstr ""
|
6268 |
|
6269 |
#: src/admin-views/create-venue-fields.php:166
|
6270 |
#: src/admin-views/venue-meta-box.php:136
|
@@ -6719,12 +6719,12 @@ msgstr "Modelo de eventos predefinido"
|
|
6719 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6720 |
#: src/resources/js/app/blocks.js:45080
|
6721 |
msgid "Price: "
|
6722 |
-
msgstr ""
|
6723 |
|
6724 |
#: common/src/modules/elements/image-upload/element.js:46
|
6725 |
#: common/src/resources/js/app/elements.js:59497
|
6726 |
msgid "remove"
|
6727 |
-
msgstr ""
|
6728 |
|
6729 |
#: common/src/admin-views/event-log.php:65
|
6730 |
msgid "View"
|
@@ -6874,7 +6874,7 @@ msgstr "Recursos de apoio"
|
|
6874 |
|
6875 |
#: src/admin-views/admin-welcome-message.php:44
|
6876 |
msgid "Addons for Community, Tickets, Filters, and more."
|
6877 |
-
msgstr ""
|
6878 |
|
6879 |
#: src/admin-views/admin-welcome-message.php:43
|
6880 |
msgid "Looking for More Features?"
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"PO-Revision-Date: 2018-12-02 09:48:28+0000\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
2234 |
|
2235 |
#: src/admin-views/aggregator/settings.php:481
|
2236 |
msgid "Fetch source event's settings (e.g. Show Maps Link or Sticky in Month View) when importing from another site using The Events Calendar."
|
2237 |
+
msgstr "Obtén a configuración do evento de orixe (por exemplo, Amosar ligazón de Google Maps ou vinculación a Month View) ao importar desde outro sitio mediante The Events Calendar."
|
2238 |
|
2239 |
#: src/admin-views/aggregator/settings.php:480
|
2240 |
msgid "Import Event Settings"
|
3827 |
#: src/admin-views/aggregator/settings.php:457
|
3828 |
#: src/admin-views/aggregator/settings.php:525
|
3829 |
msgid "Show map by default on imported event and venues"
|
3830 |
+
msgstr "Mostrar Google Map por defecto no evento e lugares importados"
|
3831 |
|
3832 |
#: src/admin-views/aggregator/settings.php:148
|
3833 |
msgid "The default event category for events"
|
3881 |
|
3882 |
#: src/admin-views/aggregator/settings.php:49
|
3883 |
msgid "You can make changes to imported events via The Events Calendar and see those changes reflected on your site’s calendar. The owner of the original event source (e.g. the iCalendar feed or Meetup group) might also make changes to their event. If you choose to re-import an altered event (manually or via a scheduled import), any changes made at the source or on your calendar will need to be addressed."
|
3884 |
+
msgstr "Podes facer cambios a eventos importados a través do Calendario de eventos e ver os cambios reflectidos no calendario do seu sitio. O propietario da fonte do evento orixinal (por exemplo, a fonte de iCalendar ou o grupo de Facebook) tamén pode facer cambios no seu evento. Se elixe volver importar un evento alterado (manualmente ou mediante unha importación programada), haberá que realizar calquera cambio feito na orixe ou no seu calendario."
|
3885 |
|
3886 |
#: src/admin-views/aggregator/settings.php:44
|
3887 |
#: src/admin-views/aggregator/settings.php:54
|
4410 |
|
4411 |
#: src/Tribe/Aggregator/Tabs/New.php:561
|
4412 |
msgid "Renew your license in order to import events from iCalendar, Google, or Meetup."
|
4413 |
+
msgstr "Renova a túa licenza para importar eventos de Facebook, iCalendar, Google ou Meetup."
|
4414 |
|
4415 |
#: src/Tribe/Aggregator/Tabs/New.php:560
|
4416 |
msgid "Your Event Aggregator license is expired."
|
4431 |
|
4432 |
#: src/Tribe/Aggregator/Tabs/New.php:502
|
4433 |
msgid "With Event Aggregator, you can import events from iCalendar, Google, and Meetup.com in a jiffy."
|
4434 |
+
msgstr "Con Event Aggregator, podes importar eventos desde Facebook, iCalendar, Google e Meetup.com nun momento."
|
4435 |
|
4436 |
#: src/Tribe/Aggregator/Tabs/New.php:500
|
4437 |
msgid "Import Using Event Aggregator"
|
6143 |
#: src/modules/blocks/event-links/template.js:101
|
6144 |
#: src/resources/js/app/blocks.js:48525
|
6145 |
msgid "Share Settings"
|
6146 |
+
msgstr "Gardar configuracións"
|
6147 |
|
6148 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6149 |
msgid "Draft"
|
6264 |
|
6265 |
#: src/resources/js/app/blocks.js:47396
|
6266 |
msgid "Show Google Maps Link"
|
6267 |
+
msgstr "Amosar ligazón de Google Maps:"
|
6268 |
|
6269 |
#: src/admin-views/create-venue-fields.php:166
|
6270 |
#: src/admin-views/venue-meta-box.php:136
|
6719 |
#: src/modules/blocks/classic-event-details/template.js:117
|
6720 |
#: src/resources/js/app/blocks.js:45080
|
6721 |
msgid "Price: "
|
6722 |
+
msgstr "Custe: "
|
6723 |
|
6724 |
#: common/src/modules/elements/image-upload/element.js:46
|
6725 |
#: common/src/resources/js/app/elements.js:59497
|
6726 |
msgid "remove"
|
6727 |
+
msgstr "Eliminar"
|
6728 |
|
6729 |
#: common/src/admin-views/event-log.php:65
|
6730 |
msgid "View"
|
6874 |
|
6875 |
#: src/admin-views/admin-welcome-message.php:44
|
6876 |
msgid "Addons for Community, Tickets, Filters, and more."
|
6877 |
+
msgstr "Complementos para a Comunidade, Entradas, Filtros, Facebook e moito máis."
|
6878 |
|
6879 |
#: src/admin-views/admin-welcome-message.php:43
|
6880 |
msgid "Looking for More Features?"
|
lang/the-events-calendar-ro_RO.mo
CHANGED
Binary file
|
lang/the-events-calendar-ro_RO.po
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"PO-Revision-Date: 2018-
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -6172,7 +6172,7 @@ msgstr ""
|
|
6172 |
#: src/modules/blocks/event-links/template.js:101
|
6173 |
#: src/resources/js/app/blocks.js:48525
|
6174 |
msgid "Share Settings"
|
6175 |
-
msgstr ""
|
6176 |
|
6177 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6178 |
msgid "Draft"
|
2 |
# This file is distributed under the same license as the Plugins - The Events Calendar - Stable (latest release) package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"PO-Revision-Date: 2018-12-03 19:20:40+0000\n"
|
6 |
"MIME-Version: 1.0\n"
|
7 |
"Content-Type: text/plain; charset=UTF-8\n"
|
8 |
"Content-Transfer-Encoding: 8bit\n"
|
6172 |
#: src/modules/blocks/event-links/template.js:101
|
6173 |
#: src/resources/js/app/blocks.js:48525
|
6174 |
msgid "Share Settings"
|
6175 |
+
msgstr "Partajează setările"
|
6176 |
|
6177 |
#: src/deprecated/Tribe__Events__Importer__Options.php:136
|
6178 |
msgid "Draft"
|
readme.txt
CHANGED
@@ -4,8 +4,8 @@ Contributors: ModernTribe, borkweb, barry.hughes, bordoni, brianjessee, aguseo,
|
|
4 |
Tags: events, calendar, event, venue, organizer, dates, date, google maps, conference, workshop, concert, meeting, seminar, summit, class, modern tribe, tribe, widget
|
5 |
Donate link: http://m.tri.be/29
|
6 |
Requires at least: 4.5
|
7 |
-
Stable tag: 4.7.
|
8 |
-
Tested up to:
|
9 |
Requires PHP: 5.2.4
|
10 |
License: GPLv2 or later
|
11 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
@@ -215,6 +215,14 @@ Still not happy? Shoot us an email to support@theeventscalendar.com or tweet to
|
|
215 |
|
216 |
== Changelog ==
|
217 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
218 |
= [4.7.0.1] 2018-11-30 =
|
219 |
|
220 |
* Fix - Update common library to maximize compatibility with earlier PHP versions (our thanks to @megabit81 for highlighting this problem) [119073]
|
4 |
Tags: events, calendar, event, venue, organizer, dates, date, google maps, conference, workshop, concert, meeting, seminar, summit, class, modern tribe, tribe, widget
|
5 |
Donate link: http://m.tri.be/29
|
6 |
Requires at least: 4.5
|
7 |
+
Stable tag: 4.7.1
|
8 |
+
Tested up to: 5.0
|
9 |
Requires PHP: 5.2.4
|
10 |
License: GPLv2 or later
|
11 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
215 |
|
216 |
== Changelog ==
|
217 |
|
218 |
+
= [4.7.1] 2018-12-05 =
|
219 |
+
|
220 |
+
* Feature - Added additional caching to TEC REST API archives and the Post Repository event/venue/organizer responses [117159]
|
221 |
+
* Feature - Added new `tribe_events_set_month_view_events_from_cache` action to make it easier to listen for when Month View events are retrieved from the Month View cache [116124]
|
222 |
+
* Fix - Importing CSV files with whitespace at the beginning of the rows won't remove headers and skip columns on Preview [117236]
|
223 |
+
* Fix - Prevent JavaScript error in Month View when the Date filter is removed from the Tribe Bar (thank you to @tyrann0us on GitHub for submitting this fix!) [116995]
|
224 |
+
* Fix - Facilitate automated updates for Events Calendar PRO even if it's requirements have not been met
|
225 |
+
|
226 |
= [4.7.0.1] 2018-11-30 =
|
227 |
|
228 |
* Fix - Update common library to maximize compatibility with earlier PHP versions (our thanks to @megabit81 for highlighting this problem) [119073]
|
src/Tribe/Aggregator/Processes/Import_Events.php
CHANGED
@@ -209,6 +209,35 @@ class Tribe__Events__Aggregator__Processes__Import_Events extends Tribe__Process
|
|
209 |
$data = (array) $item['data'];
|
210 |
$this->transitional_id = filter_var( $item['transitional_id'], FILTER_SANITIZE_STRING );
|
211 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
212 |
/**
|
213 |
* To avoid deadlocks when dealing with circular dependencies an item can be requeued only
|
214 |
* so many times.
|
209 |
$data = (array) $item['data'];
|
210 |
$this->transitional_id = filter_var( $item['transitional_id'], FILTER_SANITIZE_STRING );
|
211 |
|
212 |
+
/*
|
213 |
+
* Make sure the import is happening in the context of the same site that started it.
|
214 |
+
* This deals with mis-handling and orphaned calls to the the `switch_to_blog` function.
|
215 |
+
*/
|
216 |
+
$current_blog_id = is_multisite() ? get_current_blog_id() : 1;
|
217 |
+
$task_blog_id = isset( $item['blog_id'] ) ? (int) $item['blog_id'] : $current_blog_id;
|
218 |
+
|
219 |
+
if ( $current_blog_id !== $task_blog_id ) {
|
220 |
+
/*
|
221 |
+
* Requeue this task and log an error. For whatever reason the blog id context of this task is not
|
222 |
+
* the expected one.
|
223 |
+
* We do not switch to the correct task blog to avoid potentially causing more issues: this is an issue
|
224 |
+
* already so let's log an error.
|
225 |
+
*/
|
226 |
+
/** @var Tribe__Log $logger */
|
227 |
+
$logger = tribe( 'logger' );
|
228 |
+
$logger->log_error(
|
229 |
+
sprintf(
|
230 |
+
'Event Aggregator import task supposed to run in context of blog %d, running instead in blog %d: not importing.',
|
231 |
+
$task_blog_id,
|
232 |
+
$current_blog_id
|
233 |
+
),
|
234 |
+
'Event Aggregator Import'
|
235 |
+
);
|
236 |
+
|
237 |
+
// Return the item to indicate the task should be re-queued.
|
238 |
+
return $item;
|
239 |
+
}
|
240 |
+
|
241 |
/**
|
242 |
* To avoid deadlocks when dealing with circular dependencies an item can be requeued only
|
243 |
* so many times.
|
src/Tribe/Aggregator/Record/Abstract.php
CHANGED
@@ -733,7 +733,7 @@ abstract class Tribe__Events__Aggregator__Record__Abstract {
|
|
733 |
}
|
734 |
|
735 |
// Set site for origin(s) that need it for new token handling.
|
736 |
-
if (
|
737 |
$args['site'] = site_url();
|
738 |
}
|
739 |
|
733 |
}
|
734 |
|
735 |
// Set site for origin(s) that need it for new token handling.
|
736 |
+
if ( in_array( $args['origin'], array( 'eventbrite', 'facebook-dev' ), true ) ) {
|
737 |
$args['site'] = site_url();
|
738 |
}
|
739 |
|
src/Tribe/Aggregator/Record/Async_Queue.php
CHANGED
@@ -84,12 +84,16 @@ class Tribe__Events__Aggregator__Record__Async_Queue
|
|
84 |
/** @var Tribe__Process__Queue $import_queue */
|
85 |
$import_queue = tribe( 'events-aggregator.processes.import-events' );
|
86 |
|
|
|
|
|
|
|
87 |
foreach ( $items as $item ) {
|
88 |
-
$item_data
|
89 |
'user_id' => get_current_user_id(),
|
90 |
'record_id' => $this->record->id,
|
91 |
'data' => $item,
|
92 |
'transitional_id' => $transitional_id,
|
|
|
93 |
);
|
94 |
$import_queue->push_to_queue( $item_data );
|
95 |
}
|
84 |
/** @var Tribe__Process__Queue $import_queue */
|
85 |
$import_queue = tribe( 'events-aggregator.processes.import-events' );
|
86 |
|
87 |
+
// Fetch and store the current blog ID to make sure each task knows the blog context it should happen into.
|
88 |
+
$current_blog_id = is_multisite() ? get_current_blog_id() : 1;
|
89 |
+
|
90 |
foreach ( $items as $item ) {
|
91 |
+
$item_data = array(
|
92 |
'user_id' => get_current_user_id(),
|
93 |
'record_id' => $this->record->id,
|
94 |
'data' => $item,
|
95 |
'transitional_id' => $transitional_id,
|
96 |
+
'blog_id' => $current_blog_id,
|
97 |
);
|
98 |
$import_queue->push_to_queue( $item_data );
|
99 |
}
|
src/Tribe/Aggregator/Record/CSV.php
CHANGED
@@ -92,6 +92,16 @@ class Tribe__Events__Aggregator__Record__CSV extends Tribe__Events__Aggregator__
|
|
92 |
|
93 |
$rows = $importer->do_import_preview();
|
94 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
95 |
$headers = array_shift( $rows );
|
96 |
|
97 |
/*
|
@@ -99,12 +109,16 @@ class Tribe__Events__Aggregator__Record__CSV extends Tribe__Events__Aggregator__
|
|
99 |
* each column without an header a generated one.
|
100 |
*/
|
101 |
$empty_counter = 1;
|
102 |
-
|
|
|
|
|
103 |
if ( empty( $header ) ) {
|
104 |
$header = __( 'Unknown Column ', 'the-events-calendar' ) . $empty_counter ++;
|
105 |
}
|
|
|
106 |
}
|
107 |
|
|
|
108 |
$data = array();
|
109 |
|
110 |
foreach ( $rows as $row ) {
|
@@ -432,4 +446,4 @@ class Tribe__Events__Aggregator__Record__CSV extends Tribe__Events__Aggregator__
|
|
432 |
private function clean_up_after_import() {
|
433 |
Tribe__Events__Importer__File_Uploader::clear_old_files();
|
434 |
}
|
435 |
-
}
|
92 |
|
93 |
$rows = $importer->do_import_preview();
|
94 |
|
95 |
+
/*
|
96 |
+
* Strip whitespace from the beginning and end of row values
|
97 |
+
*/
|
98 |
+
$formatted_rows = array();
|
99 |
+
|
100 |
+
foreach ( $rows as $row ) {
|
101 |
+
$formatted_rows[] = array_map( 'trim', $row );
|
102 |
+
}
|
103 |
+
|
104 |
+
$rows = $formatted_rows;
|
105 |
$headers = array_shift( $rows );
|
106 |
|
107 |
/*
|
109 |
* each column without an header a generated one.
|
110 |
*/
|
111 |
$empty_counter = 1;
|
112 |
+
$formatted_headers = array();
|
113 |
+
|
114 |
+
foreach ( $headers as $header ) {
|
115 |
if ( empty( $header ) ) {
|
116 |
$header = __( 'Unknown Column ', 'the-events-calendar' ) . $empty_counter ++;
|
117 |
}
|
118 |
+
$formatted_headers[] = $header;
|
119 |
}
|
120 |
|
121 |
+
$headers = $formatted_headers;
|
122 |
$data = array();
|
123 |
|
124 |
foreach ( $rows as $row ) {
|
446 |
private function clean_up_after_import() {
|
447 |
Tribe__Events__Importer__File_Uploader::clear_old_files();
|
448 |
}
|
449 |
+
}
|
src/Tribe/Main.php
CHANGED
@@ -32,7 +32,7 @@ if ( ! class_exists( 'Tribe__Events__Main' ) ) {
|
|
32 |
const VENUE_POST_TYPE = 'tribe_venue';
|
33 |
const ORGANIZER_POST_TYPE = 'tribe_organizer';
|
34 |
|
35 |
-
const VERSION = '4.7.
|
36 |
const MIN_ADDON_VERSION = '4.4';
|
37 |
const MIN_COMMON_VERSION = '4.8';
|
38 |
|
@@ -439,6 +439,9 @@ if ( ! class_exists( 'Tribe__Events__Main' ) ) {
|
|
439 |
class_exists( 'Tribe__Events__Pro__Main' )
|
440 |
&& version_compare( Tribe__Events__Pro__Main::VERSION, $this->addon_dependencies['events-pro'], '<' )
|
441 |
) {
|
|
|
|
|
|
|
442 |
add_action( 'admin_notices', array( $this, 'pro_compatibility_notice' ) );
|
443 |
remove_action( 'plugins_loaded', 'Tribe_ECP_Load', 2 );
|
444 |
return;
|
@@ -1510,6 +1513,7 @@ if ( ! class_exists( 'Tribe__Events__Main' ) ) {
|
|
1510 |
'Main.php',
|
1511 |
'Deactivation.php',
|
1512 |
'Updater.php',
|
|
|
1513 |
);
|
1514 |
|
1515 |
foreach ( $files_to_include as $file ) {
|
32 |
const VENUE_POST_TYPE = 'tribe_venue';
|
33 |
const ORGANIZER_POST_TYPE = 'tribe_organizer';
|
34 |
|
35 |
+
const VERSION = '4.7.1';
|
36 |
const MIN_ADDON_VERSION = '4.4';
|
37 |
const MIN_COMMON_VERSION = '4.8';
|
38 |
|
439 |
class_exists( 'Tribe__Events__Pro__Main' )
|
440 |
&& version_compare( Tribe__Events__Pro__Main::VERSION, $this->addon_dependencies['events-pro'], '<' )
|
441 |
) {
|
442 |
+
$pue = new Tribe__Events__Pro__PUE( EVENTS_CALENDAR_PRO_DIR . '/events-calendar-pro.php' );
|
443 |
+
$pue->load_plugin_update_engine();
|
444 |
+
|
445 |
add_action( 'admin_notices', array( $this, 'pro_compatibility_notice' ) );
|
446 |
remove_action( 'plugins_loaded', 'Tribe_ECP_Load', 2 );
|
447 |
return;
|
1513 |
'Main.php',
|
1514 |
'Deactivation.php',
|
1515 |
'Updater.php',
|
1516 |
+
'PUE.php',
|
1517 |
);
|
1518 |
|
1519 |
foreach ( $files_to_include as $file ) {
|
src/Tribe/Query.php
CHANGED
@@ -942,7 +942,8 @@ if ( ! class_exists( 'Tribe__Events__Query' ) ) {
|
|
942 |
public static function getHideFromUpcomingEvents() {
|
943 |
global $wpdb;
|
944 |
|
945 |
-
$cache
|
|
|
946 |
$cache_key = 'tribe-hide-from-upcoming-events';
|
947 |
$found = $cache->get( $cache_key, 'save_post' );
|
948 |
if ( is_array( $found ) ) {
|
@@ -984,7 +985,8 @@ if ( ! class_exists( 'Tribe__Events__Query' ) ) {
|
|
984 |
$args = array_filter( $args, array( __CLASS__, 'filter_args' ) );
|
985 |
ksort( $args );
|
986 |
|
987 |
-
$cache
|
|
|
988 |
$cache_key = 'daily_counts_and_ids_' . serialize( $args );
|
989 |
$found = $cache->get( $cache_key, 'save_post' );
|
990 |
if ( $found ) {
|
@@ -1091,9 +1093,12 @@ if ( ! class_exists( 'Tribe__Events__Query' ) ) {
|
|
1091 |
update_object_term_cache( $final_event_ids, Tribe__Events__Main::POSTTYPE );
|
1092 |
update_postmeta_cache( $final_event_ids );
|
1093 |
}
|
|
|
1094 |
// return IDs per day and total counts per day
|
1095 |
$return = array( 'counts' => $counts, 'event_ids' => $event_ids );
|
1096 |
-
|
|
|
|
|
1097 |
$cache_key = 'daily_counts_and_ids_' . serialize( $args );
|
1098 |
$cache->set( $cache_key, $return, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
1099 |
|
@@ -1135,7 +1140,8 @@ if ( ! class_exists( 'Tribe__Events__Query' ) ) {
|
|
1135 |
$args = array_filter( $args, array( __CLASS__, 'filter_args' ) );
|
1136 |
ksort( $args );
|
1137 |
|
1138 |
-
$cache
|
|
|
1139 |
$cache_key = 'get_events_' . get_current_user_id() . serialize( $args );
|
1140 |
|
1141 |
$result = $cache->get( $cache_key, 'save_post' );
|
942 |
public static function getHideFromUpcomingEvents() {
|
943 |
global $wpdb;
|
944 |
|
945 |
+
/** @var Tribe__Cache $cache */
|
946 |
+
$cache = tribe( 'cache' );
|
947 |
$cache_key = 'tribe-hide-from-upcoming-events';
|
948 |
$found = $cache->get( $cache_key, 'save_post' );
|
949 |
if ( is_array( $found ) ) {
|
985 |
$args = array_filter( $args, array( __CLASS__, 'filter_args' ) );
|
986 |
ksort( $args );
|
987 |
|
988 |
+
/** @var Tribe__Cache $cache */
|
989 |
+
$cache = tribe( 'cache' );
|
990 |
$cache_key = 'daily_counts_and_ids_' . serialize( $args );
|
991 |
$found = $cache->get( $cache_key, 'save_post' );
|
992 |
if ( $found ) {
|
1093 |
update_object_term_cache( $final_event_ids, Tribe__Events__Main::POSTTYPE );
|
1094 |
update_postmeta_cache( $final_event_ids );
|
1095 |
}
|
1096 |
+
|
1097 |
// return IDs per day and total counts per day
|
1098 |
$return = array( 'counts' => $counts, 'event_ids' => $event_ids );
|
1099 |
+
|
1100 |
+
/** @var Tribe__Cache $cache */
|
1101 |
+
$cache = tribe( 'cache' );
|
1102 |
$cache_key = 'daily_counts_and_ids_' . serialize( $args );
|
1103 |
$cache->set( $cache_key, $return, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
1104 |
|
1140 |
$args = array_filter( $args, array( __CLASS__, 'filter_args' ) );
|
1141 |
ksort( $args );
|
1142 |
|
1143 |
+
/** @var Tribe__Cache $cache */
|
1144 |
+
$cache = tribe( 'cache' );
|
1145 |
$cache_key = 'get_events_' . get_current_user_id() . serialize( $args );
|
1146 |
|
1147 |
$result = $cache->get( $cache_key, 'save_post' );
|
src/Tribe/REST/V1/Endpoints/Archive_Event.php
CHANGED
@@ -53,18 +53,18 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Event
|
|
53 |
* @return WP_Error|WP_REST_Response An array containing the data on success or a WP_Error instance on failure.
|
54 |
*/
|
55 |
public function get( WP_REST_Request $request ) {
|
56 |
-
$args
|
57 |
$date_format = Tribe__Date_Utils::DBDATETIMEFORMAT;
|
58 |
|
59 |
-
$args['paged']
|
60 |
$args['posts_per_page'] = $request['per_page'];
|
61 |
-
$args['start_date']
|
62 |
Tribe__Timezones::localize_date( $date_format, $request['start_date'] )
|
63 |
: false;
|
64 |
-
$args['end_date']
|
65 |
Tribe__Timezones::localize_date( $date_format, $request['end_date'] )
|
66 |
: false;
|
67 |
-
$args['s']
|
68 |
|
69 |
if ( $post__in = $request['include'] ) {
|
70 |
$args['post__in'] = $request['include'];
|
@@ -122,7 +122,7 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Event
|
|
122 |
|
123 |
// Filter by geoloc
|
124 |
if ( ! empty( $request['geoloc'] ) ) {
|
125 |
-
$args['tribe_geoloc']
|
126 |
$args['tribe_geoloc_lat'] = isset( $request['geoloc_lat'] ) ? $request['geoloc_lat'] : '';
|
127 |
$args['tribe_geoloc_lng'] = isset( $request['geoloc_lng'] ) ? $request['geoloc_lng'] : '';
|
128 |
}
|
@@ -136,12 +136,8 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Event
|
|
136 |
|
137 |
$args = $this->parse_args( $args, $request->get_default_params() );
|
138 |
|
139 |
-
$data = array( 'events' => array() );
|
140 |
-
|
141 |
-
$data['rest_url'] = $this->get_current_rest_url( $args, $extra_rest_args );
|
142 |
-
|
143 |
if ( null === $request['status'] ) {
|
144 |
-
$cap
|
145 |
$args['post_status'] = current_user_can( $cap ) ? 'any' : 'publish';
|
146 |
} else {
|
147 |
$args['post_status'] = $this->filter_post_status_list( $request['status'] );
|
@@ -154,34 +150,52 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Event
|
|
154 |
$args['posts_per_page'] = $this->get_default_posts_per_page();
|
155 |
}
|
156 |
|
157 |
-
|
|
|
|
|
158 |
|
159 |
-
$
|
160 |
|
161 |
-
if (
|
162 |
-
$
|
163 |
|
164 |
-
|
165 |
-
}
|
166 |
|
167 |
-
|
168 |
|
169 |
-
|
170 |
|
171 |
-
|
172 |
-
|
173 |
-
}
|
174 |
|
175 |
-
|
176 |
-
|
177 |
-
}
|
178 |
|
179 |
-
|
180 |
-
$data['events'][] = $this->repository->get_event_data( $event_id );
|
181 |
-
}
|
182 |
|
183 |
-
|
184 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
|
186 |
/**
|
187 |
* Filters the data that will be returned for an events archive request.
|
53 |
* @return WP_Error|WP_REST_Response An array containing the data on success or a WP_Error instance on failure.
|
54 |
*/
|
55 |
public function get( WP_REST_Request $request ) {
|
56 |
+
$args = array();
|
57 |
$date_format = Tribe__Date_Utils::DBDATETIMEFORMAT;
|
58 |
|
59 |
+
$args['paged'] = $request['page'];
|
60 |
$args['posts_per_page'] = $request['per_page'];
|
61 |
+
$args['start_date'] = isset( $request['start_date'] ) ?
|
62 |
Tribe__Timezones::localize_date( $date_format, $request['start_date'] )
|
63 |
: false;
|
64 |
+
$args['end_date'] = isset( $request['end_date'] ) ?
|
65 |
Tribe__Timezones::localize_date( $date_format, $request['end_date'] )
|
66 |
: false;
|
67 |
+
$args['s'] = $request['search'];
|
68 |
|
69 |
if ( $post__in = $request['include'] ) {
|
70 |
$args['post__in'] = $request['include'];
|
122 |
|
123 |
// Filter by geoloc
|
124 |
if ( ! empty( $request['geoloc'] ) ) {
|
125 |
+
$args['tribe_geoloc'] = 1;
|
126 |
$args['tribe_geoloc_lat'] = isset( $request['geoloc_lat'] ) ? $request['geoloc_lat'] : '';
|
127 |
$args['tribe_geoloc_lng'] = isset( $request['geoloc_lng'] ) ? $request['geoloc_lng'] : '';
|
128 |
}
|
136 |
|
137 |
$args = $this->parse_args( $args, $request->get_default_params() );
|
138 |
|
|
|
|
|
|
|
|
|
139 |
if ( null === $request['status'] ) {
|
140 |
+
$cap = get_post_type_object( Tribe__Events__Main::POSTTYPE )->cap->edit_posts;
|
141 |
$args['post_status'] = current_user_can( $cap ) ? 'any' : 'publish';
|
142 |
} else {
|
143 |
$args['post_status'] = $this->filter_post_status_list( $request['status'] );
|
150 |
$args['posts_per_page'] = $this->get_default_posts_per_page();
|
151 |
}
|
152 |
|
153 |
+
/** @var Tribe__Cache $cache */
|
154 |
+
$cache = tribe( 'cache' );
|
155 |
+
$cache_key = 'rest_get_events_data_' . get_current_user_id() . '_' . wp_json_encode( $args );
|
156 |
|
157 |
+
$data = $cache->get( $cache_key, 'save_post' );
|
158 |
|
159 |
+
if ( ! is_array( $data ) ) {
|
160 |
+
$data = array( 'events' => array() );
|
161 |
|
162 |
+
$data['rest_url'] = $this->get_current_rest_url( $args, $extra_rest_args );
|
|
|
163 |
|
164 |
+
$events = tribe_get_events( $args );
|
165 |
|
166 |
+
$page = $this->parse_page( $request ) ? $this->parse_page( $request ) : 1;
|
167 |
|
168 |
+
if ( empty( $events ) && (int) $page > 1 ) {
|
169 |
+
$message = $this->messages->get_message( 'event-archive-page-not-found' );
|
|
|
170 |
|
171 |
+
return new WP_Error( 'event-archive-page-not-found', $message, array( 'status' => 404 ) );
|
172 |
+
}
|
|
|
173 |
|
174 |
+
$events = wp_list_pluck( $events, 'ID' );
|
|
|
|
|
175 |
|
176 |
+
unset( $args['fields'] );
|
177 |
+
|
178 |
+
if ( $this->has_next( $args, $page ) ) {
|
179 |
+
$data['next_rest_url'] = $this->get_next_rest_url( $data['rest_url'], $page );
|
180 |
+
}
|
181 |
+
|
182 |
+
if ( $this->has_previous( $page, $args ) ) {
|
183 |
+
$data['previous_rest_url'] = $this->get_previous_rest_url( $data['rest_url'], $page );;
|
184 |
+
}
|
185 |
+
|
186 |
+
foreach ( $events as $event_id ) {
|
187 |
+
$event = $this->repository->get_event_data( $event_id );
|
188 |
+
|
189 |
+
if ( $event && ! is_wp_error( $event ) ) {
|
190 |
+
$data['events'][] = $event;
|
191 |
+
}
|
192 |
+
}
|
193 |
+
|
194 |
+
$data['total'] = $total = $this->get_total( $args );
|
195 |
+
$data['total_pages'] = $this->get_total_pages( $total, $args['posts_per_page'] );
|
196 |
+
|
197 |
+
$cache->set( $cache_key, $data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
198 |
+
}
|
199 |
|
200 |
/**
|
201 |
* Filters the data that will be returned for an events archive request.
|
src/Tribe/REST/V1/Endpoints/Archive_Organizer.php
CHANGED
@@ -106,9 +106,7 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Organizer
|
|
106 |
*/
|
107 |
$default_only_with_upcoming = apply_filters( 'tribe_rest_organizer_default_only_with_upcoming', false );
|
108 |
|
109 |
-
$only_with_upcoming = isset( $request['only_with_upcoming'] )
|
110 |
-
? tribe_is_truthy( $request['only_with_upcoming'] )
|
111 |
-
: $default_only_with_upcoming;
|
112 |
unset( $args['only_with_upcoming'] );
|
113 |
|
114 |
if ( ! empty( $args['s'] ) ) {
|
@@ -130,42 +128,53 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Organizer
|
|
130 |
}
|
131 |
}
|
132 |
|
133 |
-
|
|
|
|
|
134 |
|
135 |
-
$
|
136 |
-
? $organizers
|
137 |
-
: tribe_get_organizers( $only_with_upcoming, $posts_per_page, true, $args );
|
138 |
|
139 |
-
|
|
|
|
|
140 |
|
141 |
-
|
142 |
|
143 |
-
|
144 |
|
145 |
-
|
146 |
-
$data['organizers'][] = $this->repository->get_organizer_data( $organizer_id );
|
147 |
-
}
|
148 |
|
149 |
-
|
|
|
150 |
|
151 |
-
|
|
|
|
|
|
|
152 |
|
153 |
-
|
154 |
-
$message = $this->messages->get_message( 'organizer-archive-page-not-found' );
|
155 |
|
156 |
-
|
157 |
-
}
|
158 |
|
159 |
-
|
160 |
-
|
161 |
-
}
|
162 |
|
163 |
-
|
164 |
-
|
165 |
-
}
|
166 |
|
167 |
-
|
168 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
169 |
|
170 |
$response = new WP_REST_Response( $data );
|
171 |
|
106 |
*/
|
107 |
$default_only_with_upcoming = apply_filters( 'tribe_rest_organizer_default_only_with_upcoming', false );
|
108 |
|
109 |
+
$only_with_upcoming = isset( $request['only_with_upcoming'] ) ? tribe_is_truthy( $request['only_with_upcoming'] ) : $default_only_with_upcoming;
|
|
|
|
|
110 |
unset( $args['only_with_upcoming'] );
|
111 |
|
112 |
if ( ! empty( $args['s'] ) ) {
|
128 |
}
|
129 |
}
|
130 |
|
131 |
+
/** @var Tribe__Cache $cache */
|
132 |
+
$cache = tribe( 'cache' );
|
133 |
+
$cache_key = 'rest_get_organizers_data_' . get_current_user_id() . '_' . wp_json_encode( $args );
|
134 |
|
135 |
+
$data = $cache->get( $cache_key, 'save_post' );
|
|
|
|
|
136 |
|
137 |
+
if ( ! is_array( $data ) ) {
|
138 |
+
$posts_per_page = Tribe__Utils__Array::get( $args, 'posts_per_page', $this->get_default_posts_per_page() );
|
139 |
+
$organizers = isset( $organizers ) ? $organizers : tribe_get_organizers( $only_with_upcoming, $posts_per_page, true, $args );
|
140 |
|
141 |
+
unset( $args['fields'] );
|
142 |
|
143 |
+
$ids = wp_list_pluck( $organizers, 'ID' );
|
144 |
|
145 |
+
$data = array( 'organizers' => array() );
|
|
|
|
|
146 |
|
147 |
+
foreach ( $ids as $organizer_id ) {
|
148 |
+
$organizer = $this->repository->get_organizer_data( $organizer_id );
|
149 |
|
150 |
+
if ( $organizer && ! is_wp_error( $organizer ) ) {
|
151 |
+
$data['organizers'][] = $organizer;
|
152 |
+
}
|
153 |
+
}
|
154 |
|
155 |
+
$data['rest_url'] = $this->get_current_rest_url( $args );
|
|
|
156 |
|
157 |
+
$page = Tribe__Utils__Array::get( $args, 'paged', 1 );
|
|
|
158 |
|
159 |
+
if ( empty( $organizers ) && (int) $page > 1 ) {
|
160 |
+
$message = $this->messages->get_message( 'organizer-archive-page-not-found' );
|
|
|
161 |
|
162 |
+
return new WP_Error( 'organizer-archive-page-not-found', $message, array( 'status' => 404 ) );
|
163 |
+
}
|
|
|
164 |
|
165 |
+
if ( $this->has_next( $args, $page, $only_with_upcoming ) ) {
|
166 |
+
$data['next_rest_url'] = $this->get_next_rest_url( $data['rest_url'], $page );
|
167 |
+
}
|
168 |
+
|
169 |
+
if ( $this->has_previous( $page, $args, $only_with_upcoming ) ) {
|
170 |
+
$data['previous_rest_url'] = $this->get_previous_rest_url( $data['rest_url'], $page );;
|
171 |
+
}
|
172 |
+
|
173 |
+
$data['total'] = $total = $this->get_total( $args, $only_with_upcoming );
|
174 |
+
$data['total_pages'] = $this->get_total_pages( $total, $posts_per_page );
|
175 |
+
|
176 |
+
$cache->set( $cache_key, $data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
177 |
+
}
|
178 |
|
179 |
$response = new WP_REST_Response( $data );
|
180 |
|
src/Tribe/REST/V1/Endpoints/Archive_Venue.php
CHANGED
@@ -105,9 +105,7 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Venue
|
|
105 |
*/
|
106 |
$default_only_with_upcoming = apply_filters( 'tribe_rest_venue_default_only_with_upcoming', false );
|
107 |
|
108 |
-
$only_with_upcoming = isset( $request['only_with_upcoming'] )
|
109 |
-
? tribe_is_truthy( $request['only_with_upcoming'] )
|
110 |
-
: $default_only_with_upcoming;
|
111 |
unset( $args['only_with_upcoming'] );
|
112 |
|
113 |
if ( ! empty( $args['s'] ) ) {
|
@@ -128,41 +126,53 @@ class Tribe__Events__REST__V1__Endpoints__Archive_Venue
|
|
128 |
}
|
129 |
}
|
130 |
|
131 |
-
|
132 |
-
$
|
133 |
-
|
134 |
-
: tribe_get_venues( $only_with_upcoming, $posts_per_page, true, $args );
|
135 |
|
136 |
-
|
137 |
|
138 |
-
|
|
|
|
|
139 |
|
140 |
-
|
141 |
|
142 |
-
|
143 |
-
$data['venues'][] = $this->repository->get_venue_data( $venue_id );
|
144 |
-
}
|
145 |
|
146 |
-
|
147 |
|
148 |
-
|
|
|
149 |
|
150 |
-
|
151 |
-
|
|
|
|
|
152 |
|
153 |
-
|
154 |
-
}
|
155 |
|
156 |
-
|
157 |
-
$data['next_rest_url'] = $this->get_next_rest_url( $data['rest_url'], $page );
|
158 |
-
}
|
159 |
|
160 |
-
|
161 |
-
|
162 |
-
|
|
|
|
|
163 |
|
164 |
-
|
165 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
|
167 |
$response = new WP_REST_Response( $data );
|
168 |
|
105 |
*/
|
106 |
$default_only_with_upcoming = apply_filters( 'tribe_rest_venue_default_only_with_upcoming', false );
|
107 |
|
108 |
+
$only_with_upcoming = isset( $request['only_with_upcoming'] ) ? tribe_is_truthy( $request['only_with_upcoming'] ) : $default_only_with_upcoming;
|
|
|
|
|
109 |
unset( $args['only_with_upcoming'] );
|
110 |
|
111 |
if ( ! empty( $args['s'] ) ) {
|
126 |
}
|
127 |
}
|
128 |
|
129 |
+
/** @var Tribe__Cache $cache */
|
130 |
+
$cache = tribe( 'cache' );
|
131 |
+
$cache_key = 'rest_get_venues_data_' . get_current_user_id() . '_' . wp_json_encode( $args );
|
|
|
132 |
|
133 |
+
$data = $cache->get( $cache_key, 'save_post' );
|
134 |
|
135 |
+
if ( ! is_array( $data ) ) {
|
136 |
+
$posts_per_page = Tribe__Utils__Array::get( $args, 'posts_per_page', $this->get_default_posts_per_page() );
|
137 |
+
$venues = isset( $venues ) ? $venues : tribe_get_venues( $only_with_upcoming, $posts_per_page, true, $args );
|
138 |
|
139 |
+
unset( $args['fields'] );
|
140 |
|
141 |
+
$ids = wp_list_pluck( $venues, 'ID' );
|
|
|
|
|
142 |
|
143 |
+
$data = array( 'venues' => array() );
|
144 |
|
145 |
+
foreach ( $ids as $venue_id ) {
|
146 |
+
$venue = $this->repository->get_venue_data( $venue_id );
|
147 |
|
148 |
+
if ( $venue && ! is_wp_error( $venue ) ) {
|
149 |
+
$data['venues'][] = $venue;
|
150 |
+
}
|
151 |
+
}
|
152 |
|
153 |
+
$data['rest_url'] = $this->get_current_rest_url( $args );
|
|
|
154 |
|
155 |
+
$page = Tribe__Utils__Array::get( $args, 'paged', 1 );
|
|
|
|
|
156 |
|
157 |
+
if ( empty( $venues ) && (int) $page > 1 ) {
|
158 |
+
$message = $this->messages->get_message( 'venue-archive-page-not-found' );
|
159 |
+
|
160 |
+
return new WP_Error( 'venue-archive-page-not-found', $message, array( 'status' => 404 ) );
|
161 |
+
}
|
162 |
|
163 |
+
if ( $this->has_next( $args, $page, $only_with_upcoming ) ) {
|
164 |
+
$data['next_rest_url'] = $this->get_next_rest_url( $data['rest_url'], $page );
|
165 |
+
}
|
166 |
+
|
167 |
+
if ( $this->has_previous( $page, $args, $only_with_upcoming ) ) {
|
168 |
+
$data['previous_rest_url'] = $this->get_previous_rest_url( $data['rest_url'], $page );;
|
169 |
+
}
|
170 |
+
|
171 |
+
$data['total'] = $total = $this->get_total( $args, $only_with_upcoming );
|
172 |
+
$data['total_pages'] = $this->get_total_pages( $total, $posts_per_page );
|
173 |
+
|
174 |
+
$cache->set( $cache_key, $data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
175 |
+
}
|
176 |
|
177 |
$response = new WP_REST_Response( $data );
|
178 |
|
src/Tribe/REST/V1/Post_Repository.php
CHANGED
@@ -60,6 +60,20 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
60 |
* @since 4.6 Added $context param
|
61 |
*/
|
62 |
public function get_event_data( $event_id, $context = '' ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
$event = get_post( $event_id );
|
64 |
|
65 |
if ( empty( $event ) || ! tribe_is_event( $event ) ) {
|
@@ -147,6 +161,8 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
147 |
*/
|
148 |
$data = apply_filters( 'tribe_rest_event_data', $data, $event );
|
149 |
|
|
|
|
|
150 |
return $data;
|
151 |
}
|
152 |
|
@@ -161,6 +177,20 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
161 |
* @since 4.6 Added $context param
|
162 |
*/
|
163 |
public function get_venue_data( $event_or_venue_id, $context = '' ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
if ( tribe_is_event( $event_or_venue_id ) ) {
|
165 |
$venue = get_post( tribe_get_venue_id( $event_or_venue_id ) );
|
166 |
if ( empty( $venue ) ) {
|
@@ -248,6 +278,8 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
248 |
*/
|
249 |
$data = apply_filters( 'tribe_rest_venue_data', $data, $venue, $event );
|
250 |
|
|
|
|
|
251 |
return $data;
|
252 |
}
|
253 |
|
@@ -348,7 +380,26 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
348 |
|
349 |
$data = array();
|
350 |
|
|
|
|
|
|
|
351 |
foreach ( $organizers as $organizer_id ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
352 |
$organizer = get_post( $organizer_id );
|
353 |
|
354 |
if ( empty( $organizer ) ) {
|
@@ -405,6 +456,8 @@ class Tribe__Events__REST__V1__Post_Repository implements Tribe__Events__REST__I
|
|
405 |
*/
|
406 |
$this_data = apply_filters( 'tribe_rest_organizer_data', array_filter( $this_data ), $organizer );
|
407 |
|
|
|
|
|
408 |
$data[] = $this_data;
|
409 |
}
|
410 |
|
60 |
* @since 4.6 Added $context param
|
61 |
*/
|
62 |
public function get_event_data( $event_id, $context = '' ) {
|
63 |
+
if ( $event_id instanceof WP_Post ) {
|
64 |
+
$event_id = $event_id->ID;
|
65 |
+
}
|
66 |
+
|
67 |
+
/** @var Tribe__Cache $cache */
|
68 |
+
$cache = tribe( 'cache' );
|
69 |
+
$cache_key = 'rest_get_event_data_' . get_current_user_id() . '_' . $event_id . '_' . $context;
|
70 |
+
|
71 |
+
$data = $cache->get( $cache_key, 'save_post' );
|
72 |
+
|
73 |
+
if ( is_array( $data ) ) {
|
74 |
+
return $data;
|
75 |
+
}
|
76 |
+
|
77 |
$event = get_post( $event_id );
|
78 |
|
79 |
if ( empty( $event ) || ! tribe_is_event( $event ) ) {
|
161 |
*/
|
162 |
$data = apply_filters( 'tribe_rest_event_data', $data, $event );
|
163 |
|
164 |
+
$cache->set( $cache_key, $data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
165 |
+
|
166 |
return $data;
|
167 |
}
|
168 |
|
177 |
* @since 4.6 Added $context param
|
178 |
*/
|
179 |
public function get_venue_data( $event_or_venue_id, $context = '' ) {
|
180 |
+
if ( $event_or_venue_id instanceof WP_Post ) {
|
181 |
+
$event_or_venue_id = tribe_get_venue_id( $event_or_venue_id->ID );
|
182 |
+
}
|
183 |
+
|
184 |
+
/** @var Tribe__Cache $cache */
|
185 |
+
$cache = tribe( 'cache' );
|
186 |
+
$cache_key = 'rest_get_venue_data_' . get_current_user_id() . '_' . $event_or_venue_id . '_' . $context;
|
187 |
+
|
188 |
+
$data = $cache->get( $cache_key, 'save_post' );
|
189 |
+
|
190 |
+
if ( is_array( $data ) ) {
|
191 |
+
return $data;
|
192 |
+
}
|
193 |
+
|
194 |
if ( tribe_is_event( $event_or_venue_id ) ) {
|
195 |
$venue = get_post( tribe_get_venue_id( $event_or_venue_id ) );
|
196 |
if ( empty( $venue ) ) {
|
278 |
*/
|
279 |
$data = apply_filters( 'tribe_rest_venue_data', $data, $venue, $event );
|
280 |
|
281 |
+
$cache->set( $cache_key, $data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
282 |
+
|
283 |
return $data;
|
284 |
}
|
285 |
|
380 |
|
381 |
$data = array();
|
382 |
|
383 |
+
/** @var Tribe__Cache $cache */
|
384 |
+
$cache = tribe( 'cache' );
|
385 |
+
|
386 |
foreach ( $organizers as $organizer_id ) {
|
387 |
+
if ( is_object( $organizer_id ) ) {
|
388 |
+
$organizer = $organizer_id;
|
389 |
+
|
390 |
+
$organizer_id = $organizer->ID;
|
391 |
+
}
|
392 |
+
|
393 |
+
$cache_key = 'rest_get_organizer_data_' . get_current_user_id() . '_' . $organizer_id . '_' . $context;
|
394 |
+
|
395 |
+
$this_data = $cache->get( $cache_key, 'save_post' );
|
396 |
+
|
397 |
+
if ( is_array( $this_data ) ) {
|
398 |
+
$data[] = $this_data;
|
399 |
+
|
400 |
+
continue;
|
401 |
+
}
|
402 |
+
|
403 |
$organizer = get_post( $organizer_id );
|
404 |
|
405 |
if ( empty( $organizer ) ) {
|
456 |
*/
|
457 |
$this_data = apply_filters( 'tribe_rest_organizer_data', array_filter( $this_data ), $organizer );
|
458 |
|
459 |
+
$cache->set( $cache_key, $this_data, Tribe__Cache::NON_PERSISTENT, 'save_post' );
|
460 |
+
|
461 |
$data[] = $this_data;
|
462 |
}
|
463 |
|
src/Tribe/Template/Month.php
CHANGED
@@ -569,6 +569,15 @@ if ( ! class_exists( 'Tribe__Events__Template__Month' ) ) {
|
|
569 |
$cached_events = $cache->$cache_getter( $cache_key, 'save_post' );
|
570 |
|
571 |
if ( $cached_events !== false ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
572 |
$this->events_in_month = $cached_events;
|
573 |
return;
|
574 |
}
|
569 |
$cached_events = $cache->$cache_getter( $cache_key, 'save_post' );
|
570 |
|
571 |
if ( $cached_events !== false ) {
|
572 |
+
/**
|
573 |
+
* A simple utility to listen for when events have been successfully pulled from cache.
|
574 |
+
*
|
575 |
+
* @since 4.7.1
|
576 |
+
*
|
577 |
+
* @param array $cached_events The array of event data pulled from cache.
|
578 |
+
*/
|
579 |
+
do_action( 'tribe_events_set_month_view_events_from_cache', $cached_events );
|
580 |
+
|
581 |
$this->events_in_month = $cached_events;
|
582 |
return;
|
583 |
}
|
src/resources/js/tribe-events-ajax-calendar.js
CHANGED
@@ -374,7 +374,8 @@
|
|
374 |
if ( ts.ajax_running ) {
|
375 |
return;
|
376 |
}
|
377 |
-
|
|
|
378 |
if ( '0' !== ts.datepicker_format ) {
|
379 |
ts.date = tribeDateFormat( $tribedate.bootstrapDatepicker( 'getDate' ), 'tribeMonthQuery' );
|
380 |
}
|
@@ -382,6 +383,7 @@
|
|
382 |
ts.date = $tribedate.val();
|
383 |
}
|
384 |
}
|
|
|
385 |
else {
|
386 |
if ( !dateMod ) {
|
387 |
ts.date = td.cur_date.slice( 0, -3 );
|
374 |
if ( ts.ajax_running ) {
|
375 |
return;
|
376 |
}
|
377 |
+
|
378 |
+
if ( $tribedate.length ) {
|
379 |
if ( '0' !== ts.datepicker_format ) {
|
380 |
ts.date = tribeDateFormat( $tribedate.bootstrapDatepicker( 'getDate' ), 'tribeMonthQuery' );
|
381 |
}
|
383 |
ts.date = $tribedate.val();
|
384 |
}
|
385 |
}
|
386 |
+
|
387 |
else {
|
388 |
if ( !dateMod ) {
|
389 |
ts.date = td.cur_date.slice( 0, -3 );
|
src/resources/js/tribe-events-ajax-calendar.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(m,v,g,f,h,y,x,j,k,w){g(v).ready(function(){var r=g("body"),e=g('[class^="tribe-events-nav-"] a'),t=y.get_url_param("tribe-bar-date"),i=g(v.getElementById("tribe-events")),a=g(v.getElementById("tribe-bar-date")),n=!1;if(!(i.length<1||r.hasClass("single-tribe_events"))){var s="/";void 0!==k.events_base?s=g(v.getElementById("tribe-events-header")).data("baseurl"):e.length&&(s=e.first().attr("href").slice(0,-8)),f.default_permalinks&&(s=s.split("?")[0]),g(".tribe-events-calendar").length&&g(v.getElementById("tribe-events-bar")).length&&t&&7<t.length&&(g(v.getElementById("tribe-bar-date-day")).val(t.slice(-3)),a.val(t.substring(0,7)));var l="yyyy-mm";if("0"!==x.datepicker_format){var o=parseInt(x.datepicker_format),_="m"+x.datepicker_format.toString();l=f.datepicker_formats.month[o],t&&(t.length<=7&&(t+="-01"),a.val(tribeDateFormat(t,_)))}if(f.datepicker_opts={format:l,minViewMode:"months",autoclose:!0},tribe_ev.fn.ensure_datepicker_i18n(),a.bootstrapDatepicker(f.datepicker_opts).on("changeDate",function(e){x.mdate=e.date;var t=e.date.getFullYear(),a=("0"+(e.date.getMonth()+1)).slice(-2);if(n=!0,x.date=t+"-"+a,j.no_bar()||j.live_ajax()&&j.pushstate){if(x.ajax_running||x.updating_picker)return;x.filter_cats?f.cur_url=g(v.getElementById("tribe-events-header")).data("baseurl")+x.date+"/":f.default_permalinks?f.cur_url=s:f.cur_url=s+x.date+"/",x.popping=!1,y.pre_ajax(function(){c()})}}),b(!0),g(h).on("tribe_ev_resizeComplete",function(){b(!0)}),j.pushstate&&!j.map_view()){var d="action=tribe_calendar&eventDate="+g("#tribe-events-header").data("date");f.params.length&&(d=d+"&"+f.params),x.category&&(d=d+"&tribe_event_category="+x.category),y.is_featured()&&(d+="&featured=1"),history.replaceState({tribe_params:d},x.page_title,location.href),g(m).on("popstate",function(e){var t=e.originalEvent.state;t&&(x.do_string=!1,x.pushstate=!1,x.popping=!0,x.params=t.tribe_params,y.pre_ajax(function(){c()}),y.set_form(x.params))})}g(v.getElementById("tribe-events")).on("click",".tribe-events-nav-previous, .tribe-events-nav-next",function(e){if(e.preventDefault(),!x.ajax_running){var t,a=g(this).find("a");x.date=a.data("month"),x.mdate=x.date+"-01","0"!==x.datepicker_format?y.update_picker(tribeDateFormat(x.mdate,_)):y.update_picker(x.date),t=x.filter_cats?g("#tribe-events-header").data("baseurl"):a.attr("href"),f.default_permalinks&&(t=f.cur_url.split("?")[0]),i.is(".tribe-events-shortcode")&&f.default_permalinks&&(t=y.get_base_url()),y.update_base_url(t),x.popping=!1,y.pre_ajax(function(){c()})}}).on("click","td.tribe-events-thismonth a",function(e){e.stopPropagation()}).on("click",'[id*="tribe-events-daynum-"] a',function(e){r.is(".tribe-mobile")&&(e.preventDefault(),u(g(this).closest(".mobile-trigger")))}).on("click",".mobile-trigger",function(e){r.is(".tribe-mobile")&&(e.preventDefault(),e.stopPropagation(),u(g(this)))}),y.snap("#tribe-bar-form","body","#tribe-events-footer .tribe-events-nav-previous, #tribe-events-footer .tribe-events-nav-next"),g("form#tribe-bar-form").on("submit",function(e){!function(e){if("change_view"!=tribe_events_bar_action){if(e.preventDefault(),x.ajax_running)return;a.
|
1 |
+
!function(m,v,g,f,h,y,x,j,k,w){g(v).ready(function(){var r=g("body"),e=g('[class^="tribe-events-nav-"] a'),t=y.get_url_param("tribe-bar-date"),i=g(v.getElementById("tribe-events")),a=g(v.getElementById("tribe-bar-date")),n=!1;if(!(i.length<1||r.hasClass("single-tribe_events"))){var s="/";void 0!==k.events_base?s=g(v.getElementById("tribe-events-header")).data("baseurl"):e.length&&(s=e.first().attr("href").slice(0,-8)),f.default_permalinks&&(s=s.split("?")[0]),g(".tribe-events-calendar").length&&g(v.getElementById("tribe-events-bar")).length&&t&&7<t.length&&(g(v.getElementById("tribe-bar-date-day")).val(t.slice(-3)),a.val(t.substring(0,7)));var l="yyyy-mm";if("0"!==x.datepicker_format){var o=parseInt(x.datepicker_format),_="m"+x.datepicker_format.toString();l=f.datepicker_formats.month[o],t&&(t.length<=7&&(t+="-01"),a.val(tribeDateFormat(t,_)))}if(f.datepicker_opts={format:l,minViewMode:"months",autoclose:!0},tribe_ev.fn.ensure_datepicker_i18n(),a.bootstrapDatepicker(f.datepicker_opts).on("changeDate",function(e){x.mdate=e.date;var t=e.date.getFullYear(),a=("0"+(e.date.getMonth()+1)).slice(-2);if(n=!0,x.date=t+"-"+a,j.no_bar()||j.live_ajax()&&j.pushstate){if(x.ajax_running||x.updating_picker)return;x.filter_cats?f.cur_url=g(v.getElementById("tribe-events-header")).data("baseurl")+x.date+"/":f.default_permalinks?f.cur_url=s:f.cur_url=s+x.date+"/",x.popping=!1,y.pre_ajax(function(){c()})}}),b(!0),g(h).on("tribe_ev_resizeComplete",function(){b(!0)}),j.pushstate&&!j.map_view()){var d="action=tribe_calendar&eventDate="+g("#tribe-events-header").data("date");f.params.length&&(d=d+"&"+f.params),x.category&&(d=d+"&tribe_event_category="+x.category),y.is_featured()&&(d+="&featured=1"),history.replaceState({tribe_params:d},x.page_title,location.href),g(m).on("popstate",function(e){var t=e.originalEvent.state;t&&(x.do_string=!1,x.pushstate=!1,x.popping=!0,x.params=t.tribe_params,y.pre_ajax(function(){c()}),y.set_form(x.params))})}g(v.getElementById("tribe-events")).on("click",".tribe-events-nav-previous, .tribe-events-nav-next",function(e){if(e.preventDefault(),!x.ajax_running){var t,a=g(this).find("a");x.date=a.data("month"),x.mdate=x.date+"-01","0"!==x.datepicker_format?y.update_picker(tribeDateFormat(x.mdate,_)):y.update_picker(x.date),t=x.filter_cats?g("#tribe-events-header").data("baseurl"):a.attr("href"),f.default_permalinks&&(t=f.cur_url.split("?")[0]),i.is(".tribe-events-shortcode")&&f.default_permalinks&&(t=y.get_base_url()),y.update_base_url(t),x.popping=!1,y.pre_ajax(function(){c()})}}).on("click","td.tribe-events-thismonth a",function(e){e.stopPropagation()}).on("click",'[id*="tribe-events-daynum-"] a',function(e){r.is(".tribe-mobile")&&(e.preventDefault(),u(g(this).closest(".mobile-trigger")))}).on("click",".mobile-trigger",function(e){r.is(".tribe-mobile")&&(e.preventDefault(),e.stopPropagation(),u(g(this)))}),y.snap("#tribe-bar-form","body","#tribe-events-footer .tribe-events-nav-previous, #tribe-events-footer .tribe-events-nav-next"),g("form#tribe-bar-form").on("submit",function(e){!function(e){if("change_view"!=tribe_events_bar_action){if(e.preventDefault(),x.ajax_running)return;a.length?"0"!==x.datepicker_format?x.date=tribeDateFormat(a.bootstrapDatepicker("getDate"),"tribeMonthQuery"):x.date=a.val():n||(x.date=f.cur_date.slice(0,-3)),x.filter_cats?f.cur_url=g("#tribe-events-header").data("baseurl")+x.date+"/":f.default_permalinks?f.cur_url=s:f.cur_url=s+x.date+"/",x.popping=!1,y.pre_ajax(function(){c()})}}(e)}),g(h).on("tribe_ev_runAjax",function(){c()}),g(h).on("tribe_ev_updatingRecurrence",function(){x.date=g("#tribe-events-header").data("date"),x.filter_cats?f.cur_url=g("#tribe-events-header").data("baseurl")+x.date+"/":f.default_permalinks?f.cur_url=s:f.cur_url=s+x.date+"/",x.popping=!1}),w&&tec_debug.info("TEC Debug: tribe-events-ajax-calendar.js successfully loaded, Tribe Events Init finished"),w&&tec_debug.timeEnd("Tribe JS Init Timer")}function u(e){var t=e.data("tribejson");if(void 0!==e.attr("data-day")){t.date=e.attr("data-day");var a,r,i,n,s,l=e.parents(".tribe-events-calendar"),o=l.next(v.getElementById("tribe-mobile-container")),_=o.find(".tribe-mobile-day"),d=l.find(".mobile-trigger"),u='[data-day="'+t.date+'"]',p=_.filter(u);t.has_events=e.hasClass("tribe-events-has-events"),d.removeClass("mobile-active").filter(u).addClass("mobile-active"),_.hide(),p.length?p.show():(o.append(tribe_tmpl("tribe_tmpl_month_mobile_day_header",t)),a=t.date,r=g('.tribe-mobile-day[data-day="'+a+'"]'),i=g('.tribe-events-calendar td[data-day="'+a+'"]'),n=i.find(".tribe-events-viewmore"),(s=i.find(".type-tribe_events")).length&&(s.each(function(){var e=g(this);if(e.tribe_has_attr("data-tribejson")){var t=e.data("tribejson");if("string"==typeof t)try{t=JSON.parse(t)}catch(e){t={}}t&&"eventId"in t&&r.append(tribe_tmpl("tribe_tmpl_month_mobile",t))}}),n.length&&r.append(n.clone())))}}function p(){i.find(".tribe-events-calendar th").each(function(){var e=g(this),t=e.attr("data-day-abbr"),a=e.attr("title");r.is(".tribe-mobile")?e.text(t):e.text(a)})}function b(e){r.is(".tribe-mobile")?(p(),function(){var e=i.find(".mobile-active"),t=i.find(".mobile-trigger"),a=i.find(v.getElementById("tribe-events-content")).find(".tribe-events-calendar");e.length||(e=i.find(".tribe-events-present"));g(v.getElementById("tribe-mobile-container")).length||g('<div id="tribe-mobile-container" />').insertAfter(a),e.length&&e.is(".tribe-events-thismonth")?u(e):u(t.filter(".tribe-events-thismonth").first())}()):e&&p()}function c(){y.invalid_date(x.date)||(g(".tribe-events-calendar").tribe_spin(),x.pushcount=0,x.ajax_running=!0,x.popping||(x.params={action:"tribe_calendar",eventDate:x.date,featured:y.is_featured()},x.url_params={},x.category&&(x.params.tribe_event_category=x.category,x.url_params.tribe_events_cat=x.category),f.default_permalinks&&(i.is(".tribe-events-shortcode")||(x.url_params.hasOwnProperty("post_type")||(x.url_params.post_type=k.events_post_type),x.url_params.hasOwnProperty("eventDisplay")||(x.url_params.eventDisplay=x.view))),g(h).trigger("tribe_ev_serializeBar"),x.params=g.param(x.params),x.url_params=g.param(x.url_params),g(h).trigger("tribe_ev_collectParams"),0<x.pushcount||x.filters||f.default_permalinks||x.category?(x.do_string=!0,x.pushstate=!1):(x.do_string=!1,x.pushstate=!0)),j.pushstate&&!x.filter_cats?(w&&tec_debug.time("Month View Ajax Timer"),g(h).trigger("tribe_ev_ajaxStart").trigger("tribe_ev_monthView_AjaxStart"),g.post(TribeCalendar.ajaxurl,x.params,function(e){if(x.initial_load=!1,y.enable_inputs("#tribe_events_filters_form","input, select"),e.success){x.ajax_running=!1,f.ajax_response={total_count:"",view:e.view,max_pages:"",tribe_paged:"",timestamp:(new Date).getTime()},w&&0===e.html&&tec_debug.warn("Month view ajax had an error in the query and returned 0.");var t="";t=g.isFunction(g.fn.parseHTML)?g.parseHTML(e.html):e.html,f.cur_url=y.get_base_url(),g("#tribe-events-content").replaceWith(t),b(!0),x.page_title=g("#tribe-events-header").data("title"),x.view_title=g("#tribe-events-header").data("viewtitle"),v.title=x.page_title,g(".tribe-events-page-title").html(x.view_title),(g("#tribe-events.tribe-events-shortcode").length||x.do_string)&&(f.default_permalinks?f.cur_url=f.cur_url+"&"+x.url_params:(-1!==f.cur_url.indexOf("?")&&(f.cur_url=f.cur_url.split("?")[0]),f.cur_url=f.cur_url+"?"+x.url_params)),x.do_string&&history.pushState({tribe_date:x.date,tribe_params:x.params},x.page_title,f.cur_url),x.pushstate&&history.pushState({tribe_date:x.date,tribe_params:x.params},x.page_title,f.cur_url),g(h).trigger("tribe_ev_ajaxSuccess").trigger("tribe_ev_monthView_ajaxSuccess"),g(h).trigger("ajax-success.tribe").trigger("tribe_ev_monthView_ajaxSuccess"),w&&tec_debug.timeEnd("Month View Ajax Timer")}})):x.url_params.length?m.location=f.cur_url+"?"+x.url_params:m.location=f.cur_url)}})}(window,document,jQuery,tribe_ev.data,tribe_ev.events,tribe_ev.fn,tribe_ev.state,tribe_ev.tests,tribe_js_config,tribe_debug);
|
src/views/month/mobile.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
*
|
7 |
* [your-theme]/tribe-events/month/mobile.php
|
8 |
*
|
9 |
-
* @version 4.
|
10 |
*/
|
11 |
?>
|
12 |
|
@@ -17,7 +17,7 @@
|
|
17 |
</script>
|
18 |
|
19 |
<script type="text/html" id="tribe_tmpl_month_mobile">
|
20 |
-
<div class="
|
21 |
<h4 class="summary">
|
22 |
<a class="url" href="[[=permalink]]" title="[[=title]]" rel="bookmark">[[=raw title]]<\/a>
|
23 |
<\/h4>
|
6 |
*
|
7 |
* [your-theme]/tribe-events/month/mobile.php
|
8 |
*
|
9 |
+
* @version 4.7.1
|
10 |
*/
|
11 |
?>
|
12 |
|
17 |
</script>
|
18 |
|
19 |
<script type="text/html" id="tribe_tmpl_month_mobile">
|
20 |
+
<div class="tribe-events-mobile tribe-clearfix tribe-events-mobile-event-[[=eventId]][[ if(categoryClasses.length) { ]] [[= categoryClasses]][[ } ]]">
|
21 |
<h4 class="summary">
|
22 |
<a class="url" href="[[=permalink]]" title="[[=title]]" rel="bookmark">[[=raw title]]<\/a>
|
23 |
<\/h4>
|
the-events-calendar.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
Plugin Name: The Events Calendar
|
4 |
Description: The Events Calendar is a carefully crafted, extensible plugin that lets you easily share your events. Beautiful. Solid. Awesome.
|
5 |
-
Version: 4.7.
|
6 |
Author: Modern Tribe, Inc.
|
7 |
Author URI: http://m.tri.be/1x
|
8 |
Text Domain: the-events-calendar
|
2 |
/*
|
3 |
Plugin Name: The Events Calendar
|
4 |
Description: The Events Calendar is a carefully crafted, extensible plugin that lets you easily share your events. Beautiful. Solid. Awesome.
|
5 |
+
Version: 4.7.1
|
6 |
Author: Modern Tribe, Inc.
|
7 |
Author URI: http://m.tri.be/1x
|
8 |
Text Domain: the-events-calendar
|