Version Description
February 25, 2015 =
Added custom date range options.
Added option to hide tooltips on grid display.
Added additional save button at the bottom of the feed settings.
Performance updates to script enqueues.
Updated Catalan translation files.
Updated list output logic.
Fixed bug with multi-day events sometimes not showing up in list view.
Fixed bug with calendar ID field not getting encoded.
Fixed bug with tooltips scrolling on mobile.
Fixed bug with Google Hangout event links.
Fixed bug with widget settings not being unique.
Widget UI enhancements.
Feed settings UI enhancements.
Error messaging updates.
Security improvements.
Download this release
Release Info
Developer | pderksen |
Plugin | Simple Calendar – Google Calendar Plugin |
Version | 2.2.0 |
Comparing to | |
See all releases |
Code changes from version 2.1.7 to 2.2.0
- README.txt +19 -1
- class-google-calendar-events-admin.php +32 -31
- class-google-calendar-events.php +53 -7
- css/admin.css +4 -0
- css/jquery-ui-1.10.4.custom.min.css +0 -7
- google-calendar-events.php +1 -1
- includes/admin/admin-functions.php +3 -5
- includes/admin/admin-notice.php +23 -12
- includes/admin/upgrade.php +55 -0
- includes/class-gce-display.php +38 -21
- includes/class-gce-event.php +27 -13
- includes/class-gce-feed.php +54 -17
- includes/gce-feed-cpt.php +18 -7
- includes/misc-functions.php +81 -34
- includes/php-calendar.php +9 -9
- includes/register-settings.php +3 -3
- includes/shortcodes.php +34 -12
- js/gce-admin.js +70 -0
- js/gce-script.js +38 -13
- languages/gce-ca.mo +0 -0
- languages/gce-ca.po +1541 -0
- languages/gce.pot +244 -203
- screenshot-1.png +0 -0
- screenshot-2.png +0 -0
- screenshot-3.png +0 -0
- screenshot-4.png +0 -0
- screenshot-5.png +0 -0
- screenshot-6.png +0 -0
- screenshot-7.png +0 -0
- uninstall.php +33 -1
- views/admin/api-settings-notice.php +0 -36
- views/admin/display-options-meta.php +7 -7
- views/admin/gce-feed-meta-display.php +135 -88
- views/admin/gce-feed-sidebar-help.php +9 -7
- views/widgets.php +132 -52
README.txt
CHANGED
@@ -89,9 +89,27 @@ There are three ways to install this plugin.
|
|
89 |
|
90 |
== Changelog ==
|
91 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
92 |
= 2.1.7 =
|
93 |
|
94 |
-
* Restructured
|
95 |
* Updated Italian translation files.
|
96 |
|
97 |
= 2.1.6.1 =
|
89 |
|
90 |
== Changelog ==
|
91 |
|
92 |
+
= 2.2.0 - February 25, 2015 =
|
93 |
+
|
94 |
+
* Added custom date range options.
|
95 |
+
* Added option to hide tooltips on grid display.
|
96 |
+
* Added additional save button at the bottom of the feed settings.
|
97 |
+
* Performance updates to script enqueues.
|
98 |
+
* Updated Catalan translation files.
|
99 |
+
* Updated list output logic.
|
100 |
+
* Fixed bug with multi-day events sometimes not showing up in list view.
|
101 |
+
* Fixed bug with calendar ID field not getting encoded.
|
102 |
+
* Fixed bug with tooltips scrolling on mobile.
|
103 |
+
* Fixed bug with Google Hangout event links.
|
104 |
+
* Fixed bug with widget settings not being unique.
|
105 |
+
* Widget UI enhancements.
|
106 |
+
* Feed settings UI enhancements.
|
107 |
+
* Error messaging updates.
|
108 |
+
* Security improvements.
|
109 |
+
|
110 |
= 2.1.7 =
|
111 |
|
112 |
+
* Restructured next and back paging navigation script.
|
113 |
* Updated Italian translation files.
|
114 |
|
115 |
= 2.1.6.1 =
|
class-google-calendar-events-admin.php
CHANGED
@@ -53,16 +53,14 @@ class Google_Calendar_Events_Admin {
|
|
53 |
// Add admin styles
|
54 |
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
55 |
|
|
|
|
|
|
|
56 |
// Add the options page and menu item.
|
57 |
add_action( 'admin_menu', array( $this, 'add_plugin_admin_menu' ), 2 );
|
58 |
-
|
59 |
-
// Add admin notice for users upgrading from before 2.1.0.
|
60 |
-
if( version_compare( $this->version, '2.1.0', '<' ) ) {
|
61 |
-
add_action( 'admin_notices', array( $this, 'show_admin_notice' ) );
|
62 |
-
}
|
63 |
|
64 |
// Add admin notice after plugin activation. Also check if should be hidden.
|
65 |
-
add_action( 'admin_notices', array( $this, '
|
66 |
}
|
67 |
|
68 |
/**
|
@@ -71,7 +69,7 @@ class Google_Calendar_Events_Admin {
|
|
71 |
*
|
72 |
* @since 2.1.0
|
73 |
*/
|
74 |
-
public function
|
75 |
// Exit all of this is stored value is false/0 or not set.
|
76 |
if ( false == get_option( 'gce_show_admin_install_notice' ) ) {
|
77 |
return;
|
@@ -80,14 +78,14 @@ class Google_Calendar_Events_Admin {
|
|
80 |
$screen = get_current_screen();
|
81 |
|
82 |
// Delete stored value if "hide" button click detected (custom querystring value set to 1).
|
83 |
-
if ( ! empty( $_REQUEST['gce-dismiss-install-nag'] ) || in_array( $screen->id, $this->plugin_screen_hook_suffix ) ) {
|
84 |
delete_option( 'gce_show_admin_install_notice' );
|
85 |
return;
|
86 |
}
|
87 |
|
88 |
// At this point show install notice. Show it only on the plugin screen.
|
89 |
-
if( get_current_screen()->id == 'plugins'
|
90 |
-
include_once( '
|
91 |
}
|
92 |
}
|
93 |
|
@@ -95,7 +93,7 @@ class Google_Calendar_Events_Admin {
|
|
95 |
* Check if viewing one of this plugin's admin pages.
|
96 |
*
|
97 |
* @since 2.1.0
|
98 |
-
|
99 |
* @return bool
|
100 |
*/
|
101 |
private function viewing_this_plugin() {
|
@@ -105,7 +103,7 @@ class Google_Calendar_Events_Admin {
|
|
105 |
|
106 |
$screen = get_current_screen();
|
107 |
|
108 |
-
if ( $screen->id == 'edit-gce_feed' || $screen->id == 'gce_feed' || in_array( $screen->id, $this->plugin_screen_hook_suffix ) ) {
|
109 |
return true;
|
110 |
} else {
|
111 |
return false;
|
@@ -137,6 +135,19 @@ class Google_Calendar_Events_Admin {
|
|
137 |
include_once( 'views/admin/admin.php' );
|
138 |
}
|
139 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
/**
|
141 |
* Enqueue styles for the admin area
|
142 |
*
|
@@ -147,8 +158,15 @@ class Google_Calendar_Events_Admin {
|
|
147 |
//wp_enqueue_style( 'jquery-ui-datepicker-css', plugins_url( 'css/jquery-ui-1.10.4.custom.min.css', __FILE__ ), array(), $this->version );
|
148 |
|
149 |
if( $this->viewing_this_plugin() ) {
|
150 |
-
|
151 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
152 |
}
|
153 |
|
154 |
/**
|
@@ -203,21 +221,4 @@ class Google_Calendar_Events_Admin {
|
|
203 |
$links
|
204 |
);
|
205 |
}
|
206 |
-
|
207 |
-
/**
|
208 |
-
* Use to show an important admin notice.
|
209 |
-
*
|
210 |
-
* @since 2.0.7.1
|
211 |
-
*/
|
212 |
-
|
213 |
-
/**
|
214 |
-
* Example use in constructor:
|
215 |
-
|
216 |
-
if( version_compare( $this->version, '2.1.0', '<' ) ) {
|
217 |
-
add_action( 'admin_notices', array( $this, 'show_admin_notice' ) );
|
218 |
-
}
|
219 |
-
*/
|
220 |
-
function show_admin_notice() {
|
221 |
-
include_once( 'includes/admin/admin-notice.php' );
|
222 |
-
}
|
223 |
}
|
53 |
// Add admin styles
|
54 |
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
55 |
|
56 |
+
// Add admin JS
|
57 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
|
58 |
+
|
59 |
// Add the options page and menu item.
|
60 |
add_action( 'admin_menu', array( $this, 'add_plugin_admin_menu' ), 2 );
|
|
|
|
|
|
|
|
|
|
|
61 |
|
62 |
// Add admin notice after plugin activation. Also check if should be hidden.
|
63 |
+
add_action( 'admin_notices', array( $this, 'show_admin_notice' ) );
|
64 |
}
|
65 |
|
66 |
/**
|
69 |
*
|
70 |
* @since 2.1.0
|
71 |
*/
|
72 |
+
public function show_admin_notice() {
|
73 |
// Exit all of this is stored value is false/0 or not set.
|
74 |
if ( false == get_option( 'gce_show_admin_install_notice' ) ) {
|
75 |
return;
|
78 |
$screen = get_current_screen();
|
79 |
|
80 |
// Delete stored value if "hide" button click detected (custom querystring value set to 1).
|
81 |
+
if ( ! empty( $_REQUEST['gce-dismiss-install-nag'] ) || in_array( $screen->id, $this->plugin_screen_hook_suffix ) || $this->viewing_this_plugin() ) {
|
82 |
delete_option( 'gce_show_admin_install_notice' );
|
83 |
return;
|
84 |
}
|
85 |
|
86 |
// At this point show install notice. Show it only on the plugin screen.
|
87 |
+
if( get_current_screen()->id == 'plugins' ) {
|
88 |
+
include_once( 'includes/admin/admin-notice.php' );
|
89 |
}
|
90 |
}
|
91 |
|
93 |
* Check if viewing one of this plugin's admin pages.
|
94 |
*
|
95 |
* @since 2.1.0
|
96 |
+
*$this->viewing_this_plugin()
|
97 |
* @return bool
|
98 |
*/
|
99 |
private function viewing_this_plugin() {
|
103 |
|
104 |
$screen = get_current_screen();
|
105 |
|
106 |
+
if ( $screen->id == 'edit-gce_feed' || $screen->id == 'gce_feed' || in_array( $screen->id, $this->plugin_screen_hook_suffix ) || $screen->id == 'widgets' ) {
|
107 |
return true;
|
108 |
} else {
|
109 |
return false;
|
135 |
include_once( 'views/admin/admin.php' );
|
136 |
}
|
137 |
|
138 |
+
/**
|
139 |
+
* Enqueue JS for the admin area
|
140 |
+
*
|
141 |
+
* @since 2.0.0
|
142 |
+
*/
|
143 |
+
public function enqueue_admin_scripts() {
|
144 |
+
|
145 |
+
if( $this->viewing_this_plugin() ) {
|
146 |
+
wp_enqueue_script( 'jquery-ui-datepicker' );
|
147 |
+
wp_enqueue_script( 'gce-admin', plugins_url( 'js/gce-admin.js', __FILE__ ), array( 'jquery' ), $this->version, true );
|
148 |
+
}
|
149 |
+
}
|
150 |
+
|
151 |
/**
|
152 |
* Enqueue styles for the admin area
|
153 |
*
|
158 |
//wp_enqueue_style( 'jquery-ui-datepicker-css', plugins_url( 'css/jquery-ui-1.10.4.custom.min.css', __FILE__ ), array(), $this->version );
|
159 |
|
160 |
if( $this->viewing_this_plugin() ) {
|
161 |
+
global $wp_scripts;
|
162 |
+
|
163 |
+
// get the jquery ui object
|
164 |
+
$queryui = $wp_scripts->query( 'jquery-ui-datepicker' );
|
165 |
+
|
166 |
+
wp_enqueue_style( 'jquery-ui-smoothness', '//ajax.googleapis.com/ajax/libs/jqueryui/' . $queryui->ver . '/themes/smoothness/jquery-ui.css', array(), $this->version );
|
167 |
+
|
168 |
+
wp_enqueue_style( 'gce-admin', plugins_url( 'css/admin.css', __FILE__ ), array(), $this->version, 'all' );
|
169 |
+
}
|
170 |
}
|
171 |
|
172 |
/**
|
221 |
$links
|
222 |
);
|
223 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
}
|
class-google-calendar-events.php
CHANGED
@@ -18,7 +18,7 @@ class Google_Calendar_Events {
|
|
18 |
*
|
19 |
* @var string
|
20 |
*/
|
21 |
-
protected $version = '2.
|
22 |
|
23 |
/**
|
24 |
* Unique identifier for the plugin.
|
@@ -37,6 +37,8 @@ class Google_Calendar_Events {
|
|
37 |
* @var object
|
38 |
*/
|
39 |
protected static $instance = null;
|
|
|
|
|
40 |
|
41 |
/**
|
42 |
* Initialize the plugin by setting localization and loading public scripts
|
@@ -58,15 +60,59 @@ class Google_Calendar_Events {
|
|
58 |
$this->upgrade();
|
59 |
}
|
60 |
|
61 |
-
|
62 |
$this->setup_constants();
|
63 |
|
64 |
-
add_action( '
|
65 |
-
add_action( '
|
|
|
66 |
|
|
|
|
|
67 |
|
68 |
// Load plugin text domain
|
69 |
$this->plugin_textdomain();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
}
|
71 |
|
72 |
/**
|
@@ -74,7 +120,7 @@ class Google_Calendar_Events {
|
|
74 |
*
|
75 |
* @since 2.0.0
|
76 |
*/
|
77 |
-
|
78 |
include_once( 'includes/admin/upgrade.php' );
|
79 |
}
|
80 |
|
@@ -143,8 +189,8 @@ class Google_Calendar_Events {
|
|
143 |
* @since 2.0.0
|
144 |
*/
|
145 |
public function enqueue_public_styles() {
|
146 |
-
|
147 |
-
|
148 |
}
|
149 |
|
150 |
/**
|
18 |
*
|
19 |
* @var string
|
20 |
*/
|
21 |
+
protected $version = '2.2.0';
|
22 |
|
23 |
/**
|
24 |
* Unique identifier for the plugin.
|
37 |
* @var object
|
38 |
*/
|
39 |
protected static $instance = null;
|
40 |
+
|
41 |
+
protected $show_scripts = false;
|
42 |
|
43 |
/**
|
44 |
* Initialize the plugin by setting localization and loading public scripts
|
60 |
$this->upgrade();
|
61 |
}
|
62 |
|
|
|
63 |
$this->setup_constants();
|
64 |
|
65 |
+
add_action( 'init', array( $this, 'enqueue_public_scripts' ) );
|
66 |
+
add_action( 'init', array( $this, 'enqueue_public_styles' ) );
|
67 |
+
|
68 |
|
69 |
+
// Load scripts when posts load so we know if we need to include them or not
|
70 |
+
add_filter( 'the_posts', array( $this, 'load_scripts' ) );
|
71 |
|
72 |
// Load plugin text domain
|
73 |
$this->plugin_textdomain();
|
74 |
+
|
75 |
+
add_action( 'wp_footer', array( $this, 'localize_main_script' ) );
|
76 |
+
}
|
77 |
+
|
78 |
+
public function localize_main_script() {
|
79 |
+
|
80 |
+
if( $this->show_scripts ) {
|
81 |
+
global $localize;
|
82 |
+
|
83 |
+
wp_localize_script( GCE_PLUGIN_SLUG . '-public', 'gce_grid', $localize );
|
84 |
+
|
85 |
+
wp_localize_script( GCE_PLUGIN_SLUG . '-public', 'gce',
|
86 |
+
array(
|
87 |
+
'script_debug' => ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ),
|
88 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
89 |
+
'ajaxnonce' => wp_create_nonce( 'gce_ajax_nonce' ),
|
90 |
+
'loadingText' => __( 'Loading...', 'gce' )
|
91 |
+
) );
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
public function load_scripts( $posts ) {
|
96 |
+
|
97 |
+
if ( empty( $posts ) ) {
|
98 |
+
return $posts;
|
99 |
+
}
|
100 |
+
|
101 |
+
foreach ( $posts as $post ){
|
102 |
+
if ( ( strpos( $post->post_content, '[gcal' ) !== false ) || ( $post->post_type == 'gce_feed' ) ) {
|
103 |
+
// Load CSS
|
104 |
+
wp_enqueue_style( $this->plugin_slug . '-public' );
|
105 |
+
|
106 |
+
// Load JS
|
107 |
+
wp_enqueue_script( $this->plugin_slug . '-public' );
|
108 |
+
|
109 |
+
$this->show_scripts = true;
|
110 |
+
|
111 |
+
break;
|
112 |
+
}
|
113 |
+
}
|
114 |
+
|
115 |
+
return $posts;
|
116 |
}
|
117 |
|
118 |
/**
|
120 |
*
|
121 |
* @since 2.0.0
|
122 |
*/
|
123 |
+
public function upgrade() {
|
124 |
include_once( 'includes/admin/upgrade.php' );
|
125 |
}
|
126 |
|
189 |
* @since 2.0.0
|
190 |
*/
|
191 |
public function enqueue_public_styles() {
|
192 |
+
wp_register_style( $this->plugin_slug . '-qtip', plugins_url( 'css/jquery.qtip.min.css', __FILE__ ), array(), $this->version );
|
193 |
+
wp_register_style( $this->plugin_slug . '-public', plugins_url( 'css/gce-style.css', __FILE__ ), array( $this->plugin_slug . '-qtip' ), $this->version );
|
194 |
}
|
195 |
|
196 |
/**
|
css/admin.css
CHANGED
@@ -54,3 +54,7 @@
|
|
54 |
#gce_feed_meta .inside code {
|
55 |
word-break: break-all;
|
56 |
}
|
|
|
|
|
|
|
|
54 |
#gce_feed_meta .inside code {
|
55 |
word-break: break-all;
|
56 |
}
|
57 |
+
|
58 |
+
.gce-custom-range input {
|
59 |
+
width: 120px;
|
60 |
+
}
|
css/jquery-ui-1.10.4.custom.min.css
DELETED
@@ -1,7 +0,0 @@
|
|
1 |
-
/*! jQuery UI - v1.10.4 - 2014-05-14
|
2 |
-
* http://jqueryui.com
|
3 |
-
* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
|
4 |
-
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
|
5 |
-
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
|
6 |
-
|
7 |
-
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_888888_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
google-calendar-events.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* Plugin Name: Google Calendar Events
|
13 |
* Plugin URI: https://github.com/pderksen/WP-Google-Calendar-Events
|
14 |
* Description: Parses Google Calendar feeds and displays the events as a calendar grid or list on a page, post or widget.
|
15 |
-
* Version: 2.
|
16 |
* Author: Phil Derksen
|
17 |
* Author URI: http://philderksen.com
|
18 |
* License: GPL-2.0+
|
12 |
* Plugin Name: Google Calendar Events
|
13 |
* Plugin URI: https://github.com/pderksen/WP-Google-Calendar-Events
|
14 |
* Description: Parses Google Calendar feeds and displays the events as a calendar grid or list on a page, post or widget.
|
15 |
+
* Version: 2.2.0
|
16 |
* Author: Phil Derksen
|
17 |
* Author URI: http://philderksen.com
|
18 |
* License: GPL-2.0+
|
includes/admin/admin-functions.php
CHANGED
@@ -44,13 +44,11 @@ function gce_default_editor_content( $content, $post ) {
|
|
44 |
add_post_meta( $post->ID, 'gce_retrieve_until', 'end_time' );
|
45 |
add_post_meta( $post->ID, 'gce_cache', 43200 );
|
46 |
add_post_meta( $post->ID, 'gce_paging', 1 );
|
47 |
-
add_post_meta( $post->ID, 'gce_list_max_num', 7 );
|
48 |
-
add_post_meta( $post->ID, 'gce_list_max_length', 'days' );
|
49 |
add_post_meta( $post->ID, 'gce_list_start_offset_num', '0' );
|
50 |
-
add_post_meta( $post->ID, '
|
51 |
-
add_post_meta( $post->ID, '
|
52 |
-
add_post_meta( $post->ID, 'gce_feed_end', '2' );
|
53 |
add_post_meta( $post->ID, 'gce_feed_end_interval', 'years' );
|
|
|
54 |
|
55 |
// Default Simple Display Options
|
56 |
add_post_meta( $post->ID, 'gce_display_start', 'time' );
|
44 |
add_post_meta( $post->ID, 'gce_retrieve_until', 'end_time' );
|
45 |
add_post_meta( $post->ID, 'gce_cache', 43200 );
|
46 |
add_post_meta( $post->ID, 'gce_paging', 1 );
|
|
|
|
|
47 |
add_post_meta( $post->ID, 'gce_list_start_offset_num', '0' );
|
48 |
+
add_post_meta( $post->ID, 'gce_feed_end_num', 2 );
|
49 |
+
add_post_meta( $post->ID, 'gce_feed_start_num', 1 );
|
|
|
50 |
add_post_meta( $post->ID, 'gce_feed_end_interval', 'years' );
|
51 |
+
add_post_meta( $post->ID, 'gce_show_tooltips', 1 );
|
52 |
|
53 |
// Default Simple Display Options
|
54 |
add_post_meta( $post->ID, 'gce_display_start', 'time' );
|
includes/admin/admin-notice.php
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
<?php
|
|
|
2 |
/**
|
3 |
-
* Show
|
4 |
*
|
5 |
-
* @package
|
6 |
-
* @
|
7 |
-
* @
|
8 |
-
* @copyright 2014 Phil Derksen
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly.
|
@@ -15,12 +15,23 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
15 |
|
16 |
?>
|
17 |
|
18 |
-
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
<p>
|
21 |
-
<
|
22 |
-
|
23 |
-
<
|
24 |
-
while we move the plugin to using the new GCal API this week. Thanks for your patience.
|
25 |
</p>
|
26 |
-
</div>
|
1 |
<?php
|
2 |
+
|
3 |
/**
|
4 |
+
* Show notice for API Settings
|
5 |
*
|
6 |
+
* @package GCE
|
7 |
+
* @subpackage admin/views
|
8 |
+
* @author Phil Derksen <pderksen@gmail.com>, Nick Young <mycorpweb@gmail.com>
|
|
|
9 |
*/
|
10 |
|
11 |
// Exit if accessed directly.
|
15 |
|
16 |
?>
|
17 |
|
18 |
+
<style>
|
19 |
+
#gce-install-notice .button-secondary {
|
20 |
+
margin-left: 15px;
|
21 |
+
}
|
22 |
+
</style>
|
23 |
+
|
24 |
+
<div id="gce-install-notice" class="updated">
|
25 |
+
<p>
|
26 |
+
<h3><?php _e( 'GCal API Key Notice', 'gce' ); ?></h3>
|
27 |
+
|
28 |
+
<?php _e( 'GCal Events uses the Google Calendar API version 3. By default this plugin uses a public shared key across all plugin users.', 'gce' ); ?>
|
29 |
+
<br/><br/>
|
30 |
+
<?php _e( 'This key is limited to 500,000 requests per day and 5 requests per second. To avoid running into any potential limits you can use your own Google API key.', 'gce' ); ?>
|
31 |
+
</p>
|
32 |
<p>
|
33 |
+
<a href="<?php echo admin_url( 'edit.php?post_type=gce_feed&page=google-calendar-events_general_settings' ); ?>" class="button-primary"><?php _e( 'Enter your GCal API key', 'gce' ); ?></a>
|
34 |
+
<a href="<?php echo admin_url( 'edit.php?post_type=gce_feed' ); ?>" class="button-secondary"><?php _e( 'Configure GCal feeds', 'gce' ); ?></a>
|
35 |
+
<a href="<?php echo add_query_arg( 'gce-dismiss-install-nag', 1 ); ?>" class="button-secondary"><?php _e( 'Hide this', 'gce' ); ?></a>
|
|
|
36 |
</p>
|
37 |
+
</div>
|
includes/admin/upgrade.php
CHANGED
@@ -44,6 +44,10 @@ function gce_upgrade() {
|
|
44 |
if( version_compare( $version, '2.1.0', '<' ) ) {
|
45 |
gce_v210_upgrade();
|
46 |
}
|
|
|
|
|
|
|
|
|
47 |
}
|
48 |
|
49 |
$new_version = Google_Calendar_Events::get_instance()->get_plugin_version();
|
@@ -52,6 +56,57 @@ function gce_upgrade() {
|
|
52 |
add_option( 'gce_upgrade_has_run', 1 );
|
53 |
}
|
54 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
/*
|
56 |
* Run the upgrade to version 2.1.0
|
57 |
*/
|
44 |
if( version_compare( $version, '2.1.0', '<' ) ) {
|
45 |
gce_v210_upgrade();
|
46 |
}
|
47 |
+
|
48 |
+
if( version_compare( $version, '2.2.0', '<' ) ) {
|
49 |
+
gce_v220_upgrade();
|
50 |
+
}
|
51 |
}
|
52 |
|
53 |
$new_version = Google_Calendar_Events::get_instance()->get_plugin_version();
|
56 |
add_option( 'gce_upgrade_has_run', 1 );
|
57 |
}
|
58 |
|
59 |
+
function gce_v220_upgrade() {
|
60 |
+
// Update feeds
|
61 |
+
$q = new WP_Query( 'post_type=gce_feed' );
|
62 |
+
|
63 |
+
if( $q->have_posts() ) {
|
64 |
+
while( $q->have_posts() ) {
|
65 |
+
|
66 |
+
$q->the_post();
|
67 |
+
|
68 |
+
$gce_list_max_num = get_post_meta( get_the_ID(), 'gce_list_max_num', true );
|
69 |
+
$gce_list_max_length = get_post_meta( get_the_ID(), 'gce_list_max_length', true );
|
70 |
+
$gce_feed_start_interval = get_post_meta( get_the_ID(), 'gce_feed_start_interval', true );
|
71 |
+
$gce_feed_start = get_post_meta( get_the_ID(), 'gce_feed_start', true );
|
72 |
+
$gce_feed_end_interval = get_post_meta( get_the_ID(), 'gce_feed_end_interval', true );
|
73 |
+
$gce_feed_end = get_post_meta( get_the_ID(), 'gce_feed_end', true );
|
74 |
+
|
75 |
+
update_post_meta( get_the_ID(), 'gce_per_page_num', $gce_list_max_num );
|
76 |
+
update_post_meta( get_the_ID(), 'gce_events_per_page', $gce_list_max_length );
|
77 |
+
update_post_meta( get_the_ID(), 'gce_feed_start', $gce_feed_start_interval );
|
78 |
+
update_post_meta( get_the_ID(), 'gce_feed_start_num', $gce_feed_start );
|
79 |
+
update_post_meta( get_the_ID(), 'gce_feed_end', $gce_feed_end_interval );
|
80 |
+
update_post_meta( get_the_ID(), 'gce_feed_end_num', $gce_feed_end );
|
81 |
+
|
82 |
+
// Add new show tooltips option checked as default
|
83 |
+
update_post_meta( get_the_ID(), 'gce_show_tooltips', 1 );
|
84 |
+
|
85 |
+
}
|
86 |
+
}
|
87 |
+
|
88 |
+
wp_reset_postdata();
|
89 |
+
|
90 |
+
|
91 |
+
// Update widgets for new UI
|
92 |
+
$widget = get_option( 'widget_gce_widget' );
|
93 |
+
|
94 |
+
if( is_array( $widget ) && ! empty( $widget ) ) {
|
95 |
+
foreach( $widget as $a => $b ) {
|
96 |
+
if( ! is_array( $b ) ) {
|
97 |
+
continue;
|
98 |
+
}
|
99 |
+
|
100 |
+
foreach( $b as $k => $v ) {
|
101 |
+
$widget[$a]['per_page_num'] = $widget[$a]['list_max_num'];
|
102 |
+
$widget[$a]['events_per_page'] = $widget[$a]['list_max_length'];
|
103 |
+
}
|
104 |
+
}
|
105 |
+
|
106 |
+
update_option( 'widget_gce_widget', $widget );
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
/*
|
111 |
* Run the upgrade to version 2.1.0
|
112 |
*/
|
includes/class-gce-display.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
|
12 |
class GCE_Display {
|
13 |
|
14 |
-
|
15 |
|
16 |
public function __construct( $ids, $title_text = null, $sort_order = 'asc' ) {
|
17 |
|
@@ -131,7 +131,7 @@ class GCE_Display {
|
|
131 |
|
132 |
foreach ( $event_day as $num_in_day => $event ) {
|
133 |
$feed_id = absint( $event->feed->id );
|
134 |
-
$markup .= '<li class="gce-tooltip-feed-' . $feed_id . '">' . $event->get_event_markup( 'tooltip', $num_in_day, $i ) . '</li>';
|
135 |
|
136 |
//Add CSS class for the feed from which this event comes. If there are multiple events from the same feed on the same day, the CSS class will only be added once.
|
137 |
$css_classes['feed-' . $feed_id] = 'gce-feed-' . $feed_id;
|
@@ -198,7 +198,7 @@ class GCE_Display {
|
|
198 |
*
|
199 |
* @since 2.0.0
|
200 |
*/
|
201 |
-
public function get_list( $grouped = false, $start = null, $paging = null, $paging_interval = null, $start_offset = null, $max_events = null, $paging_type = null ) {
|
202 |
$paging_type = $paging_type;
|
203 |
|
204 |
$max_length = null;
|
@@ -216,15 +216,21 @@ class GCE_Display {
|
|
216 |
|
217 |
$an_event_feed_id = current( $event_days );
|
218 |
$an_event_feed_id = $an_event_feed_id[0]->feed->id;
|
219 |
-
|
220 |
if( $paging_interval == null ) {
|
221 |
-
$max_num = get_post_meta( $an_event_feed_id, '
|
222 |
|
223 |
if( $paging_type == null ) {
|
224 |
-
$max_length = get_post_meta( $an_event_feed_id, '
|
225 |
$paging_type = $max_length;
|
226 |
}
|
227 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
228 |
|
229 |
if( $paging === null ) {
|
230 |
$paging = get_post_meta( $an_event_feed_id, 'gce_paging', true );
|
@@ -238,9 +244,22 @@ class GCE_Display {
|
|
238 |
if( empty( $max_num ) || $max_num == 0 ) {
|
239 |
$max_num = 7;
|
240 |
}
|
|
|
|
|
241 |
|
242 |
if( $max_length == 'days' ) {
|
243 |
$paging_interval = $max_num * 86400;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
244 |
}
|
245 |
|
246 |
if( $start_offset === null ) {
|
@@ -263,7 +282,7 @@ class GCE_Display {
|
|
263 |
|
264 |
$feeds = implode( $this->id, '-' );
|
265 |
|
266 |
-
$markup = '<div class="gce-list" data-gce-start-offset="' . $start_offset . '" data-gce-start="' . ( $start + $paging_interval ) . '" data-gce-paging-interval="' . $paging_interval . '" data-gce-paging="' . $paging . '" data-gce-feeds="' . $feeds . '" data-gce-title="' . stripslashes( $this->title ) . '" data-gce-grouped="' . $grouped . '" data-gce-sort="' . $this->sort . '">' . "\n";
|
267 |
|
268 |
if( ( $paging != 0 ) && $max_length != 'events' ) {
|
269 |
|
@@ -273,16 +292,14 @@ class GCE_Display {
|
|
273 |
$prev_text = apply_filters( 'gce_prev_text', $prev_text );
|
274 |
$next_text = apply_filters( 'gce_next_text', $next_text );
|
275 |
|
276 |
-
$p = '<div class="gce-prev"><a href="#" class="gce-change-month-list" title="' . esc_attr__( 'Previous month', 'gce' ) . '" data-gce-paging-direction="back" data-gce-paging-type="' . $paging_type . '">'. $prev_text . '</a></div>';
|
277 |
-
$n = '<div class="gce-next"><a href="#" class="gce-change-month-list" title="' . esc_attr__( 'Next month', 'gce' ) . '" data-gce-paging-direction="forward" data-gce-paging-type="' . $paging_type . '">' . $next_text . '</a></div>';
|
278 |
|
279 |
-
$markup .= '<
|
280 |
-
'<div class="gce-navbar">' .
|
281 |
$p .
|
282 |
$n .
|
283 |
'<div class="gce-month-title"></div>' .
|
284 |
-
'</div>' .
|
285 |
-
'</caption>' . "\n";
|
286 |
}
|
287 |
$max_count = 1;
|
288 |
$has_events = false;
|
@@ -328,25 +345,25 @@ class GCE_Display {
|
|
328 |
if( ( $max_length != 'events' && (( $event->start_time >= $start && // Condition for limited by days
|
329 |
$event->end_time <= $end_time ) ||
|
330 |
( $event->day_type == 'MWD' &&
|
331 |
-
$event->start_time
|
332 |
-
$event->start_time
|
333 |
)
|
334 |
) ||
|
335 |
( $max_length == 'events' && ( $event->end_time >= $time_now && // Condition for limited by events
|
336 |
$event_counter < $max_events )
|
337 |
-
)
|
|
|
338 |
) {
|
339 |
-
|
340 |
if( $show_title && $grouped ) {
|
341 |
-
$day_markup .= '<div class="gce-list-title">' . stripslashes( $this->title ) . ' ' . date_i18n( $event->feed->date_format, $key ) . '</div>';
|
342 |
$show_title = false;
|
343 |
}
|
344 |
|
345 |
$day_markup .=
|
346 |
-
'<div class="gce-feed gce-feed-' . $event->feed->id . '">' .
|
347 |
//If this isn't a grouped list, generate a per-event title with date.
|
348 |
( ( ! $grouped ) ? ( ( isset( $this->title ) && $this->title !== '' ) )
|
349 |
-
? '<div class="gce-list-title">' . stripslashes( $this->title ) . ' ' . date_i18n( $event->feed->date_format, $event->start_time ) . '</div>'
|
350 |
: '' : '' ) .
|
351 |
//Add the event markup
|
352 |
$event->get_event_markup( 'list', $num_in_day, $i ) .
|
@@ -355,7 +372,7 @@ class GCE_Display {
|
|
355 |
$has_events = true;
|
356 |
$i++;
|
357 |
$event_counter++;
|
358 |
-
}
|
359 |
}
|
360 |
|
361 |
if ( $day_markup != '' ) {
|
11 |
|
12 |
class GCE_Display {
|
13 |
|
14 |
+
public $feeds, $merged_feeds;
|
15 |
|
16 |
public function __construct( $ids, $title_text = null, $sort_order = 'asc' ) {
|
17 |
|
131 |
|
132 |
foreach ( $event_day as $num_in_day => $event ) {
|
133 |
$feed_id = absint( $event->feed->id );
|
134 |
+
$markup .= '<li class="gce-tooltip-feed-' . esc_attr( $feed_id ) . '">' . $event->get_event_markup( 'tooltip', $num_in_day, $i ) . '</li>';
|
135 |
|
136 |
//Add CSS class for the feed from which this event comes. If there are multiple events from the same feed on the same day, the CSS class will only be added once.
|
137 |
$css_classes['feed-' . $feed_id] = 'gce-feed-' . $feed_id;
|
198 |
*
|
199 |
* @since 2.0.0
|
200 |
*/
|
201 |
+
public function get_list( $grouped = false, $start = null, $paging = null, $paging_interval = null, $start_offset = null, $max_events = null, $paging_type = null, $max_num = null ) {
|
202 |
$paging_type = $paging_type;
|
203 |
|
204 |
$max_length = null;
|
216 |
|
217 |
$an_event_feed_id = current( $event_days );
|
218 |
$an_event_feed_id = $an_event_feed_id[0]->feed->id;
|
219 |
+
|
220 |
if( $paging_interval == null ) {
|
221 |
+
$max_num = get_post_meta( $an_event_feed_id, 'gce_per_page_num', true );
|
222 |
|
223 |
if( $paging_type == null ) {
|
224 |
+
$max_length = get_post_meta( $an_event_feed_id, 'gce_events_per_page', true );
|
225 |
$paging_type = $max_length;
|
226 |
}
|
227 |
}
|
228 |
+
|
229 |
+
$use_range = ( get_post_meta( $an_event_feed_id, 'gce_display_mode', true ) == 'date-range' ? true : false );
|
230 |
+
|
231 |
+
if( $use_range ) {
|
232 |
+
$max_length = 'date-range';
|
233 |
+
}
|
234 |
|
235 |
if( $paging === null ) {
|
236 |
$paging = get_post_meta( $an_event_feed_id, 'gce_paging', true );
|
244 |
if( empty( $max_num ) || $max_num == 0 ) {
|
245 |
$max_num = 7;
|
246 |
}
|
247 |
+
|
248 |
+
$max_length = get_post_meta( $an_event_feed_id, 'gce_events_per_page', true );
|
249 |
|
250 |
if( $max_length == 'days' ) {
|
251 |
$paging_interval = $max_num * 86400;
|
252 |
+
} else if( $max_length == 'week' ) {
|
253 |
+
$paging_interval = 604800;
|
254 |
+
|
255 |
+
// Set week start here too
|
256 |
+
$start_of_week = get_option( 'start_of_week' );
|
257 |
+
$start = mktime( 0, 0, 0, date( 'm' ), ( date( 'j' ) - date( 'w' ) + $start_of_week ), date( 'Y' ) );
|
258 |
+
} else if( $max_length == 'month' ) {
|
259 |
+
$paging_interval = 2629743;
|
260 |
+
|
261 |
+
// Set month start here too
|
262 |
+
$start = mktime( 0, 0, 0, date( 'm', current_time( 'timestamp' ) ), 1, date( 'Y', current_time( 'timestamp' ) ) );
|
263 |
}
|
264 |
|
265 |
if( $start_offset === null ) {
|
282 |
|
283 |
$feeds = implode( $this->id, '-' );
|
284 |
|
285 |
+
$markup = '<div class="gce-list" data-gce-start-offset="' . esc_attr( $start_offset ) . '" data-gce-start="' . esc_attr( ( $start + $paging_interval ) ) . '" data-gce-paging-interval="' . esc_attr( $paging_interval ) . '" data-gce-paging="' . esc_attr( $paging ) . '" data-gce-feeds="' . esc_attr( $feeds ) . '" data-gce-title="' . esc_attr( stripslashes( $this->title ) ) . '" data-gce-grouped="' . esc_attr( $grouped ) . '" data-gce-sort="' . esc_attr( $this->sort ) . '">' . "\n";
|
286 |
|
287 |
if( ( $paging != 0 ) && $max_length != 'events' ) {
|
288 |
|
292 |
$prev_text = apply_filters( 'gce_prev_text', $prev_text );
|
293 |
$next_text = apply_filters( 'gce_next_text', $next_text );
|
294 |
|
295 |
+
$p = '<div class="gce-prev"><a href="#" class="gce-change-month-list" title="' . esc_attr__( 'Previous month', 'gce' ) . '" data-gce-paging-direction="back" data-gce-paging-type="' . esc_attr( $paging_type ) . '">'. esc_html( $prev_text ) . '</a></div>';
|
296 |
+
$n = '<div class="gce-next"><a href="#" class="gce-change-month-list" title="' . esc_attr__( 'Next month', 'gce' ) . '" data-gce-paging-direction="forward" data-gce-paging-type="' . esc_attr( $paging_type ) . '">' . esc_html( $next_text ) . '</a></div>';
|
297 |
|
298 |
+
$markup .= '<div class="gce-navbar">' .
|
|
|
299 |
$p .
|
300 |
$n .
|
301 |
'<div class="gce-month-title"></div>' .
|
302 |
+
'</div>' . "\n";
|
|
|
303 |
}
|
304 |
$max_count = 1;
|
305 |
$has_events = false;
|
345 |
if( ( $max_length != 'events' && (( $event->start_time >= $start && // Condition for limited by days
|
346 |
$event->end_time <= $end_time ) ||
|
347 |
( $event->day_type == 'MWD' &&
|
348 |
+
$event->start_time >= $start &&
|
349 |
+
$event->start_time <= $end_time )
|
350 |
)
|
351 |
) ||
|
352 |
( $max_length == 'events' && ( $event->end_time >= $time_now && // Condition for limited by events
|
353 |
$event_counter < $max_events )
|
354 |
+
) ||
|
355 |
+
( $max_length == 'date-range' )
|
356 |
) {
|
|
|
357 |
if( $show_title && $grouped ) {
|
358 |
+
$day_markup .= '<div class="gce-list-title">' . esc_html( stripslashes( $this->title ) ) . ' ' . date_i18n( $event->feed->date_format, $key ) . '</div>';
|
359 |
$show_title = false;
|
360 |
}
|
361 |
|
362 |
$day_markup .=
|
363 |
+
'<div class="gce-feed gce-feed-' . esc_attr( $event->feed->id ) . '">' .
|
364 |
//If this isn't a grouped list, generate a per-event title with date.
|
365 |
( ( ! $grouped ) ? ( ( isset( $this->title ) && $this->title !== '' ) )
|
366 |
+
? '<div class="gce-list-title">' . esc_html( stripslashes( $this->title ) ) . ' ' . date_i18n( $event->feed->date_format, $event->start_time ) . '</div>'
|
367 |
: '' : '' ) .
|
368 |
//Add the event markup
|
369 |
$event->get_event_markup( 'list', $num_in_day, $i ) .
|
372 |
$has_events = true;
|
373 |
$i++;
|
374 |
$event_counter++;
|
375 |
+
}
|
376 |
}
|
377 |
|
378 |
if ( $day_markup != '' ) {
|
includes/class-gce-event.php
CHANGED
@@ -41,7 +41,11 @@ class GCE_Event {
|
|
41 |
}
|
42 |
}
|
43 |
} else {
|
44 |
-
$
|
|
|
|
|
|
|
|
|
45 |
}
|
46 |
}
|
47 |
|
@@ -107,9 +111,7 @@ class GCE_Event {
|
|
107 |
return $this->use_builder();
|
108 |
}
|
109 |
|
110 |
-
// Setup the markup to return
|
111 |
-
//$display_options = get_option( 'gce_settings_general' );
|
112 |
-
|
113 |
$display_options['display_start'] = get_post_meta( $this->feed->id, 'gce_display_start', true );
|
114 |
$display_options['display_start_text'] = get_post_meta( $this->feed->id, 'gce_display_start_text', true );
|
115 |
$display_options['display_end'] = get_post_meta( $this->feed->id, 'gce_display_end', true );
|
@@ -124,7 +126,7 @@ class GCE_Event {
|
|
124 |
$display_options['display_separator'] = get_post_meta( $this->feed->id, 'gce_display_separator', true );
|
125 |
$display_options['display_link_target'] = get_post_meta( $this->feed->id, 'gce_display_link_tab', true );
|
126 |
|
127 |
-
$markup = '<p class="gce-' . $this->type . '-event">' . esc_html( $this->title ) . '</p>';
|
128 |
|
129 |
$start_end = array();
|
130 |
|
@@ -148,7 +150,7 @@ class GCE_Event {
|
|
148 |
|
149 |
//Add the correct start / end, date / time information to $markup
|
150 |
foreach ( $start_end as $start_or_end => $info ) {
|
151 |
-
$markup .= '<p class="gce-' . $this->type . '-' . $start_or_end . '"><span>' . esc_html( $display_options['display_' . $start_or_end . '_text'] ) . '</span> ';
|
152 |
|
153 |
if( ! empty( $display_options['display_' . $start_or_end] ) ) {
|
154 |
switch ( $display_options['display_' . $start_or_end] ) {
|
@@ -169,7 +171,7 @@ class GCE_Event {
|
|
169 |
if ( ! empty( $display_options['display_location'] ) ) {
|
170 |
$event_location = $this->location;
|
171 |
if ( '' != $event_location )
|
172 |
-
$markup .= '<p class="gce-' . $this->type . '-loc"><span>' . esc_html( $display_options['display_location_text'] ) . '</span> ' . esc_html( $event_location ) . '</p>';
|
173 |
}
|
174 |
|
175 |
//If description should be displayed (and is not empty) add to $markup
|
@@ -183,7 +185,7 @@ class GCE_Event {
|
|
183 |
$event_desc = trim( $event_desc[0] );
|
184 |
}
|
185 |
|
186 |
-
$markup .= '<p class="gce-' . $this->type . '-desc"><span>' . $display_options['display_desc_text'] . '</span> ' . make_clickable( nl2br( esc_html( $event_desc ) ) ) . '</p>';
|
187 |
}
|
188 |
}
|
189 |
|
@@ -193,9 +195,14 @@ class GCE_Event {
|
|
193 |
|
194 |
$ctz = get_option( 'timezone_string' );
|
195 |
|
196 |
-
|
|
|
|
|
|
|
|
|
|
|
197 |
|
198 |
-
$markup .= '<p class="gce-' . $this->type . '-link"><a href="' . esc_url( $link ) . '" ' . $target . '>' . esc_html( $display_options['display_link_text'] ) . '</a></p>';
|
199 |
}
|
200 |
|
201 |
return $markup;
|
@@ -365,8 +372,15 @@ class GCE_Event {
|
|
365 |
case 'link':
|
366 |
$new_window = ( $newwindow ) ? ' target="_blank"' : '';
|
367 |
$ctz = get_option( 'timezone_string' );
|
368 |
-
|
369 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
370 |
|
371 |
case 'url':
|
372 |
return $m[1] . esc_url( $this->link ) . $m[6];
|
@@ -379,7 +393,7 @@ class GCE_Event {
|
|
379 |
|
380 |
case 'maps-link':
|
381 |
$new_window = ( $newwindow ) ? ' target="_blank"' : '';
|
382 |
-
return $m[1] . '<a href="' . esc_url( '//maps.google.com?q=' . urlencode( $this->location ) ) . '"' . $new_window . '>' . $this->look_for_shortcodes( $m[5] ) . '</a>' . $m[6];
|
383 |
|
384 |
case 'length':
|
385 |
return $m[1] . $this->gce_human_time_diff( $this->start_time, $this->end_time, $precision ) . $m[6];
|
41 |
}
|
42 |
}
|
43 |
} else {
|
44 |
+
if( date( 'D', $start_time ) == date( 'D', $end_time ) ) {
|
45 |
+
$this->day_type = 'SPD';
|
46 |
+
} else {
|
47 |
+
$this->day_type = 'MPD';
|
48 |
+
}
|
49 |
}
|
50 |
}
|
51 |
|
111 |
return $this->use_builder();
|
112 |
}
|
113 |
|
114 |
+
// Setup the markup to return
|
|
|
|
|
115 |
$display_options['display_start'] = get_post_meta( $this->feed->id, 'gce_display_start', true );
|
116 |
$display_options['display_start_text'] = get_post_meta( $this->feed->id, 'gce_display_start_text', true );
|
117 |
$display_options['display_end'] = get_post_meta( $this->feed->id, 'gce_display_end', true );
|
126 |
$display_options['display_separator'] = get_post_meta( $this->feed->id, 'gce_display_separator', true );
|
127 |
$display_options['display_link_target'] = get_post_meta( $this->feed->id, 'gce_display_link_tab', true );
|
128 |
|
129 |
+
$markup = '<p class="gce-' . esc_attr( $this->type ) . '-event">' . esc_html( $this->title ) . '</p>';
|
130 |
|
131 |
$start_end = array();
|
132 |
|
150 |
|
151 |
//Add the correct start / end, date / time information to $markup
|
152 |
foreach ( $start_end as $start_or_end => $info ) {
|
153 |
+
$markup .= '<p class="gce-' . esc_attr( $this->type ) . '-' . $start_or_end . '"><span>' . esc_html( $display_options['display_' . $start_or_end . '_text'] ) . '</span> ';
|
154 |
|
155 |
if( ! empty( $display_options['display_' . $start_or_end] ) ) {
|
156 |
switch ( $display_options['display_' . $start_or_end] ) {
|
171 |
if ( ! empty( $display_options['display_location'] ) ) {
|
172 |
$event_location = $this->location;
|
173 |
if ( '' != $event_location )
|
174 |
+
$markup .= '<p class="gce-' . esc_attr( $this->type ) . '-loc"><span>' . esc_html( $display_options['display_location_text'] ) . '</span> ' . esc_html( $event_location ) . '</p>';
|
175 |
}
|
176 |
|
177 |
//If description should be displayed (and is not empty) add to $markup
|
185 |
$event_desc = trim( $event_desc[0] );
|
186 |
}
|
187 |
|
188 |
+
$markup .= '<p class="gce-' . esc_attr( $this->type ) . '-desc"><span>' . esc_html( $display_options['display_desc_text'] ) . '</span> ' . make_clickable( nl2br( esc_html( $event_desc ) ) ) . '</p>';
|
189 |
}
|
190 |
}
|
191 |
|
195 |
|
196 |
$ctz = get_option( 'timezone_string' );
|
197 |
|
198 |
+
// Check if it is a hangouts link first
|
199 |
+
if( strpos( $this->link, 'plus.google.com/events/' ) !== false ) {
|
200 |
+
$link = $this->link;
|
201 |
+
} else {
|
202 |
+
$link = $this->link . ( ! empty( $ctz ) ? '&ctz=' . $ctz : '' );
|
203 |
+
}
|
204 |
|
205 |
+
$markup .= '<p class="gce-' . esc_attr( $this->type ) . '-link"><a href="' . esc_url( $link ) . '" ' . esc_attr( $target ) . '>' . esc_html( $display_options['display_link_text'] ) . '</a></p>';
|
206 |
}
|
207 |
|
208 |
return $markup;
|
372 |
case 'link':
|
373 |
$new_window = ( $newwindow ) ? ' target="_blank"' : '';
|
374 |
$ctz = get_option( 'timezone_string' );
|
375 |
+
|
376 |
+
// Check if it is a hangouts link first
|
377 |
+
if( strpos( $this->link, 'plus.google.com/events/' ) !== false ) {
|
378 |
+
$link = $this->link;
|
379 |
+
} else {
|
380 |
+
$link = $this->link . ( ! empty( $ctz ) ? '&ctz=' . $ctz : '' );
|
381 |
+
}
|
382 |
+
|
383 |
+
return $m[1] . '<a href="' . esc_url( $link ) . '"' . esc_attr( $new_window ) . '>' . $this->look_for_shortcodes( $m[5] ) . '</a>' . $m[6];
|
384 |
|
385 |
case 'url':
|
386 |
return $m[1] . esc_url( $this->link ) . $m[6];
|
393 |
|
394 |
case 'maps-link':
|
395 |
$new_window = ( $newwindow ) ? ' target="_blank"' : '';
|
396 |
+
return $m[1] . '<a href="' . esc_url( '//maps.google.com?q=' . urlencode( $this->location ) ) . '"' . esc_attr( $new_window ) . '>' . $this->look_for_shortcodes( $m[5] ) . '</a>' . $m[6];
|
397 |
|
398 |
case 'length':
|
399 |
return $m[1] . $this->gce_human_time_diff( $this->start_time, $this->end_time, $precision ) . $m[6];
|
includes/class-gce-feed.php
CHANGED
@@ -21,7 +21,9 @@ class GCE_Feed {
|
|
21 |
$display_url,
|
22 |
$search_query,
|
23 |
$expand_recurring,
|
24 |
-
$title
|
|
|
|
|
25 |
|
26 |
public $events = array();
|
27 |
|
@@ -72,6 +74,8 @@ class GCE_Feed {
|
|
72 |
$this->search_query = get_post_meta( $this->id, 'gce_search_query', true );
|
73 |
$this->expand_recurring = get_post_meta( $this->id, 'gce_expand_recurring', true );
|
74 |
$this->title = get_the_title( $this->id );
|
|
|
|
|
75 |
}
|
76 |
|
77 |
/**
|
@@ -86,7 +90,7 @@ class GCE_Feed {
|
|
86 |
|
87 |
if( empty( $this->feed_url ) ) {
|
88 |
if( current_user_can( 'manage_options' ) ) {
|
89 |
-
echo '<p>' . __( 'The
|
90 |
}
|
91 |
|
92 |
return;
|
@@ -106,9 +110,9 @@ class GCE_Feed {
|
|
106 |
$query .= '?key=' . $api_key;
|
107 |
|
108 |
|
109 |
-
$args['timeMin'] = urlencode( $this->
|
110 |
|
111 |
-
$args['timeMax'] = urlencode( $this->
|
112 |
|
113 |
$args['maxResults'] = 10000;
|
114 |
|
@@ -161,7 +165,6 @@ class GCE_Feed {
|
|
161 |
//If decoding was successful
|
162 |
if ( ! empty( $raw_data ) ) {
|
163 |
//If there are some entries (events) to process
|
164 |
-
//if ( isset( $raw_data['feed']['entry'] ) ) {
|
165 |
//Loop through each event, extracting the relevant information
|
166 |
foreach ( $raw_data['items'] as $event ) {
|
167 |
$id = ( isset( $event['id'] ) ? esc_html( $event['id'] ) : '' );
|
@@ -227,38 +230,72 @@ class GCE_Feed {
|
|
227 |
|
228 |
private function get_feed_start() {
|
229 |
|
230 |
-
$
|
231 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
|
233 |
switch( $interval ) {
|
234 |
case 'days':
|
235 |
-
return
|
236 |
case 'months':
|
237 |
-
return
|
238 |
case 'years':
|
239 |
-
return
|
|
|
|
|
240 |
}
|
241 |
|
242 |
// fall back just in case. Falls back to 1 year ago
|
243 |
-
return
|
244 |
}
|
245 |
|
246 |
private function get_feed_end() {
|
247 |
|
248 |
-
$
|
249 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
250 |
|
251 |
switch( $interval ) {
|
252 |
case 'days':
|
253 |
-
return
|
254 |
case 'months':
|
255 |
-
return
|
256 |
case 'years':
|
257 |
-
return
|
|
|
|
|
258 |
}
|
259 |
|
260 |
// Falls back to 1 year ahead just in case
|
261 |
-
return
|
262 |
}
|
263 |
|
264 |
function get_builder() {
|
21 |
$display_url,
|
22 |
$search_query,
|
23 |
$expand_recurring,
|
24 |
+
$title,
|
25 |
+
$feed_start,
|
26 |
+
$feed_end;
|
27 |
|
28 |
public $events = array();
|
29 |
|
74 |
$this->search_query = get_post_meta( $this->id, 'gce_search_query', true );
|
75 |
$this->expand_recurring = get_post_meta( $this->id, 'gce_expand_recurring', true );
|
76 |
$this->title = get_the_title( $this->id );
|
77 |
+
$this->feed_start = $this->get_feed_start();
|
78 |
+
$this->feed_end = $this->get_feed_end();
|
79 |
}
|
80 |
|
81 |
/**
|
90 |
|
91 |
if( empty( $this->feed_url ) ) {
|
92 |
if( current_user_can( 'manage_options' ) ) {
|
93 |
+
echo '<p>' . __( 'The Google Calendar ID has not been set. Please make sure to set it correctly in the Feed settings.', 'gce' ) . '</p>';
|
94 |
}
|
95 |
|
96 |
return;
|
110 |
$query .= '?key=' . $api_key;
|
111 |
|
112 |
|
113 |
+
$args['timeMin'] = urlencode( date( 'c', $this->feed_start ) );
|
114 |
|
115 |
+
$args['timeMax'] = urlencode( date( 'c', $this->feed_end ) );
|
116 |
|
117 |
$args['maxResults'] = 10000;
|
118 |
|
165 |
//If decoding was successful
|
166 |
if ( ! empty( $raw_data ) ) {
|
167 |
//If there are some entries (events) to process
|
|
|
168 |
//Loop through each event, extracting the relevant information
|
169 |
foreach ( $raw_data['items'] as $event ) {
|
170 |
$id = ( isset( $event['id'] ) ? esc_html( $event['id'] ) : '' );
|
230 |
|
231 |
private function get_feed_start() {
|
232 |
|
233 |
+
$use_range = ( get_post_meta( $this->id, 'gce_display_mode', true ) == 'date-range' ? true : false );
|
234 |
+
|
235 |
+
if( $use_range ) {
|
236 |
+
$start = get_post_meta( $this->id, 'gce_feed_range_start', true );
|
237 |
+
|
238 |
+
$start = gce_date_unix( $start );
|
239 |
+
|
240 |
+
$interval = 'date-range';
|
241 |
+
|
242 |
+
} else {
|
243 |
+
$start = get_post_meta( $this->id, 'gce_feed_start_num', true );
|
244 |
+
$interval = get_post_meta( $this->id, 'gce_feed_start', true );
|
245 |
+
|
246 |
+
if( empty( $start ) ) {
|
247 |
+
$start = 1;
|
248 |
+
}
|
249 |
+
}
|
250 |
|
251 |
switch( $interval ) {
|
252 |
case 'days':
|
253 |
+
return time() - ( $start * 86400 );
|
254 |
case 'months':
|
255 |
+
return time() - ( $start * 2629743 );
|
256 |
case 'years':
|
257 |
+
return time() - ( $start * 31556926 );
|
258 |
+
case 'date-range':
|
259 |
+
return $start;
|
260 |
}
|
261 |
|
262 |
// fall back just in case. Falls back to 1 year ago
|
263 |
+
return time() - 31556926;
|
264 |
}
|
265 |
|
266 |
private function get_feed_end() {
|
267 |
|
268 |
+
$use_range = ( get_post_meta( $this->id, 'gce_display_mode', true ) == 'date-range' ? true : false );
|
269 |
+
|
270 |
+
if( $use_range ) {
|
271 |
+
$end = get_post_meta( $this->id, 'gce_feed_range_end', true );
|
272 |
+
|
273 |
+
$end = gce_date_unix( $end );
|
274 |
+
|
275 |
+
$interval = 'date-range';
|
276 |
+
|
277 |
+
} else {
|
278 |
+
$end = get_post_meta( $this->id, 'gce_feed_end_num', true );
|
279 |
+
$interval = get_post_meta( $this->id, 'gce_feed_end', true );
|
280 |
+
|
281 |
+
if( empty( $end ) ) {
|
282 |
+
$end = 1;
|
283 |
+
}
|
284 |
+
}
|
285 |
|
286 |
switch( $interval ) {
|
287 |
case 'days':
|
288 |
+
return time() + ( $end * 86400 );
|
289 |
case 'months':
|
290 |
+
return time() + ( $end * 2629743 );
|
291 |
case 'years':
|
292 |
+
return time() + ( $end * 31556926 );
|
293 |
+
case 'date-range':
|
294 |
+
return mktime( 23, 59, 59, date( 'n', $end ), date( 'j', $end ), date( 'Y', $end ) );
|
295 |
}
|
296 |
|
297 |
// Falls back to 1 year ahead just in case
|
298 |
+
return time() + 31556926;
|
299 |
}
|
300 |
|
301 |
function get_builder() {
|
includes/gce-feed-cpt.php
CHANGED
@@ -66,7 +66,7 @@ add_action( 'init', 'gce_setup_cpt' );
|
|
66 |
function gce_feed_messages( $messages ) {
|
67 |
global $post, $post_ID;
|
68 |
|
69 |
-
$url1 = '<a href="' . get_permalink( $post_ID ) . '">';
|
70 |
$url2 = __( 'feed', 'gce' );
|
71 |
$url3 = '</a>';
|
72 |
$s1 = __( 'Feed', 'gce' );
|
@@ -153,15 +153,23 @@ function gce_save_meta( $post_id ) {
|
|
153 |
'gce_custom_until',
|
154 |
'gce_search_query',
|
155 |
'gce_expand_recurring',
|
|
|
156 |
'gce_paging',
|
157 |
-
'
|
158 |
-
'
|
|
|
|
|
159 |
'gce_list_start_offset_num',
|
160 |
'gce_list_start_offset_direction',
|
161 |
'gce_feed_start',
|
162 |
-
'
|
|
|
163 |
'gce_feed_end',
|
164 |
-
'
|
|
|
|
|
|
|
|
|
165 |
// Display options
|
166 |
'gce_display_start',
|
167 |
'gce_display_start_text',
|
@@ -194,7 +202,10 @@ function gce_save_meta( $post_id ) {
|
|
194 |
$id = str_replace( '/public/basic', '', $id );
|
195 |
$id = str_replace( '%40', '@', $id );
|
196 |
|
197 |
-
|
|
|
|
|
|
|
198 |
} else {
|
199 |
update_post_meta( $post_id, $pmf, stripslashes( $_POST[$pmf] ) );
|
200 |
}
|
@@ -241,7 +252,7 @@ function gce_column_content( $column_name, $post_ID ) {
|
|
241 |
echo $post_ID;
|
242 |
break;
|
243 |
case 'feed-sc':
|
244 |
-
echo '<code>[gcal id="' . $post_ID . '"]</code>';
|
245 |
break;
|
246 |
case 'display-type':
|
247 |
$display = get_post_meta( $post_ID, 'gce_display_mode', true );
|
66 |
function gce_feed_messages( $messages ) {
|
67 |
global $post, $post_ID;
|
68 |
|
69 |
+
$url1 = '<a href="' . esc_url( get_permalink( $post_ID ) ) . '">';
|
70 |
$url2 = __( 'feed', 'gce' );
|
71 |
$url3 = '</a>';
|
72 |
$s1 = __( 'Feed', 'gce' );
|
153 |
'gce_custom_until',
|
154 |
'gce_search_query',
|
155 |
'gce_expand_recurring',
|
156 |
+
'gce_show_tooltips',
|
157 |
'gce_paging',
|
158 |
+
'gce_events_per_page',
|
159 |
+
'gce_per_page_num',
|
160 |
+
'gce_per_page_from',
|
161 |
+
'gce_per_page_to',
|
162 |
'gce_list_start_offset_num',
|
163 |
'gce_list_start_offset_direction',
|
164 |
'gce_feed_start',
|
165 |
+
'gce_feed_start_num',
|
166 |
+
'gce_feed_start_custom',
|
167 |
'gce_feed_end',
|
168 |
+
'gce_feed_end_num',
|
169 |
+
'gce_feed_end_custom',
|
170 |
+
'gce_feed_use_range',
|
171 |
+
'gce_feed_range_start',
|
172 |
+
'gce_feed_range_end',
|
173 |
// Display options
|
174 |
'gce_display_start',
|
175 |
'gce_display_start_text',
|
202 |
$id = str_replace( '/public/basic', '', $id );
|
203 |
$id = str_replace( '%40', '@', $id );
|
204 |
|
205 |
+
// decode first before re-encoding it
|
206 |
+
$id = urldecode( $id );
|
207 |
+
|
208 |
+
update_post_meta( $post_id, $pmf, urlencode( trim( $id ) ) );
|
209 |
} else {
|
210 |
update_post_meta( $post_id, $pmf, stripslashes( $_POST[$pmf] ) );
|
211 |
}
|
252 |
echo $post_ID;
|
253 |
break;
|
254 |
case 'feed-sc':
|
255 |
+
echo '<code>[gcal id="' . esc_attr( $post_ID ) . '"]</code>';
|
256 |
break;
|
257 |
case 'display-type':
|
258 |
$display = get_post_meta( $post_ID, 'gce_display_mode', true );
|
includes/misc-functions.php
CHANGED
@@ -5,20 +5,19 @@
|
|
5 |
*
|
6 |
* @since 2.0.0
|
7 |
*/
|
8 |
-
function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $widget = false ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
10 |
// Load scripts
|
11 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-images-loaded' );
|
12 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-qtip' );
|
13 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-public' );
|
14 |
|
15 |
-
wp_localize_script( GCE_PLUGIN_SLUG . '-public', 'gce',
|
16 |
-
array(
|
17 |
-
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
18 |
-
'ajaxnonce' => wp_create_nonce( 'gce_ajax_nonce' ),
|
19 |
-
'loadingText' => __( 'Loading...', 'gce' )
|
20 |
-
) );
|
21 |
-
|
22 |
$defaults = array(
|
23 |
'title_text' => '',
|
24 |
'sort' => 'asc',
|
@@ -30,7 +29,10 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
30 |
'max_events' => null,
|
31 |
'start_offset' => null,
|
32 |
'paging_type' => null,
|
33 |
-
'paging' => null
|
|
|
|
|
|
|
34 |
);
|
35 |
|
36 |
$args = array_merge( $defaults, $args );
|
@@ -44,6 +46,10 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
44 |
$markup = '';
|
45 |
$start = current_time( 'timestamp' );
|
46 |
|
|
|
|
|
|
|
|
|
47 |
if( $widget ) {
|
48 |
foreach( $ids as $f ) {
|
49 |
$paging = get_post_meta( $f, 'gce_paging_widget', true );
|
@@ -62,38 +68,59 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
62 |
if( $paging === null ) {
|
63 |
$paging = get_post_meta( $id, 'gce_paging', true );
|
64 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
}
|
66 |
|
67 |
if( 'grid' == $display ) {
|
68 |
-
|
69 |
global $localize;
|
70 |
|
71 |
-
$target =
|
72 |
|
73 |
$localize[$target] = array(
|
74 |
'target_element' => $target,
|
75 |
-
'feed_ids'
|
76 |
-
'title_text'
|
77 |
-
'type'
|
|
|
78 |
);
|
79 |
|
80 |
-
wp_localize_script( GCE_PLUGIN_SLUG . '-public', 'gce_grid', $localize );
|
81 |
-
|
82 |
if( $widget == 1 ) {
|
83 |
-
$markup .= '<div class="gce-widget-grid" id="gce-
|
84 |
} else {
|
85 |
-
$markup .= '<div class="gce-page-grid
|
86 |
}
|
87 |
|
88 |
$markup .= $d->get_grid( $year, $month, $widget, $paging );
|
89 |
$markup .= '</div>';
|
|
|
90 |
|
91 |
} else if( 'list' == $display || 'list-grouped' == $display ) {
|
92 |
|
93 |
if( $widget ) {
|
94 |
-
$markup = '<div class="gce-widget-list
|
95 |
} else {
|
96 |
-
$markup = '<div class="gce-page-list
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
}
|
98 |
}
|
99 |
|
@@ -106,7 +133,9 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
106 |
$i++;
|
107 |
}
|
108 |
}
|
109 |
-
|
|
|
|
|
110 |
return $markup;
|
111 |
}
|
112 |
|
@@ -123,16 +152,20 @@ function gce_ajax() {
|
|
123 |
die( 'Request has failed.' );
|
124 |
}
|
125 |
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
|
|
|
|
|
|
|
|
132 |
|
133 |
-
|
134 |
|
135 |
-
|
136 |
'title_text' => $title,
|
137 |
'month' => $month,
|
138 |
'year' => $year,
|
@@ -140,10 +173,10 @@ function gce_ajax() {
|
|
140 |
);
|
141 |
|
142 |
if ( 'page' == $type ) {
|
143 |
-
echo gce_print_calendar( $ids, 'grid', $args );
|
144 |
} elseif ( 'widget' == $type ) {
|
145 |
$args['widget'] = 1;
|
146 |
-
echo gce_print_calendar( $ids, 'grid', $args );
|
147 |
}
|
148 |
|
149 |
die();
|
@@ -164,7 +197,7 @@ function gce_ajax_list() {
|
|
164 |
if( ! check_ajax_referer( 'gce_ajax_nonce', 'gce_nonce' ) ) {
|
165 |
die( 'Request has failed.' );
|
166 |
}
|
167 |
-
|
168 |
$grouped = esc_html( $_POST['gce_grouped'] );
|
169 |
$start = esc_html( $_POST['gce_start'] );
|
170 |
$ids = esc_html( $_POST['gce_feed_ids'] );
|
@@ -216,7 +249,7 @@ function gce_feed_content( $content ) {
|
|
216 |
global $post;
|
217 |
|
218 |
if( $post->post_type == 'gce_feed' ) {
|
219 |
-
$content = '[gcal id="' . $post->ID . '"]';
|
220 |
}
|
221 |
|
222 |
return $content;
|
@@ -243,6 +276,20 @@ function gce_ga_campaign_url( $base_url, $source, $medium, $campaign ) {
|
|
243 |
'utm_campaign' => $campaign
|
244 |
), $base_url );
|
245 |
|
246 |
-
return $url;
|
247 |
}
|
248 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
*
|
6 |
* @since 2.0.0
|
7 |
*/
|
8 |
+
function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $widget = false, $uid = null ) {
|
9 |
+
|
10 |
+
// Set static unique ID for setting id attributes
|
11 |
+
if( $uid == null ) {
|
12 |
+
STATIC $uid = 1;
|
13 |
+
}
|
14 |
+
|
15 |
|
16 |
// Load scripts
|
17 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-images-loaded' );
|
18 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-qtip' );
|
19 |
wp_enqueue_script( GCE_PLUGIN_SLUG . '-public' );
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
$defaults = array(
|
22 |
'title_text' => '',
|
23 |
'sort' => 'asc',
|
29 |
'max_events' => null,
|
30 |
'start_offset' => null,
|
31 |
'paging_type' => null,
|
32 |
+
'paging' => null,
|
33 |
+
'max_num' => null,
|
34 |
+
'range_start' => null,
|
35 |
+
'show_tooltips' => null
|
36 |
);
|
37 |
|
38 |
$args = array_merge( $defaults, $args );
|
46 |
$markup = '';
|
47 |
$start = current_time( 'timestamp' );
|
48 |
|
49 |
+
if( $range_start === null ) {
|
50 |
+
$range_start = $d->feeds[$feed_ids]->feed_start;
|
51 |
+
}
|
52 |
+
|
53 |
if( $widget ) {
|
54 |
foreach( $ids as $f ) {
|
55 |
$paging = get_post_meta( $f, 'gce_paging_widget', true );
|
68 |
if( $paging === null ) {
|
69 |
$paging = get_post_meta( $id, 'gce_paging', true );
|
70 |
}
|
71 |
+
|
72 |
+
if( empty( $show_tooltips ) && $show_tooltips != 0 ) {
|
73 |
+
$tooltips = get_post_meta( $id, 'gce_show_tooltips', true );
|
74 |
+
} else {
|
75 |
+
$tooltips = $show_tooltips;
|
76 |
+
}
|
77 |
+
|
78 |
+
if( ! empty( $tooltips ) && ( $tooltips === true || $tooltips == 'true' || $tooltips == '1' || $tooltips == 1 ) ) {
|
79 |
+
$show_tooltips = 'true';
|
80 |
+
} else {
|
81 |
+
$show_tooltips = 'false';
|
82 |
+
}
|
83 |
}
|
84 |
|
85 |
if( 'grid' == $display ) {
|
86 |
+
|
87 |
global $localize;
|
88 |
|
89 |
+
$target = 'gce-' . $uid;
|
90 |
|
91 |
$localize[$target] = array(
|
92 |
'target_element' => $target,
|
93 |
+
'feed_ids' => $feed_ids,
|
94 |
+
'title_text' => $title_text,
|
95 |
+
'type' => ( $widget == 1 ? 'widget' : 'page' ),
|
96 |
+
'show_tooltips' => ( $show_tooltips == 'true' || $show_tooltips == '1' ? 'true' : 'false' )
|
97 |
);
|
98 |
|
|
|
|
|
99 |
if( $widget == 1 ) {
|
100 |
+
$markup .= '<div class="gce-widget-grid gce-widget-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">';
|
101 |
} else {
|
102 |
+
$markup .= '<div class="gce-page-grid gce-page-grid-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">';
|
103 |
}
|
104 |
|
105 |
$markup .= $d->get_grid( $year, $month, $widget, $paging );
|
106 |
$markup .= '</div>';
|
107 |
+
|
108 |
|
109 |
} else if( 'list' == $display || 'list-grouped' == $display ) {
|
110 |
|
111 |
if( $widget ) {
|
112 |
+
$markup = '<div class="gce-widget-list gce-widget-list-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_list( $grouped, ( $start + $start_offset ), $paging, $paging_interval, $start_offset, $max_events, $paging_type, $max_num ) . '</div>';
|
113 |
} else {
|
114 |
+
$markup = '<div class="gce-page-list gce-page-list-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_list( $grouped, ( $start + $start_offset ), $paging, $paging_interval, $start_offset, $max_events, $paging_type ) . '</div>';
|
115 |
+
}
|
116 |
+
} else if( 'date-range' == $display ) {
|
117 |
+
|
118 |
+
$paging_interval = 'date-range';
|
119 |
+
|
120 |
+
if( $widget ) {
|
121 |
+
$markup = '<div class="gce-widget-list gce-widget-list-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_list( $grouped, $range_start, false, $paging_interval, $start_offset, INF, $paging_type, $max_num ) . '</div>';
|
122 |
+
} else {
|
123 |
+
$markup = '<div class="gce-page-list gce-page-list-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_list( $grouped, $range_start, false, $paging_interval, $start_offset, INF, $paging_type, INF ) . '</div>';
|
124 |
}
|
125 |
}
|
126 |
|
133 |
$i++;
|
134 |
}
|
135 |
}
|
136 |
+
|
137 |
+
$uid++;
|
138 |
+
|
139 |
return $markup;
|
140 |
}
|
141 |
|
152 |
die( 'Request has failed.' );
|
153 |
}
|
154 |
|
155 |
+
$uid = esc_html( $_POST['gce_uid'] );
|
156 |
+
$ids = esc_html( $_POST['gce_feed_ids'] );
|
157 |
+
$title = esc_html( $_POST['gce_title_text'] );
|
158 |
+
$month = esc_html( $_POST['gce_month'] );
|
159 |
+
$year = esc_html( $_POST['gce_year'] );
|
160 |
+
$paging = esc_html( $_POST['gce_paging'] );
|
161 |
+
$type = esc_html( $_POST['gce_type'] );
|
162 |
+
|
163 |
+
// Split ID and pass as UID to function
|
164 |
+
$uid = explode( '-', $uid );
|
165 |
|
166 |
+
$title = ( 'null' == $title ) ? null : $title;
|
167 |
|
168 |
+
$args = array(
|
169 |
'title_text' => $title,
|
170 |
'month' => $month,
|
171 |
'year' => $year,
|
173 |
);
|
174 |
|
175 |
if ( 'page' == $type ) {
|
176 |
+
echo gce_print_calendar( $ids, 'grid', $args, 0, $uid[1] );
|
177 |
} elseif ( 'widget' == $type ) {
|
178 |
$args['widget'] = 1;
|
179 |
+
echo gce_print_calendar( $ids, 'grid', $args, 1, $uid[1] );
|
180 |
}
|
181 |
|
182 |
die();
|
197 |
if( ! check_ajax_referer( 'gce_ajax_nonce', 'gce_nonce' ) ) {
|
198 |
die( 'Request has failed.' );
|
199 |
}
|
200 |
+
|
201 |
$grouped = esc_html( $_POST['gce_grouped'] );
|
202 |
$start = esc_html( $_POST['gce_start'] );
|
203 |
$ids = esc_html( $_POST['gce_feed_ids'] );
|
249 |
global $post;
|
250 |
|
251 |
if( $post->post_type == 'gce_feed' ) {
|
252 |
+
$content = '[gcal id="' . esc_attr( $post->ID ) . '"]';
|
253 |
}
|
254 |
|
255 |
return $content;
|
276 |
'utm_campaign' => $campaign
|
277 |
), $base_url );
|
278 |
|
279 |
+
return esc_url( $url );
|
280 |
}
|
281 |
|
282 |
+
/**
|
283 |
+
* Function to convert date format mm/dd/YYYY to unix timestamp
|
284 |
+
*/
|
285 |
+
function gce_date_unix( $date ) {
|
286 |
+
$date = explode( '/', $date );
|
287 |
+
|
288 |
+
$month = $date[0];
|
289 |
+
$day = $date[1];
|
290 |
+
$year = $date[2];
|
291 |
+
|
292 |
+
$timestamp = mktime( 0, 0, 0, $month, $day, $year );
|
293 |
+
|
294 |
+
return $timestamp;
|
295 |
+
}
|
includes/php-calendar.php
CHANGED
@@ -52,15 +52,15 @@ function gce_generate_calendar( $year, $month, $days = array(), $day_name_length
|
|
52 |
$n = apply_filters( 'gce_next_text', $n );
|
53 |
|
54 |
if( $widget ) {
|
55 |
-
$p = '<div class="gce-prev">' . ( ( $pl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Previous month', 'gce' ) . '" name="' . $pl . '" data-gce-grid-paging="' . $paging . '">' . $p . '</a>' ) : $p ) . '</div>';
|
56 |
} else {
|
57 |
-
$p = '<div class="gce-prev">' . ( ( $pl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Previous month', 'gce' ) . '" name="' . $pl . '" data-gce-grid-paging="' . $paging . '">' . $p . '</a>' ) : $p ) . '</div>';
|
58 |
}
|
59 |
|
60 |
if( $widget ) {
|
61 |
-
$n = '<div class="gce-next">' . ( ( $nl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Next month', 'gce' ) . '" name="' . $nl . '" data-gce-grid-paging="' . $paging . '">' . $n . '</a>' ) : $n ) . '</div>';
|
62 |
} else {
|
63 |
-
$n = '<div class="gce-next">' . ( ( $nl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Next month', 'gce' ) . '" name="' . $nl . '" data-gce-grid-paging="' . $paging . '">' . $n . '</a>' ) : $n ) . '</div>';
|
64 |
}
|
65 |
|
66 |
$calendar = '<table class="gce-calendar">' . "\n" .
|
@@ -68,7 +68,7 @@ function gce_generate_calendar( $year, $month, $days = array(), $day_name_length
|
|
68 |
'<div class="gce-navbar">' .
|
69 |
$p .
|
70 |
$n .
|
71 |
-
'<div class="gce-month-title">' . ( ( $month_href ) ? ( '<a href="' . esc_attr( $month_href ) . '">' . $title . '</a>' ) : $title ) . '</div>' .
|
72 |
'</div>' .
|
73 |
'</caption>' . "\n" .
|
74 |
'<tr>' . "\n";
|
@@ -85,7 +85,7 @@ function gce_generate_calendar( $year, $month, $days = array(), $day_name_length
|
|
85 |
$time_now = current_time( 'timestamp' );
|
86 |
$today = mktime( 0, 0, 0, date( 'm', $time_now ), date( 'd', $time_now ), date( 'Y', $time_now ) );
|
87 |
|
88 |
-
if ( $weekday > 0 ) $calendar .= '<td colspan="' . $weekday . '"> </td>'; #initial 'empty' days
|
89 |
for ( $day = 1, $days_in_month = date( 't', $first_of_month ); $day <= $days_in_month; $day++, $weekday++ ) {
|
90 |
if ( 7 == $weekday ) {
|
91 |
$weekday = 0; #start a new week
|
@@ -96,14 +96,14 @@ function gce_generate_calendar( $year, $month, $days = array(), $day_name_length
|
|
96 |
|
97 |
if ( isset( $days[$timestamp] ) && is_array( $days[$timestamp] ) ) {
|
98 |
list( $link, $classes, $content ) = $days[$timestamp];
|
99 |
-
$calendar .= '<td' . ( ( $classes ) ? ( ' class="' . $classes . '">' ) : '>' ) . ( ( $link ) ? ( '<a href="' . $link . '"><span class="gce-day-number">' . $day . '</span></a>' . $content ) : '<span class="gce-day-number">' . $day . '</span>' . $content ) . '</td>';
|
100 |
}else{
|
101 |
$css_class = ( $timestamp < $time_now ) ? 'gce-day-past' : 'gce-day-future';
|
102 |
-
$calendar .= '<td class="' . $css_class . '"><span class="gce-day-number">' . $day . '</span></td>';
|
103 |
}
|
104 |
}
|
105 |
|
106 |
-
if ( 7 != $weekday ) $calendar .= '<td colspan="' . ( 7 - $weekday ) . '"> </td>'; #remaining "empty" days
|
107 |
|
108 |
return $calendar . "</tr>\n</table>\n";
|
109 |
}
|
52 |
$n = apply_filters( 'gce_next_text', $n );
|
53 |
|
54 |
if( $widget ) {
|
55 |
+
$p = '<div class="gce-prev">' . ( ( $pl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Previous month', 'gce' ) . '" name="' . esc_attr( $pl ) . '" data-gce-grid-paging="' . esc_attr( $paging ) . '">' . $p . '</a>' ) : $p ) . '</div>';
|
56 |
} else {
|
57 |
+
$p = '<div class="gce-prev">' . ( ( $pl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Previous month', 'gce' ) . '" name="' . esc_attr( $pl ) . '" data-gce-grid-paging="' . esc_attr( $paging ) . '">' . $p . '</a>' ) : $p ) . '</div>';
|
58 |
}
|
59 |
|
60 |
if( $widget ) {
|
61 |
+
$n = '<div class="gce-next">' . ( ( $nl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Next month', 'gce' ) . '" name="' . esc_attr( $nl ) . '" data-gce-grid-paging="' . esc_attr( $paging ) . '">' . $n . '</a>' ) : $n ) . '</div>';
|
62 |
} else {
|
63 |
+
$n = '<div class="gce-next">' . ( ( $nl ) ? ( '<a href="#" class="gce-change-month" title="' . esc_attr__( 'Next month', 'gce' ) . '" name="' . esc_attr( $nl ) . '" data-gce-grid-paging="' . esc_attr( $paging ) . '">' . $n . '</a>' ) : $n ) . '</div>';
|
64 |
}
|
65 |
|
66 |
$calendar = '<table class="gce-calendar">' . "\n" .
|
68 |
'<div class="gce-navbar">' .
|
69 |
$p .
|
70 |
$n .
|
71 |
+
'<div class="gce-month-title">' . ( ( $month_href ) ? ( '<a href="' . esc_attr( $month_href ) . '">' . esc_html( $title ) . '</a>' ) : esc_html( $title ) ) . '</div>' .
|
72 |
'</div>' .
|
73 |
'</caption>' . "\n" .
|
74 |
'<tr>' . "\n";
|
85 |
$time_now = current_time( 'timestamp' );
|
86 |
$today = mktime( 0, 0, 0, date( 'm', $time_now ), date( 'd', $time_now ), date( 'Y', $time_now ) );
|
87 |
|
88 |
+
if ( $weekday > 0 ) $calendar .= '<td colspan="' . esc_attr( $weekday ) . '"> </td>'; #initial 'empty' days
|
89 |
for ( $day = 1, $days_in_month = date( 't', $first_of_month ); $day <= $days_in_month; $day++, $weekday++ ) {
|
90 |
if ( 7 == $weekday ) {
|
91 |
$weekday = 0; #start a new week
|
96 |
|
97 |
if ( isset( $days[$timestamp] ) && is_array( $days[$timestamp] ) ) {
|
98 |
list( $link, $classes, $content ) = $days[$timestamp];
|
99 |
+
$calendar .= '<td' . ( ( $classes ) ? ( ' class="' . esc_attr( $classes ) . '">' ) : '>' ) . ( ( $link ) ? ( '<a href="' . esc_url( $link ) . '"><span class="gce-day-number">' . esc_html( $day ) . '</span></a>' . $content ) : '<span class="gce-day-number">' . esc_html( $day ) . '</span>' . $content ) . '</td>';
|
100 |
}else{
|
101 |
$css_class = ( $timestamp < $time_now ) ? 'gce-day-past' : 'gce-day-future';
|
102 |
+
$calendar .= '<td class="' . esc_attr( $css_class ) . '"><span class="gce-day-number">' . esc_html( $day ) . '</span></td>';
|
103 |
}
|
104 |
}
|
105 |
|
106 |
+
if ( 7 != $weekday ) $calendar .= '<td colspan="' . esc_attr( ( 7 - $weekday ) ) . '"> </td>'; #remaining "empty" days
|
107 |
|
108 |
return $calendar . "</tr>\n</table>\n";
|
109 |
}
|
includes/register-settings.php
CHANGED
@@ -112,11 +112,11 @@ function gce_checkbox_callback( $args ) {
|
|
112 |
global $gce_options;
|
113 |
|
114 |
$checked = isset( $gce_options[$args['id']] ) ? checked( 1, $gce_options[$args['id']], false ) : '';
|
115 |
-
$html = "\n" . '<input type="checkbox" id="gce_settings_' . $args['section'] . '[' . $args['id'] . ']" name="gce_settings_' . $args['section'] . '[' . $args['id'] . ']" value="1" ' . $checked . '/>' . "\n";
|
116 |
|
117 |
// Render description text directly to the right in a label if it exists.
|
118 |
if ( ! empty( $args['desc'] ) )
|
119 |
-
$html .= '<label for="gce_settings_' . $args['section'] . '[' . $args['id'] . ']"> ' . $args['desc'] . '</label>' . "\n";
|
120 |
|
121 |
echo $html;
|
122 |
}
|
@@ -138,7 +138,7 @@ function gce_text_callback( $args ) {
|
|
138 |
$value = isset( $args['std'] ) ? $args['std'] : '';
|
139 |
|
140 |
$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : '';
|
141 |
-
$html = "\n" . '<input type="text" class="' . $size . '" id="gce_settings_' . $args['section'] . '[' . $args['id'] . ']" name="gce_settings_' . $args['section'] . '[' . $args['id'] . ']" value="' . esc_attr( $value ) . '"/>' . "\n";
|
142 |
|
143 |
// Render and style description text underneath if it exists.
|
144 |
if ( ! empty( $args['desc'] ) ) {
|
112 |
global $gce_options;
|
113 |
|
114 |
$checked = isset( $gce_options[$args['id']] ) ? checked( 1, $gce_options[$args['id']], false ) : '';
|
115 |
+
$html = "\n" . '<input type="checkbox" id="gce_settings_' . esc_attr( $args['section'] ) . '[' . esc_attr( $args['id'] ) . ']" name="gce_settings_' . esc_attr( $args['section'] ) . '[' . esc_attr( $args['id'] ) . ']" value="1" ' . $checked . '/>' . "\n";
|
116 |
|
117 |
// Render description text directly to the right in a label if it exists.
|
118 |
if ( ! empty( $args['desc'] ) )
|
119 |
+
$html .= '<label for="gce_settings_' . esc_attr( $args['section'] ) . '[' . esc_attr( $args['id'] ) . ']"> ' . $args['desc'] . '</label>' . "\n";
|
120 |
|
121 |
echo $html;
|
122 |
}
|
138 |
$value = isset( $args['std'] ) ? $args['std'] : '';
|
139 |
|
140 |
$size = ( isset( $args['size'] ) && ! is_null( $args['size'] ) ) ? $args['size'] : '';
|
141 |
+
$html = "\n" . '<input type="text" class="' . esc_attr( $size ) . '" id="gce_settings_' . esc_attr( $args['section'] ) . '[' . esc_attr( $args['id'] ) . ']" name="gce_settings_' . esc_attr( $args['section'] ) . '[' . esc_attr( $args['id'] ) . ']" value="' . esc_attr( $value ) . '"/>' . "\n";
|
142 |
|
143 |
// Render and style description text underneath if it exists.
|
144 |
if ( ! empty( $args['desc'] ) ) {
|
includes/shortcodes.php
CHANGED
@@ -28,7 +28,8 @@ function gce_gcal_shortcode( $attr ) {
|
|
28 |
'interval' => null,
|
29 |
'interval_count' => null,
|
30 |
'offset_interval_count' => null,
|
31 |
-
'offset_direction' => null
|
|
|
32 |
), $attr, 'gce_feed' ) );
|
33 |
|
34 |
// If no ID is specified then return
|
@@ -36,6 +37,8 @@ function gce_gcal_shortcode( $attr ) {
|
|
36 |
return;
|
37 |
}
|
38 |
|
|
|
|
|
39 |
$paging_interval = null;
|
40 |
$max_events = null;
|
41 |
|
@@ -59,11 +62,11 @@ function gce_gcal_shortcode( $attr ) {
|
|
59 |
}
|
60 |
|
61 |
if( $interval == null ) {
|
62 |
-
$interval = get_post_meta( $v, '
|
63 |
}
|
64 |
|
65 |
if( $interval_count == null ) {
|
66 |
-
$interval_count = get_post_meta( $v, '
|
67 |
}
|
68 |
|
69 |
if( $offset_interval_count == null ) {
|
@@ -77,6 +80,20 @@ function gce_gcal_shortcode( $attr ) {
|
|
77 |
if( $paging == null ) {
|
78 |
$paging = get_post_meta( $v, 'gce_paging', true );
|
79 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
}
|
81 |
|
82 |
if( $paging == 'false' ) {
|
@@ -95,11 +112,15 @@ function gce_gcal_shortcode( $attr ) {
|
|
95 |
$start_offset = $offset_interval_count * 86400 * $offset_direction;
|
96 |
|
97 |
if( $interval == 'days' ) {
|
98 |
-
$paging_interval =
|
99 |
$paging_type = 'days';
|
100 |
} else if( $interval == 'events' ) {
|
101 |
$max_events = $interval_count;
|
102 |
$paging_type = 'events';
|
|
|
|
|
|
|
|
|
103 |
}
|
104 |
|
105 |
// Port over old options
|
@@ -116,15 +137,16 @@ function gce_gcal_shortcode( $attr ) {
|
|
116 |
}
|
117 |
|
118 |
$args = array(
|
119 |
-
'title_text'
|
120 |
-
'sort'
|
121 |
-
'grouped'
|
122 |
-
'month'
|
123 |
-
'year'
|
124 |
-
'widget'
|
125 |
'paging_interval' => $paging_interval,
|
126 |
-
'max_events'
|
127 |
-
'paging'
|
|
|
128 |
);
|
129 |
|
130 |
$args['start_offset'] = $start_offset;
|
28 |
'interval' => null,
|
29 |
'interval_count' => null,
|
30 |
'offset_interval_count' => null,
|
31 |
+
'offset_direction' => null,
|
32 |
+
'show_tooltips' => null
|
33 |
), $attr, 'gce_feed' ) );
|
34 |
|
35 |
// If no ID is specified then return
|
37 |
return;
|
38 |
}
|
39 |
|
40 |
+
$invalid_id = false;
|
41 |
+
|
42 |
$paging_interval = null;
|
43 |
$max_events = null;
|
44 |
|
62 |
}
|
63 |
|
64 |
if( $interval == null ) {
|
65 |
+
$interval = get_post_meta( $v, 'gce_events_per_page', true );
|
66 |
}
|
67 |
|
68 |
if( $interval_count == null ) {
|
69 |
+
$interval_count = get_post_meta( $v, 'gce_per_page_num', true );
|
70 |
}
|
71 |
|
72 |
if( $offset_interval_count == null ) {
|
80 |
if( $paging == null ) {
|
81 |
$paging = get_post_meta( $v, 'gce_paging', true );
|
82 |
}
|
83 |
+
|
84 |
+
if( $show_tooltips == null ) {
|
85 |
+
$show_tooltips = get_post_meta( $v, 'gce_show_tooltips', true );
|
86 |
+
}
|
87 |
+
|
88 |
+
if( ! ( 'publish' == get_post_status( $v ) ) ) {
|
89 |
+
$invalid_id = true;
|
90 |
+
}
|
91 |
+
}
|
92 |
+
|
93 |
+
if( $invalid_id ) {
|
94 |
+
if( current_user_can( 'manage_options' ) ) {
|
95 |
+
return '<p>' . __( 'There was a problem with one or more of your feed IDs. Please check your shortcode settings and make sure they are correct.', 'gce' ) . '</p>';
|
96 |
+
}
|
97 |
}
|
98 |
|
99 |
if( $paging == 'false' ) {
|
112 |
$start_offset = $offset_interval_count * 86400 * $offset_direction;
|
113 |
|
114 |
if( $interval == 'days' ) {
|
115 |
+
$paging_interval = null;
|
116 |
$paging_type = 'days';
|
117 |
} else if( $interval == 'events' ) {
|
118 |
$max_events = $interval_count;
|
119 |
$paging_type = 'events';
|
120 |
+
} else if( $interval == 'week' ) {
|
121 |
+
$paging_interval = 604800;
|
122 |
+
} else if( $interval == 'month' ) {
|
123 |
+
$paging_interval = 2629743;
|
124 |
}
|
125 |
|
126 |
// Port over old options
|
137 |
}
|
138 |
|
139 |
$args = array(
|
140 |
+
'title_text' => $title,
|
141 |
+
'sort' => $order,
|
142 |
+
'grouped' => ( $display == 'list-grouped' ? 1 : 0 ),
|
143 |
+
'month' => null,
|
144 |
+
'year' => null,
|
145 |
+
'widget' => 0,
|
146 |
'paging_interval' => $paging_interval,
|
147 |
+
'max_events' => $max_events,
|
148 |
+
'paging' => $paging,
|
149 |
+
'show_tooltips' => $show_tooltips
|
150 |
);
|
151 |
|
152 |
$args['start_offset'] = $start_offset;
|
js/gce-admin.js
ADDED
@@ -0,0 +1,70 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* global jQuery */
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Admin JavaScript functions
|
5 |
+
*
|
6 |
+
* @package GCE
|
7 |
+
* @author Phil Derksen <pderksen@gmail.com>, Nick Young <mycorpweb@gmail.com>
|
8 |
+
* @license GPL-2.0+
|
9 |
+
* @copyright 2014 Phil Derksen
|
10 |
+
*/
|
11 |
+
|
12 |
+
(function ($) {
|
13 |
+
"use strict";
|
14 |
+
|
15 |
+
$(function () {
|
16 |
+
|
17 |
+
// Show the hidden text box if custom date is selected (Events per Page)
|
18 |
+
$('body').on('change', 'select[id*=events_per_page]', function() {
|
19 |
+
|
20 |
+
// Hide everything before showing what we want
|
21 |
+
$(this).parent().children('.gce_per_page_num_wrap').hide();
|
22 |
+
|
23 |
+
if( $(this).val() == 'days' || $(this).val() == 'events' ) {
|
24 |
+
$(this).parent().children('.gce_per_page_num_wrap').show();
|
25 |
+
}
|
26 |
+
});
|
27 |
+
|
28 |
+
$('body').on('change', 'select[id*=display_type]', function() {
|
29 |
+
|
30 |
+
if( $(this).val() == 'date-range' ) {
|
31 |
+
$(this).parent().parent().children('.gce-display-option').hide();
|
32 |
+
$(this).parent().parent().children('.gce-custom-range').show();
|
33 |
+
} else {
|
34 |
+
$(this).parent().parent().children('.gce-display-option').show();
|
35 |
+
$(this).parent().parent().children('.gce-custom-range').hide();
|
36 |
+
}
|
37 |
+
});
|
38 |
+
|
39 |
+
// For main settings page
|
40 |
+
$('body').on('change', 'select[id*=gce_display_mode]', function() {
|
41 |
+
if( $(this).val() == 'date-range' ) {
|
42 |
+
$('.gce-display-option').hide();
|
43 |
+
$('.gce-custom-range').show();
|
44 |
+
} else {
|
45 |
+
$('.gce-display-option').show();
|
46 |
+
$('.gce-custom-range').hide();
|
47 |
+
}
|
48 |
+
});
|
49 |
+
|
50 |
+
// Add jQuery date picker to our custom date fields
|
51 |
+
// We have to do it this way because the widget will break after clicking "Save" and this method fixes this problem
|
52 |
+
// REF: http://stackoverflow.com/a/10433307/3578774
|
53 |
+
$('body').on('focus', 'input[id*=feed_range_start]', function(){
|
54 |
+
$(this).datepicker();
|
55 |
+
});
|
56 |
+
|
57 |
+
$('body').on('focus', 'input[id*=feed_range_end]', function(){
|
58 |
+
$(this).datepicker();
|
59 |
+
});
|
60 |
+
|
61 |
+
// Trigger CPT Publish/Update click from another button.
|
62 |
+
// Form post trigger still pops up JS warning on new CPT.
|
63 |
+
$('.gce-feed-update-button').click(function(e) {
|
64 |
+
e.preventDefault();
|
65 |
+
|
66 |
+
$('#publish').click();
|
67 |
+
});
|
68 |
+
|
69 |
+
});
|
70 |
+
}(jQuery));
|
js/gce-script.js
CHANGED
@@ -11,12 +11,32 @@
|
|
11 |
(function($) {
|
12 |
'use strict';
|
13 |
|
|
|
|
|
|
|
14 |
$(function() {
|
15 |
|
16 |
-
gce_tooltips($('.gce-has-events'));
|
17 |
-
|
18 |
if( typeof gce_grid != 'undefined' ) {
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
$('body').on( 'click', '.gce-change-month', function(e) {
|
21 |
|
22 |
e.preventDefault();
|
@@ -28,16 +48,18 @@
|
|
28 |
if( typeof id == 'undefined' ) {
|
29 |
id = navLink.closest('.gce-widget-grid').attr('id');
|
30 |
}
|
31 |
-
|
32 |
//Extract month and year
|
33 |
var month_year = navLink.attr('name').split('-', 2);
|
34 |
var paging = navLink.attr('data-gce-grid-paging');
|
35 |
|
36 |
//Add loading text to table caption
|
37 |
$('#' + gce_grid[id].target_element + ' caption').html(gce.loadingText);
|
|
|
38 |
//Send AJAX request
|
39 |
$.post(gce.ajaxurl,{
|
40 |
action:'gce_ajax',
|
|
|
41 |
gce_type: gce_grid[id].type,
|
42 |
gce_feed_ids: gce_grid[id].feed_ids,
|
43 |
gce_title_text: gce_grid[id].title_text,
|
@@ -53,13 +75,18 @@
|
|
53 |
}else{
|
54 |
$('#' + gce_grid[id].target_element).replaceWith(data);
|
55 |
}
|
56 |
-
|
|
|
|
|
|
|
|
|
57 |
});
|
58 |
|
59 |
e.stopPropagation();
|
60 |
});
|
61 |
}
|
62 |
|
|
|
63 |
$('body').on( 'click', '.gce-change-month-list', function(e) {
|
64 |
|
65 |
e.preventDefault();
|
@@ -98,14 +125,18 @@
|
|
98 |
gce_nonce: gce.ajaxnonce
|
99 |
}, function(data){
|
100 |
navLink.parents('.gce-list').replaceWith(data);
|
|
|
|
|
101 |
});
|
102 |
|
103 |
e.stopPropagation();
|
104 |
});
|
105 |
|
|
|
106 |
function gce_tooltips(target_items) {
|
107 |
|
108 |
-
target_items.each(function(){
|
|
|
109 |
//Add qtip to all target items
|
110 |
$(this).qtip({
|
111 |
content: $(this).children('.gce-event-info'),
|
@@ -114,7 +145,8 @@
|
|
114 |
at: 'center',
|
115 |
viewport: true,
|
116 |
adjust: {
|
117 |
-
method: 'shift'
|
|
|
118 |
}
|
119 |
},
|
120 |
show: {
|
@@ -129,13 +161,6 @@
|
|
129 |
style: {
|
130 |
classes: 'qtip-light qtip-shadow qtip-rounded'
|
131 |
}
|
132 |
-
|
133 |
-
/* Old qTip 1 settings */
|
134 |
-
|
135 |
-
//position: { corner: { target: 'center', tooltip: 'bottomLeft' }, adjust: { screen: true } },
|
136 |
-
//show: { solo: true, delay: 0, effect: { length: 0 } },
|
137 |
-
//hide: { fixed: true, delay: 100, effect: { length: 0 } },
|
138 |
-
//style: { padding: "0", classes: { tooltip: 'gce-qtip', tip: 'gce-qtip-tip', title: 'gce-qtip-title', content: 'gce-qtip-content', active: 'gce-qtip-active' }, border: { width: 0 } }
|
139 |
});
|
140 |
});
|
141 |
}
|
11 |
(function($) {
|
12 |
'use strict';
|
13 |
|
14 |
+
// Set debug flag.
|
15 |
+
var script_debug = ( (typeof gce != 'undefined') && gce.script_debug == true);
|
16 |
+
|
17 |
$(function() {
|
18 |
|
|
|
|
|
19 |
if( typeof gce_grid != 'undefined' ) {
|
20 |
|
21 |
+
if (script_debug) {
|
22 |
+
console.log('gce_grid', gce_grid);
|
23 |
+
}
|
24 |
+
|
25 |
+
var tooltip_elements = '';
|
26 |
+
|
27 |
+
$('.gce-page-grid, .gce-widget-grid').each( function() {
|
28 |
+
var id = $(this).attr('id');
|
29 |
+
|
30 |
+
if( gce_grid[id].show_tooltips == 'true' || gce_grid[id].show_tooltips == true ) {
|
31 |
+
tooltip_elements += '#' + gce_grid[id].target_element + ' .gce-has-events,';
|
32 |
+
}
|
33 |
+
});
|
34 |
+
|
35 |
+
tooltip_elements = tooltip_elements.substring( 0, tooltip_elements.length - 1 );
|
36 |
+
|
37 |
+
gce_tooltips(tooltip_elements);
|
38 |
+
|
39 |
+
// Month nav link click for Grid view.
|
40 |
$('body').on( 'click', '.gce-change-month', function(e) {
|
41 |
|
42 |
e.preventDefault();
|
48 |
if( typeof id == 'undefined' ) {
|
49 |
id = navLink.closest('.gce-widget-grid').attr('id');
|
50 |
}
|
51 |
+
|
52 |
//Extract month and year
|
53 |
var month_year = navLink.attr('name').split('-', 2);
|
54 |
var paging = navLink.attr('data-gce-grid-paging');
|
55 |
|
56 |
//Add loading text to table caption
|
57 |
$('#' + gce_grid[id].target_element + ' caption').html(gce.loadingText);
|
58 |
+
|
59 |
//Send AJAX request
|
60 |
$.post(gce.ajaxurl,{
|
61 |
action:'gce_ajax',
|
62 |
+
gce_uid: id,
|
63 |
gce_type: gce_grid[id].type,
|
64 |
gce_feed_ids: gce_grid[id].feed_ids,
|
65 |
gce_title_text: gce_grid[id].title_text,
|
75 |
}else{
|
76 |
$('#' + gce_grid[id].target_element).replaceWith(data);
|
77 |
}
|
78 |
+
|
79 |
+
gce_tooltips(tooltip_elements);
|
80 |
+
|
81 |
+
}).fail(function(data) {
|
82 |
+
console.log( data );
|
83 |
});
|
84 |
|
85 |
e.stopPropagation();
|
86 |
});
|
87 |
}
|
88 |
|
89 |
+
// Month nav link click for List view.
|
90 |
$('body').on( 'click', '.gce-change-month-list', function(e) {
|
91 |
|
92 |
e.preventDefault();
|
125 |
gce_nonce: gce.ajaxnonce
|
126 |
}, function(data){
|
127 |
navLink.parents('.gce-list').replaceWith(data);
|
128 |
+
}).fail(function(data) {
|
129 |
+
console.log( data );
|
130 |
});
|
131 |
|
132 |
e.stopPropagation();
|
133 |
});
|
134 |
|
135 |
+
// Tooltip config using qTip2 jQuery plugin.
|
136 |
function gce_tooltips(target_items) {
|
137 |
|
138 |
+
$(target_items).each(function() {
|
139 |
+
|
140 |
//Add qtip to all target items
|
141 |
$(this).qtip({
|
142 |
content: $(this).children('.gce-event-info'),
|
145 |
at: 'center',
|
146 |
viewport: true,
|
147 |
adjust: {
|
148 |
+
method: 'shift',
|
149 |
+
scroll: false
|
150 |
}
|
151 |
},
|
152 |
show: {
|
161 |
style: {
|
162 |
classes: 'qtip-light qtip-shadow qtip-rounded'
|
163 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
164 |
});
|
165 |
});
|
166 |
}
|
languages/gce-ca.mo
ADDED
Binary file
|
languages/gce-ca.po
ADDED
@@ -0,0 +1,1541 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Copyright (C) 2010 Google Calendar Events
|
2 |
+
# This file is distributed under the same license as the Google Calendar Events package.
|
3 |
+
msgid ""
|
4 |
+
msgstr ""
|
5 |
+
"Project-Id-Version: Google Calendar Events 0.7.1\n"
|
6 |
+
"Report-Msgid-Bugs-To: http://wordpress.org/tag/google-calendar-events\n"
|
7 |
+
"POT-Creation-Date: 2014-11-22 16:21-0700\n"
|
8 |
+
"PO-Revision-Date: 2015-01-07 16:49+0100\n"
|
9 |
+
"Last-Translator: Toni Ginard <toni.ginard@gmail.com>\n"
|
10 |
+
"Language-Team: LANGUAGE <LL@li.org>\n"
|
11 |
+
"Language: ca\n"
|
12 |
+
"MIME-Version: 1.0\n"
|
13 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
14 |
+
"Content-Transfer-Encoding: 8bit\n"
|
15 |
+
"X-Generator: Poedit 1.5.4\n"
|
16 |
+
"X-Poedit-Language: Catalan\n"
|
17 |
+
|
18 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:128
|
19 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:129
|
20 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:200
|
21 |
+
#: google-calendar-events/includes/register-settings.php:54
|
22 |
+
msgid "General Settings"
|
23 |
+
msgstr "Opcions"
|
24 |
+
|
25 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:188
|
26 |
+
#: google-calendar-events/views/widgets.php:27
|
27 |
+
msgid "Google Calendar Events"
|
28 |
+
msgstr "Calendaris del Google"
|
29 |
+
|
30 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:201
|
31 |
+
msgid "Feeds"
|
32 |
+
msgstr "Calendaris"
|
33 |
+
|
34 |
+
#: google-calendar-events/includes/admin/admin-functions.php:20
|
35 |
+
msgid "Cache has been cleared for this feed."
|
36 |
+
msgstr "S'ha buidat la memòria cau d'aquest calendari"
|
37 |
+
|
38 |
+
#: google-calendar-events/includes/admin/admin-functions.php:35
|
39 |
+
#: google-calendar-events/includes/admin/admin-functions.php:57
|
40 |
+
msgid "Starts:"
|
41 |
+
msgstr "Comença:"
|
42 |
+
|
43 |
+
#: google-calendar-events/includes/admin/admin-functions.php:36
|
44 |
+
#: google-calendar-events/includes/admin/admin-functions.php:59
|
45 |
+
msgid "Ends:"
|
46 |
+
msgstr "Acaba:"
|
47 |
+
|
48 |
+
#: google-calendar-events/includes/admin/admin-functions.php:37
|
49 |
+
#: google-calendar-events/includes/admin/admin-functions.php:61
|
50 |
+
msgid "Location:"
|
51 |
+
msgstr "Ubicació:"
|
52 |
+
|
53 |
+
#: google-calendar-events/includes/admin/admin-functions.php:38
|
54 |
+
#: google-calendar-events/includes/admin/admin-functions.php:62
|
55 |
+
msgid "Description:"
|
56 |
+
msgstr "Descripció:"
|
57 |
+
|
58 |
+
#: google-calendar-events/includes/admin/admin-functions.php:39
|
59 |
+
msgid "More details..."
|
60 |
+
msgstr "Més detalls..."
|
61 |
+
|
62 |
+
#: google-calendar-events/includes/admin/admin-functions.php:64
|
63 |
+
msgid "More Details"
|
64 |
+
msgstr "Més detalls"
|
65 |
+
|
66 |
+
#: google-calendar-events/includes/admin/admin-functions.php:78
|
67 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:264
|
68 |
+
msgid "Clear Cache"
|
69 |
+
msgstr "Buida la memòria cau"
|
70 |
+
|
71 |
+
#: google-calendar-events/includes/class-gce-display.php:179
|
72 |
+
#: google-calendar-events/includes/class-gce-display.php:270
|
73 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:185
|
74 |
+
#: google-calendar-events/views/widgets.php:252
|
75 |
+
msgid "Back"
|
76 |
+
msgstr "<div class='dashicons dashicons-arrow-left-alt2'></div>"
|
77 |
+
|
78 |
+
#: google-calendar-events/includes/class-gce-display.php:183
|
79 |
+
#: google-calendar-events/includes/class-gce-display.php:271
|
80 |
+
msgid "Next"
|
81 |
+
msgstr "<div class='dashicons dashicons-arrow-right-alt2'></div>"
|
82 |
+
|
83 |
+
#: google-calendar-events/includes/class-gce-display.php:371
|
84 |
+
msgid "No events to display."
|
85 |
+
msgstr "No hi ha cap esdeveniment per mostrar."
|
86 |
+
|
87 |
+
#: google-calendar-events/includes/class-gce-event.php:504
|
88 |
+
#, php-format
|
89 |
+
msgid "%s year"
|
90 |
+
msgstr "%s any"
|
91 |
+
|
92 |
+
#: google-calendar-events/includes/class-gce-event.php:504
|
93 |
+
#, php-format
|
94 |
+
msgid "%s years"
|
95 |
+
msgstr "%s anys"
|
96 |
+
|
97 |
+
#: google-calendar-events/includes/class-gce-event.php:505
|
98 |
+
#, php-format
|
99 |
+
msgid "%s month"
|
100 |
+
msgstr "%s mes"
|
101 |
+
|
102 |
+
#: google-calendar-events/includes/class-gce-event.php:505
|
103 |
+
#, php-format
|
104 |
+
msgid "%s months"
|
105 |
+
msgstr "%s mesos"
|
106 |
+
|
107 |
+
#: google-calendar-events/includes/class-gce-event.php:506
|
108 |
+
#, php-format
|
109 |
+
msgid "%s week"
|
110 |
+
msgstr "%s setmana"
|
111 |
+
|
112 |
+
#: google-calendar-events/includes/class-gce-event.php:506
|
113 |
+
#, php-format
|
114 |
+
msgid "%s weeks"
|
115 |
+
msgstr "%s setmanes"
|
116 |
+
|
117 |
+
#: google-calendar-events/includes/class-gce-event.php:507
|
118 |
+
#, php-format
|
119 |
+
msgid "%s day"
|
120 |
+
msgstr "%s dia"
|
121 |
+
|
122 |
+
#: google-calendar-events/includes/class-gce-event.php:507
|
123 |
+
#, php-format
|
124 |
+
msgid "%s days"
|
125 |
+
msgstr "%s dies"
|
126 |
+
|
127 |
+
#: google-calendar-events/includes/class-gce-event.php:508
|
128 |
+
#, php-format
|
129 |
+
msgid "%s hour"
|
130 |
+
msgstr "%s hora"
|
131 |
+
|
132 |
+
#: google-calendar-events/includes/class-gce-event.php:508
|
133 |
+
#, php-format
|
134 |
+
msgid "%s hours"
|
135 |
+
msgstr "%s hores"
|
136 |
+
|
137 |
+
#: google-calendar-events/includes/class-gce-event.php:509
|
138 |
+
#, php-format
|
139 |
+
msgid "%s min"
|
140 |
+
msgstr "%s minut"
|
141 |
+
|
142 |
+
#: google-calendar-events/includes/class-gce-event.php:509
|
143 |
+
#, php-format
|
144 |
+
msgid "%s mins"
|
145 |
+
msgstr "%s minuts"
|
146 |
+
|
147 |
+
#: google-calendar-events/includes/class-gce-feed.php:89
|
148 |
+
msgid "The feed URL has not been set. Please make sure to set it correctly in the Feed settings."
|
149 |
+
msgstr "No s'ha indicat l'URL del calendari. Si us plau, assegureu-vos d'introduir-lo correctament als paràmetres del calendari"
|
150 |
+
|
151 |
+
#: google-calendar-events/includes/class-gce-feed.php:194
|
152 |
+
msgid "Some data was retrieved, but could not be parsed successfully. Please ensure your feed settings are correct."
|
153 |
+
msgstr "S'han recuperat algunes dades, però no s'han pogut processar correctament. Assegureu-vos de què els paràmetres del calendari són correctes."
|
154 |
+
|
155 |
+
#: google-calendar-events/includes/class-gce-feed.php:197
|
156 |
+
msgid "An error has occured."
|
157 |
+
msgstr "S'ha produït un error"
|
158 |
+
|
159 |
+
#: google-calendar-events/includes/class-gce-feed.php:202
|
160 |
+
msgid " Please ensure your calendar ID is correct."
|
161 |
+
msgstr "Assegureu-vos que l'ID del calendari és correcte."
|
162 |
+
|
163 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:21
|
164 |
+
msgid "Google Calendar Feeds"
|
165 |
+
msgstr "Calendaris del Google"
|
166 |
+
|
167 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:22
|
168 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:24
|
169 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:72
|
170 |
+
msgid "Feed"
|
171 |
+
msgstr "Calendari"
|
172 |
+
|
173 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:23
|
174 |
+
msgid "GCal Events"
|
175 |
+
msgstr "Google Calendar"
|
176 |
+
|
177 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:25
|
178 |
+
msgid "Add New"
|
179 |
+
msgstr "Afegeix"
|
180 |
+
|
181 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:26
|
182 |
+
msgid "Add New Feed"
|
183 |
+
msgstr "Afegeix un calendari nou"
|
184 |
+
|
185 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:27
|
186 |
+
msgid "New Feed"
|
187 |
+
msgstr "Afegeix un calendari nou"
|
188 |
+
|
189 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:28
|
190 |
+
msgid "Edit Feed"
|
191 |
+
msgstr "Edita el calendari"
|
192 |
+
|
193 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:29
|
194 |
+
msgid "View Feed"
|
195 |
+
msgstr "Mostra el calendari"
|
196 |
+
|
197 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:30
|
198 |
+
msgid "All GCal Feeds"
|
199 |
+
msgstr "Tots els calendaris"
|
200 |
+
|
201 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:31
|
202 |
+
msgid "Search GCal Feeds"
|
203 |
+
msgstr "Cerca als calendaris"
|
204 |
+
|
205 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:32
|
206 |
+
msgid "No feeds found."
|
207 |
+
msgstr "No s'ha trobat cap calendari."
|
208 |
+
|
209 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:33
|
210 |
+
msgid "No feeds found in Trash."
|
211 |
+
msgstr "No s'ha trobat cap calendari a la paperera"
|
212 |
+
|
213 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:70
|
214 |
+
msgid "feed"
|
215 |
+
msgstr "calendari"
|
216 |
+
|
217 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:75
|
218 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:76
|
219 |
+
#, php-format
|
220 |
+
msgid "%4$s updated. %1$sView %2$s%3$s"
|
221 |
+
msgstr "%4$s actualitzat. %1$sMostra %2$s%3$s"
|
222 |
+
|
223 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:77
|
224 |
+
#, php-format
|
225 |
+
msgid "%4$s published. %1$sView %2$s%3$s"
|
226 |
+
msgstr "%4$s publicat. %1$sMostra %2$s%3$s"
|
227 |
+
|
228 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:78
|
229 |
+
#, php-format
|
230 |
+
msgid "%4$s saved. %1$sView %2$s%3$s"
|
231 |
+
msgstr "%4$s desat. %1$sMostra %2$s%3$s"
|
232 |
+
|
233 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:79
|
234 |
+
#, php-format
|
235 |
+
msgid "%4$s submitted. %1$sView %2$s%3$s"
|
236 |
+
msgstr "%4$s tramès. %1$sMostra %2$s%3$s"
|
237 |
+
|
238 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:80
|
239 |
+
#, php-format
|
240 |
+
msgid "%4$s draft updated. %1$sView %2$s%3$s"
|
241 |
+
msgstr "%4$s esborrany actualitzat. %1$sMostra %2$s%3$s"
|
242 |
+
|
243 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:94
|
244 |
+
msgid "Feed Settings"
|
245 |
+
msgstr "Paràmetres del calendari"
|
246 |
+
|
247 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:97
|
248 |
+
msgid "Helpful Links"
|
249 |
+
msgstr "Enllaços d'interès"
|
250 |
+
|
251 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:99
|
252 |
+
msgid "Display Options"
|
253 |
+
msgstr "Opcions de visualització"
|
254 |
+
|
255 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:217
|
256 |
+
msgid "Feed ID"
|
257 |
+
msgstr "ID del calendari"
|
258 |
+
|
259 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:218
|
260 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:73
|
261 |
+
msgid "Feed Shortcode"
|
262 |
+
msgstr "Codi curt"
|
263 |
+
|
264 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:219
|
265 |
+
msgid "Display Type"
|
266 |
+
msgstr "Tipus de visualització"
|
267 |
+
|
268 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:246
|
269 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:152
|
270 |
+
#: google-calendar-events/views/widgets.php:218
|
271 |
+
msgid "Grid"
|
272 |
+
msgstr "Graella"
|
273 |
+
|
274 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:248
|
275 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:153
|
276 |
+
#: google-calendar-events/views/widgets.php:219
|
277 |
+
msgid "List"
|
278 |
+
msgstr "Llista"
|
279 |
+
|
280 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:250
|
281 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:154
|
282 |
+
#: google-calendar-events/views/widgets.php:220
|
283 |
+
msgid "Grouped List"
|
284 |
+
msgstr "Llista agrupada"
|
285 |
+
|
286 |
+
#: google-calendar-events/includes/misc-functions.php:21
|
287 |
+
msgid "Loading..."
|
288 |
+
msgstr "S'està carregant..."
|
289 |
+
|
290 |
+
#: google-calendar-events/includes/register-settings.php:29
|
291 |
+
msgid "Google API Key"
|
292 |
+
msgstr "Clau de l'API de Google"
|
293 |
+
|
294 |
+
#: google-calendar-events/includes/register-settings.php:30
|
295 |
+
msgid "If left blank all displayed Google calendars will use a public Google API key shared across all plugin users."
|
296 |
+
msgstr "Si es deixa buit, els calendaris utilitzaran una clau pública compartida amb tots els usuaris d'aquesta extensió."
|
297 |
+
|
298 |
+
#: google-calendar-events/includes/register-settings.php:31
|
299 |
+
msgid "Currently the shared key is limited to 500,000 requests per day and 5 requests per second."
|
300 |
+
msgstr "La clau compartida està limitada a 500.000 peticions diàries i a 5 peticions per segon."
|
301 |
+
|
302 |
+
#: google-calendar-events/includes/register-settings.php:32
|
303 |
+
#, php-format
|
304 |
+
msgid "To avoid these limits <a href=\"%s\" target=\"_blank\">click here for instructions on how to generate and use your own Google API key.</a>"
|
305 |
+
msgstr "Per evitar aquests límits podeu generar una clau pròpia. Trobareu instruccions sobre com fer-ho <a href=\"%s\" target=\"_blank\">en aquesta pàgina</a>."
|
306 |
+
|
307 |
+
#: google-calendar-events/includes/register-settings.php:39
|
308 |
+
msgid "Save Settings"
|
309 |
+
msgstr "Paràmetres de desament"
|
310 |
+
|
311 |
+
#: google-calendar-events/includes/register-settings.php:40
|
312 |
+
msgid "Save your settings when uninstalling this plugin. Useful when upgrading or re-installing."
|
313 |
+
msgstr "Manté els paràmetres a la base de dades quan es desinstal·li aquesta extensió. Això és útil en actualitzar i en tornar a instal·lar."
|
314 |
+
|
315 |
+
#: google-calendar-events/includes/register-settings.php:169
|
316 |
+
#, php-format
|
317 |
+
msgid "The callback function used for the <strong>%s</strong> setting is missing."
|
318 |
+
msgstr "No es pot trobar la funció de retorn utilitzada pel paràmetre <strong>%s</strong>."
|
319 |
+
|
320 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:27
|
321 |
+
msgid "GCal Events Important Update (Nov. 19, 2014):"
|
322 |
+
msgstr "Actualització important dels calendaris del Google (19-11-2014)"
|
323 |
+
|
324 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:28
|
325 |
+
msgid "GCal Events now uses the Google API version 3, which requires use of a public key."
|
326 |
+
msgstr "Aquesta extensió utilitza la versió 3 de l'API de Google, la qual requereix una clau pública."
|
327 |
+
|
328 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:29
|
329 |
+
msgid "By default a shared key is used across all plugin users, which is limited to 500,000 requests per day and 5 requests per second."
|
330 |
+
msgstr "Per defecte s'utilitza una clau compartida entre tots els usuaris de l'extensió. Aquesta clau està limitada a 500.000 peticions per dia i a 5 peticions per segon."
|
331 |
+
|
332 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:30
|
333 |
+
msgid "To avoid these limits you can use your own Google API key."
|
334 |
+
msgstr "Per evitar aquests límits podeu generar una clau pròpia de l'API de Google"
|
335 |
+
|
336 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:33
|
337 |
+
msgid "Update your API settings now"
|
338 |
+
msgstr "Actualitza els paràmetres de l'API ara"
|
339 |
+
|
340 |
+
#: google-calendar-events/views/admin/api-settings-notice.php:34
|
341 |
+
msgid "Hide this"
|
342 |
+
msgstr "Amaga això"
|
343 |
+
|
344 |
+
#: google-calendar-events/views/admin/display-options-meta.php:39
|
345 |
+
msgid "Check this box to use the simple display options below instead of the Event Builder code on the left."
|
346 |
+
msgstr "Marqueu aquesta casella per utilitzar les opcions de visualització simple en lloc del codi del \"constructor d'esdeveniments\" que apareix a l'esquerra."
|
347 |
+
|
348 |
+
#: google-calendar-events/views/admin/display-options-meta.php:44
|
349 |
+
msgid "Start date / time display"
|
350 |
+
msgstr "Data i hora d'inici"
|
351 |
+
|
352 |
+
#: google-calendar-events/views/admin/display-options-meta.php:45
|
353 |
+
msgid "Select how to display the start date / time."
|
354 |
+
msgstr "Indiqueu com s'han de mostrar la data i l'hora d'inici."
|
355 |
+
|
356 |
+
#: google-calendar-events/views/admin/display-options-meta.php:47
|
357 |
+
#: google-calendar-events/views/admin/display-options-meta.php:61
|
358 |
+
msgid "None"
|
359 |
+
msgstr "Cap"
|
360 |
+
|
361 |
+
#: google-calendar-events/views/admin/display-options-meta.php:48
|
362 |
+
msgid "Start time"
|
363 |
+
msgstr "Hora d'inici"
|
364 |
+
|
365 |
+
#: google-calendar-events/views/admin/display-options-meta.php:49
|
366 |
+
msgid "Start date"
|
367 |
+
msgstr "Data d'inici"
|
368 |
+
|
369 |
+
#: google-calendar-events/views/admin/display-options-meta.php:50
|
370 |
+
msgid "Start time and date"
|
371 |
+
msgstr "Hora i data d'inici"
|
372 |
+
|
373 |
+
#: google-calendar-events/views/admin/display-options-meta.php:51
|
374 |
+
msgid "Start date and time"
|
375 |
+
msgstr "Data i hora d'inici"
|
376 |
+
|
377 |
+
#: google-calendar-events/views/admin/display-options-meta.php:53
|
378 |
+
msgid "Text to display before the start time."
|
379 |
+
msgstr "Text a mostrar abans de l'hora d'inici."
|
380 |
+
|
381 |
+
#: google-calendar-events/views/admin/display-options-meta.php:58
|
382 |
+
msgid "End time/date display"
|
383 |
+
msgstr "Data i hora de finalització"
|
384 |
+
|
385 |
+
#: google-calendar-events/views/admin/display-options-meta.php:59
|
386 |
+
msgid "Select how to display the end date / time."
|
387 |
+
msgstr "Seleccioneu com s'ha de mostrar la data / hora de finalització."
|
388 |
+
|
389 |
+
#: google-calendar-events/views/admin/display-options-meta.php:62
|
390 |
+
msgid "End time"
|
391 |
+
msgstr "Hora de finalització"
|
392 |
+
|
393 |
+
#: google-calendar-events/views/admin/display-options-meta.php:63
|
394 |
+
msgid "End date"
|
395 |
+
msgstr "Data de finalització"
|
396 |
+
|
397 |
+
#: google-calendar-events/views/admin/display-options-meta.php:64
|
398 |
+
msgid "End time and date"
|
399 |
+
msgstr "Hora i data de finalització"
|
400 |
+
|
401 |
+
#: google-calendar-events/views/admin/display-options-meta.php:65
|
402 |
+
msgid "End date and time"
|
403 |
+
msgstr "Data i hora de finalització"
|
404 |
+
|
405 |
+
#: google-calendar-events/views/admin/display-options-meta.php:67
|
406 |
+
msgid "Text to display before the end time."
|
407 |
+
msgstr "Text a mostrar abans de la data de finalització"
|
408 |
+
|
409 |
+
#: google-calendar-events/views/admin/display-options-meta.php:72
|
410 |
+
msgid "Separator"
|
411 |
+
msgstr "Separador"
|
412 |
+
|
413 |
+
#: google-calendar-events/views/admin/display-options-meta.php:74
|
414 |
+
msgid "If you have chosen to display both the time and date above, enter the text / characters to display between the time and date here (including any spaces)."
|
415 |
+
msgstr "Si heu triat mostrar tant l'hora com la data, introduïu aquí el text o els caràcters que han d'aparèixer entre l'hora i la data (incloent espais)."
|
416 |
+
|
417 |
+
#: google-calendar-events/views/admin/display-options-meta.php:80
|
418 |
+
msgid "Location"
|
419 |
+
msgstr "Ubicació"
|
420 |
+
|
421 |
+
#: google-calendar-events/views/admin/display-options-meta.php:82
|
422 |
+
msgid "Show the location of events?"
|
423 |
+
msgstr "Mostra la ubicació dels esdeveniments?"
|
424 |
+
|
425 |
+
#: google-calendar-events/views/admin/display-options-meta.php:83
|
426 |
+
msgid "Text to display before the location."
|
427 |
+
msgstr "Text a mostrar abans de la ubicació."
|
428 |
+
|
429 |
+
#: google-calendar-events/views/admin/display-options-meta.php:88
|
430 |
+
msgid "Description"
|
431 |
+
msgstr "Descripció"
|
432 |
+
|
433 |
+
#: google-calendar-events/views/admin/display-options-meta.php:91
|
434 |
+
msgid "Show the description of events? (URLs in the description will be made into links)."
|
435 |
+
msgstr "Mostra la descripció dels esdeveniments (Els URL de la descripció es convertiran en enllaços)."
|
436 |
+
|
437 |
+
#: google-calendar-events/views/admin/display-options-meta.php:93
|
438 |
+
msgid "Text to display before the description."
|
439 |
+
msgstr "Text a mostrar abans de la descripció"
|
440 |
+
|
441 |
+
#: google-calendar-events/views/admin/display-options-meta.php:95
|
442 |
+
msgid "Maximum number of words to show from description. Leave blank for no limit."
|
443 |
+
msgstr "Nombre màxim de paraules a mostrar de la descripció. Deixeu l'espai en blanc si no voleu posar cap límit."
|
444 |
+
|
445 |
+
#: google-calendar-events/views/admin/display-options-meta.php:100
|
446 |
+
msgid "Event Link"
|
447 |
+
msgstr "Enllaç de l'esdeveniment"
|
448 |
+
|
449 |
+
#: google-calendar-events/views/admin/display-options-meta.php:103
|
450 |
+
msgid "Show a link to the Google Calendar page for an event?"
|
451 |
+
msgstr "Mostra un enllaç a la pàgina del Google Calendar per a un esdeveniment"
|
452 |
+
|
453 |
+
#: google-calendar-events/views/admin/display-options-meta.php:107
|
454 |
+
msgid "Links open in a new window / tab?"
|
455 |
+
msgstr "Obre els enllaços en una finestra o pestanya noves"
|
456 |
+
|
457 |
+
#: google-calendar-events/views/admin/display-options-meta.php:109
|
458 |
+
msgid "The link text to be displayed."
|
459 |
+
msgstr "El text de l'enllaç que voleu mostrar."
|
460 |
+
|
461 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:54
|
462 |
+
msgid "We're <strong>smack dab</strong> in the middle of building additional features for this plugin. Have ideas?"
|
463 |
+
msgstr "Estem preparant noves funcionalitats per a aquesta extensió. Voleu fer-hi alguna aportació?"
|
464 |
+
|
465 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:57
|
466 |
+
msgid "Visit our roadmap and tell us what you're looking for"
|
467 |
+
msgstr "Visiteu el nostre full de ruta i dieu-nos què esteu buscant"
|
468 |
+
|
469 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:63
|
470 |
+
msgid "Want to be in the know?"
|
471 |
+
msgstr "Voleu estar-ne informat/da?"
|
472 |
+
|
473 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:66
|
474 |
+
msgid "Get notified when new features are released"
|
475 |
+
msgstr "Avisa'm quan es publiquin funcionalitats noves"
|
476 |
+
|
477 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:77
|
478 |
+
msgid "Copy and paste this shortcode to display this Google Calendar feed on any post or page."
|
479 |
+
msgstr "Copieu i enganxeu aquest codi curt per mostrar aquest calendari del Google Calendar a qualsevol entrada o pàgina del WordPress"
|
480 |
+
|
481 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:78
|
482 |
+
msgid "To avoid display issues, make sure to paste the shortcode in the Text tab of the post editor."
|
483 |
+
msgstr "Per evitar problemes de visualització, assegureu-vos de copiar correctament el codi curt a la pestanya de text de l'editor visual."
|
484 |
+
|
485 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:83
|
486 |
+
msgid "Google Calendar ID"
|
487 |
+
msgstr "ID del calendari"
|
488 |
+
|
489 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:87
|
490 |
+
msgid "The Google Calendar ID."
|
491 |
+
msgstr "L'ID del calendari del Google Calendar"
|
492 |
+
|
493 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:87
|
494 |
+
msgid "Example"
|
495 |
+
msgstr "Exemple"
|
496 |
+
|
497 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:89
|
498 |
+
msgid "How to find your GCal calendar ID"
|
499 |
+
msgstr "Com trobar l'ID d'un calendari del Google Calendar"
|
500 |
+
|
501 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:95
|
502 |
+
msgid "Search Query"
|
503 |
+
msgstr "Consulta de cerca"
|
504 |
+
|
505 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:98
|
506 |
+
msgid "Find and show events based on a search query."
|
507 |
+
msgstr "Troba i mostra esdeveniments basats en una consulta de cerca"
|
508 |
+
|
509 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:103
|
510 |
+
msgid "Expand Recurring Events?"
|
511 |
+
msgstr "Estendre el esdeveniments recurrents?"
|
512 |
+
|
513 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:105
|
514 |
+
msgid "Yes"
|
515 |
+
msgstr "Sí"
|
516 |
+
|
517 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:106
|
518 |
+
msgid "This will show recurring events each time they occur, otherwise it will only show the event the first time it occurs."
|
519 |
+
msgstr "Això mostrarà els esdeveniments recurrents cada vegada que ocorrin, altrament només es mostrarà un esdeveniment la primera vegada que ocorri."
|
520 |
+
|
521 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:111
|
522 |
+
msgid "Date Format"
|
523 |
+
msgstr "Format de la data"
|
524 |
+
|
525 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:115
|
526 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:126
|
527 |
+
#, php-format
|
528 |
+
msgid "Use %sPHP date formatting%s."
|
529 |
+
msgstr "Utilitza el %sformat de data del PHP%s."
|
530 |
+
|
531 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:116
|
532 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:127
|
533 |
+
msgid "Leave blank to use the default."
|
534 |
+
msgstr "Deixeu-ho en blanc per utilitzar el valor per defecte."
|
535 |
+
|
536 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:122
|
537 |
+
msgid "Time Format"
|
538 |
+
msgstr "Format de l'hora"
|
539 |
+
|
540 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:133
|
541 |
+
msgid "Cache Duration"
|
542 |
+
msgstr "Durada de la memòria cau"
|
543 |
+
|
544 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:136
|
545 |
+
msgid "The length of time, in seconds, to cache the feed (43200 = 12 hours). If this feed changes regularly, you may want to reduce the cache duration."
|
546 |
+
msgstr "La durada, en segons, de l'emmagatzemament del calendari a la memòria cau (43200 = 12 hores). Si aquest flux canvia amb regularitat, és possible que vulgueu reduir la durada de la memòria cau."
|
547 |
+
|
548 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:141
|
549 |
+
msgid "Multiple Day Events"
|
550 |
+
msgstr "Esdeveniments de varis dies"
|
551 |
+
|
552 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:143
|
553 |
+
msgid "Show on each day"
|
554 |
+
msgstr "Mostra els esdeveniments d'un període cadascun dels dies?"
|
555 |
+
|
556 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:144
|
557 |
+
msgid "Show events that span multiple days on each day that they span, rather than just the first day."
|
558 |
+
msgstr "Mostra els esdeveniments que es repeteixin durant un període de temps en cadascun dels dies, en lloc de només el primer dia."
|
559 |
+
|
560 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:149
|
561 |
+
msgid "Display Mode"
|
562 |
+
msgstr "Mode de visualització"
|
563 |
+
|
564 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:156
|
565 |
+
msgid "Choose how you want your calendar to be displayed."
|
566 |
+
msgstr "Trieu com voleu que es mostri el vostre calendari"
|
567 |
+
|
568 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:161
|
569 |
+
msgid "Show Paging Links"
|
570 |
+
msgstr "Mostra el paginador"
|
571 |
+
|
572 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:163
|
573 |
+
#: google-calendar-events/views/widgets.php:227
|
574 |
+
msgid "Check this option to display Next and Back navigation links."
|
575 |
+
msgstr "Marqueu aquesta opció per mostrar els enllaços de navegació endavant i endarrere."
|
576 |
+
|
577 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:168
|
578 |
+
msgid "Number of Events per Page"
|
579 |
+
msgstr "Nombre d'esdeveniments per pàgina"
|
580 |
+
|
581 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:172
|
582 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:183
|
583 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:197
|
584 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:211
|
585 |
+
#: google-calendar-events/views/widgets.php:242
|
586 |
+
#: google-calendar-events/views/widgets.php:250
|
587 |
+
msgid "Days"
|
588 |
+
msgstr "Dies"
|
589 |
+
|
590 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:173
|
591 |
+
#: google-calendar-events/views/widgets.php:243
|
592 |
+
msgid "Events"
|
593 |
+
msgstr "Esdeveniments"
|
594 |
+
|
595 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:175
|
596 |
+
msgid "How many events to display per page (List View only)."
|
597 |
+
msgstr "Quans d'esdeveniments es mostraran a cada pàgina (només a la vista de llista)"
|
598 |
+
|
599 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:180
|
600 |
+
msgid "Display Start Date Offset"
|
601 |
+
msgstr "Mostra la desviació de la data d'inici"
|
602 |
+
|
603 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:186
|
604 |
+
#: google-calendar-events/views/widgets.php:253
|
605 |
+
msgid "Ahead"
|
606 |
+
msgstr "Endavant"
|
607 |
+
|
608 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:188
|
609 |
+
msgid "Change if you need to initially display events on a date other than today (List View only)."
|
610 |
+
msgstr "Canvieu-ho si necessiteu mostrar esdeveniments inicialment en una data que no és avui (només a la vista de llista)."
|
611 |
+
|
612 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:193
|
613 |
+
msgid "Minimum Feed Start Date"
|
614 |
+
msgstr "Data mínima d'inici dels esdeveniments"
|
615 |
+
|
616 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:198
|
617 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:212
|
618 |
+
msgid "Months"
|
619 |
+
msgstr "Mesos"
|
620 |
+
|
621 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:199
|
622 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:213
|
623 |
+
msgid "Years"
|
624 |
+
msgstr "Anys"
|
625 |
+
|
626 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:201
|
627 |
+
msgid "back"
|
628 |
+
msgstr "enrere"
|
629 |
+
|
630 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:202
|
631 |
+
msgid "Set how far back to retrieve events regardless of month or page being displayed."
|
632 |
+
msgstr "Indica com d'enrere en el temps s'han de recuperar esdeveniments, independentment del mes o pàgina que es visualitzi."
|
633 |
+
|
634 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:207
|
635 |
+
msgid "Maximum Feed End Date"
|
636 |
+
msgstr "Data màxima de finalització dels esdeveniments"
|
637 |
+
|
638 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:215
|
639 |
+
msgid "forward"
|
640 |
+
msgstr "endavant"
|
641 |
+
|
642 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:216
|
643 |
+
msgid "Set how far in the future to retrieve events regardless of month or page being displayed."
|
644 |
+
msgstr "Indica com d'endavant en el temps s'han de recuperar esdeveniments, independentment del mes o pàgina que es visualitzi."
|
645 |
+
|
646 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6
|
647 |
+
msgid "Documentation & getting started"
|
648 |
+
msgstr "Documentació i guia d'inici"
|
649 |
+
|
650 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:12
|
651 |
+
msgid "Community support forums"
|
652 |
+
msgstr "Fòrums de suport de la comunitat"
|
653 |
+
|
654 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:18
|
655 |
+
msgid "Get notified of new features"
|
656 |
+
msgstr "Notificació de noves funcionalitats"
|
657 |
+
|
658 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:24
|
659 |
+
msgid "Rate this plugin"
|
660 |
+
msgstr "Valora aquesta extensió"
|
661 |
+
|
662 |
+
#: google-calendar-events/views/widgets.php:28
|
663 |
+
msgid "Display a list or calendar grid of events from one or more Google Calendar feeds you have added"
|
664 |
+
msgstr "Mostra una llista o graella amb els esdeveniments d'un o més calendaris del Google Calendar."
|
665 |
+
|
666 |
+
#: google-calendar-events/views/widgets.php:111
|
667 |
+
msgid "No valid Feed IDs have been entered for this widget. Please check that you have entered the IDs correctly in the widget settings (Appearance > Widgets), and that the Feeds have not been deleted."
|
668 |
+
msgstr "No hi ha cap ID de calendari vàlid en aquest giny. Comproveu que s'han introduït els codis correctament en la configuració del giny (Aparença | Ginys), i que els calendaris no s'han eliminat."
|
669 |
+
|
670 |
+
#: google-calendar-events/views/widgets.php:144
|
671 |
+
msgid "You have not added any feeds yet."
|
672 |
+
msgstr "Encara no heu afegit cap calendari."
|
673 |
+
|
674 |
+
#: google-calendar-events/views/widgets.php:186
|
675 |
+
msgid "There are no feeds created yet."
|
676 |
+
msgstr "Encara no hi ha cap calendari creat."
|
677 |
+
|
678 |
+
#: google-calendar-events/views/widgets.php:187
|
679 |
+
msgid "Add your first feed!"
|
680 |
+
msgstr "Afegiu el primer calendari!"
|
681 |
+
|
682 |
+
#: google-calendar-events/views/widgets.php:197
|
683 |
+
msgid "Events on"
|
684 |
+
msgstr "Esdeveniments del"
|
685 |
+
|
686 |
+
#: google-calendar-events/views/widgets.php:206
|
687 |
+
msgid "Title:"
|
688 |
+
msgstr "Títol:"
|
689 |
+
|
690 |
+
#: google-calendar-events/views/widgets.php:211
|
691 |
+
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
|
692 |
+
msgstr "Calendaris a mostrar, en forma de llista separada per comes (per exemple: 101,102,103)."
|
693 |
+
|
694 |
+
#: google-calendar-events/views/widgets.php:216
|
695 |
+
msgid "Display Events as:"
|
696 |
+
msgstr "Mostra els esdeveniments com a:"
|
697 |
+
|
698 |
+
#: google-calendar-events/views/widgets.php:225
|
699 |
+
msgid "Show Paging Links:"
|
700 |
+
msgstr "Mostra el paginador:"
|
701 |
+
|
702 |
+
#: google-calendar-events/views/widgets.php:231
|
703 |
+
msgid "Sort Order (List View only):"
|
704 |
+
msgstr "Ordre (només a la vista de llista):"
|
705 |
+
|
706 |
+
#: google-calendar-events/views/widgets.php:233
|
707 |
+
msgid "Ascending"
|
708 |
+
msgstr "Ascendent"
|
709 |
+
|
710 |
+
#: google-calendar-events/views/widgets.php:234
|
711 |
+
msgid "Descending"
|
712 |
+
msgstr "Descendent"
|
713 |
+
|
714 |
+
#: google-calendar-events/views/widgets.php:239
|
715 |
+
msgid "Number of Events per Page (List View only):"
|
716 |
+
msgstr "Nombre d'esdeveniments per pàgina (només a la vista de llista)"
|
717 |
+
|
718 |
+
#: google-calendar-events/views/widgets.php:248
|
719 |
+
msgid "Display Start Date Offset (List View only):"
|
720 |
+
msgstr "Mostra la desviació de la data d'inici (només a la vista de llista):"
|
721 |
+
|
722 |
+
#: google-calendar-events/views/widgets.php:258
|
723 |
+
msgid "Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped lists always have a title displayed."
|
724 |
+
msgstr "Voleu que es mostri un títol personalitzat? (per exemple: 'Esdeveniments del 7 de març'). A les llistes agrupades sempre es mostra el títol."
|
725 |
+
|
726 |
+
#~ msgid ""
|
727 |
+
#~ "The feed could not be found (404). Please ensure your feed URL is correct."
|
728 |
+
#~ msgstr ""
|
729 |
+
#~ "No s'ha pogut trobar el calendari (404). Assegureu-vos que l'URL del "
|
730 |
+
#~ "calendari és correcte."
|
731 |
+
|
732 |
+
#~ msgid ""
|
733 |
+
#~ "Access to this feed was denied (403). Please ensure you have public "
|
734 |
+
#~ "sharing enabled for your calendar."
|
735 |
+
#~ msgstr ""
|
736 |
+
#~ "S'ha denegat l'accés a aquest calendari (403). Assegureu-vos que el "
|
737 |
+
#~ "vostre calendari és públic."
|
738 |
+
|
739 |
+
#~ msgid ""
|
740 |
+
#~ "The feed data could not be retrieved. Error code: %s. Please ensure your "
|
741 |
+
#~ "feed URL is correct."
|
742 |
+
#~ msgstr ""
|
743 |
+
#~ "No s'ha pogut recuperar la informació del calendari. Codi d'error: %s. "
|
744 |
+
#~ "Assegureu-vos que l'URL del calendari és correcte."
|
745 |
+
|
746 |
+
#~ msgid "GCal Feed URL"
|
747 |
+
#~ msgstr "URL del calendari"
|
748 |
+
|
749 |
+
#~ msgid ", "
|
750 |
+
#~ msgstr ","
|
751 |
+
|
752 |
+
#~ msgid "Want to know when we release something new?"
|
753 |
+
#~ msgstr "Voleu assabentar-vos de quan publiquem versions noves?"
|
754 |
+
|
755 |
+
#~ msgid "Get notified of major plugin updates"
|
756 |
+
#~ msgstr "Avisa'm quan es publiqui una versió major d'aquesta extensió"
|
757 |
+
|
758 |
+
#~ msgid "Retrieve Events From"
|
759 |
+
#~ msgstr "Recupera els esdeveniments des de"
|
760 |
+
|
761 |
+
#~ msgid "Today"
|
762 |
+
#~ msgstr "Avui"
|
763 |
+
|
764 |
+
#~ msgid "Start of current week"
|
765 |
+
#~ msgstr "Inici de la setmana actual"
|
766 |
+
|
767 |
+
#~ msgid "Start of current month"
|
768 |
+
#~ msgstr "Inici del mes actual"
|
769 |
+
|
770 |
+
#~ msgid "End of current month"
|
771 |
+
#~ msgstr "Final del mes actual"
|
772 |
+
|
773 |
+
#~ msgid "The beginning of time"
|
774 |
+
#~ msgstr "El principi dels temps"
|
775 |
+
|
776 |
+
#~ msgid "Specific date"
|
777 |
+
#~ msgstr "Data concreta"
|
778 |
+
|
779 |
+
#~ msgid "The point in time at which to start retrieving events."
|
780 |
+
#~ msgstr ""
|
781 |
+
#~ "El punt en el temps en què començarà la recuperació d'esdeveniments."
|
782 |
+
|
783 |
+
#~ msgid "Retrieve Events Until"
|
784 |
+
#~ msgstr "Recupera els esdeveniments fins a"
|
785 |
+
|
786 |
+
#~ msgid "The end of time"
|
787 |
+
#~ msgstr "El final dels temps"
|
788 |
+
|
789 |
+
#~ msgid "The point in time at which to stop retrieving events."
|
790 |
+
#~ msgstr ""
|
791 |
+
#~ "El punt en el temps en què s'aturarà la recuperació d'esdeveniments."
|
792 |
+
|
793 |
+
#~ msgid "Maximum number of events to show."
|
794 |
+
#~ msgstr "Nombre màxim d'esdeveniments a mostrar"
|
795 |
+
|
796 |
+
#~ msgid "Timezone Adjustment"
|
797 |
+
#~ msgstr "Configuració de la zona horària"
|
798 |
+
|
799 |
+
#~ msgid ""
|
800 |
+
#~ "If you are having problems with dates and times displaying in the wrong "
|
801 |
+
#~ "timezone, select a city in your required timezone here."
|
802 |
+
#~ msgstr ""
|
803 |
+
#~ "Si les dates i hores que es mostren no es corresponen amb la zona horària "
|
804 |
+
#~ "correcta, seleccioneu una ciutat de la vostra zona horària."
|
805 |
+
|
806 |
+
#~ msgid ""
|
807 |
+
#~ "This will clear your feed cache. This also automatically happens when you "
|
808 |
+
#~ "save your changes. %sIf you make changes you %sMUST%s save first or your "
|
809 |
+
#~ "changes will be lost."
|
810 |
+
#~ msgstr ""
|
811 |
+
#~ "Això buidarà la memòria cau d'aquest calendari. Això passa automàticament "
|
812 |
+
#~ "cada vegada que deseu els canvis. %sSi feu canvis %sHEU%s de desar-los en "
|
813 |
+
#~ "primer lloc o es perdran."
|
814 |
+
|
815 |
+
#~ msgid "Now Accepting 5-Star Reviews!"
|
816 |
+
#~ msgstr "S'accepten revisions de 5 estrelles!"
|
817 |
+
|
818 |
+
#~ msgid "Calendar Grid - with AJAX"
|
819 |
+
#~ msgstr "Graella de calendari - amb AJAX"
|
820 |
+
|
821 |
+
#~ msgid "Maximum no. events to display. Enter 0 to show all retrieved."
|
822 |
+
#~ msgstr ""
|
823 |
+
#~ "Nombre màxim d'esdeveniments a mostrar. Poseu 0 per a mostrar-los tots."
|
824 |
+
|
825 |
+
#~ msgid "Feed Title"
|
826 |
+
#~ msgstr "Títol de l'entrada"
|
827 |
+
|
828 |
+
#~ msgid "Select display customization method"
|
829 |
+
#~ msgstr "Tria un mètode de visualització"
|
830 |
+
|
831 |
+
#~ msgid "Event Display Builder"
|
832 |
+
#~ msgstr "Creador d'esdeveniments personalitzat"
|
833 |
+
|
834 |
+
#~ msgid "Event display builder HTML and shortcodes"
|
835 |
+
#~ msgstr "Configura la visualització d'esdeveniments personalitzada"
|
836 |
+
|
837 |
+
#~ msgid "Separator text / characters"
|
838 |
+
#~ msgstr "Separador de text / caràcters"
|
839 |
+
|
840 |
+
#~ msgid "Display location?"
|
841 |
+
#~ msgstr "Voleu mostrar la ubicació?"
|
842 |
+
|
843 |
+
#~ msgid "Display link to event?"
|
844 |
+
#~ msgstr "Voleu mostrar l'enllaç a l'esdeveniment?"
|
845 |
+
|
846 |
+
#~ msgid ""
|
847 |
+
#~ "Make any changes you require to the feed details below, then click the "
|
848 |
+
#~ "Save Changes button."
|
849 |
+
#~ msgstr ""
|
850 |
+
#~ "Feu els canvis necessaris als detalls de l'entrada i després feu clic al "
|
851 |
+
#~ "botó Desa els canvis."
|
852 |
+
|
853 |
+
#~ msgid "Anything you like. 'Upcoming Club Events', for example."
|
854 |
+
#~ msgstr "El que vulgueu. Per exemple: 'Esdeveniments propers del centre'."
|
855 |
+
|
856 |
+
#~ msgid ""
|
857 |
+
#~ "This will probably be something like: <code>http://www.google.com/"
|
858 |
+
#~ "calendar/feeds/your-email@gmail.com/public/full</code>."
|
859 |
+
#~ msgstr ""
|
860 |
+
#~ "Això probablement serà semblant a: <code>http://www.google.com/calendar/"
|
861 |
+
#~ "feeds/your-email@gmail.com/public/full</code>."
|
862 |
+
|
863 |
+
#~ msgid ""
|
864 |
+
#~ "or: <code>http://www.google.com/calendar/feeds/your-email@gmail.com/"
|
865 |
+
#~ "private-d65741b037h695ff274247f90746b2ty/basic</code>."
|
866 |
+
#~ msgstr ""
|
867 |
+
#~ "o: <code>http://www.google.com/calendar/feeds/your-email@gmail.com/"
|
868 |
+
#~ "private-d65741b037h695ff274247f90746b2ty/basic</code>."
|
869 |
+
|
870 |
+
#~ msgid ""
|
871 |
+
#~ "The point in time at which to start retrieving events. Use the text-box "
|
872 |
+
#~ "to specify an additional offset from you chosen start point. The offset "
|
873 |
+
#~ "should be provided in seconds (3600 = 1 hour, 86400 = 1 day) and can be "
|
874 |
+
#~ "negative. If you have selected the 'Specific date / time' option, enter a "
|
875 |
+
#~ "<a href=\"http://www.timestampgenerator.com\" target=\"_blank\">UNIX "
|
876 |
+
#~ "timestamp</a> in the text-box."
|
877 |
+
#~ msgstr ""
|
878 |
+
#~ "El punt en el temps en què es començaran a recuperar els esdeveniments. "
|
879 |
+
#~ "Feu servir la caixa de text per especificar un desplaçament addicional al "
|
880 |
+
#~ "punt triat inicialment. Aquest desplaçament s'ha de proporcionar en "
|
881 |
+
#~ "segons (3600 = 1 hora, 86400 = 1 dia) i pot ser negatiu. Si heu "
|
882 |
+
#~ "seleccionat l'opció 'Data / hora específics' poseu una <a href=\"http://"
|
883 |
+
#~ "www.timestampgenerator.com\" target=\"_blank\">marca de temps de UNIX</a> "
|
884 |
+
#~ "a la caixa de text."
|
885 |
+
|
886 |
+
#~ msgid ""
|
887 |
+
#~ "Set this to a few more than you actually want to display (due to caching "
|
888 |
+
#~ "and timezone issues). The exact number to display can be configured per "
|
889 |
+
#~ "shortcode / widget."
|
890 |
+
#~ msgstr ""
|
891 |
+
#~ "Definiu aquí una mica més del que realment voleu mostrar (per evitar "
|
892 |
+
#~ "problemes d'emmagatzematge en la memòria cau i la zona horària). El "
|
893 |
+
#~ "nombre exacte a mostrar es pot configurar per codi curt / ginys."
|
894 |
+
|
895 |
+
#~ msgid ""
|
896 |
+
#~ "In <a href=\"http://php.net/manual/en/function.date.php\" target=\"_blank"
|
897 |
+
#~ "\">PHP date format</a>. Leave this blank if you'd rather stick with the "
|
898 |
+
#~ "default format for your blog."
|
899 |
+
#~ msgstr ""
|
900 |
+
#~ "En <a href=\"http://php.net/manual/en/function.date.php\" target=\"_blank"
|
901 |
+
#~ "\">format de data en PHP</a>. Deixeu l'espai en blanc si voleu fer servir "
|
902 |
+
#~ "el format predeterminat."
|
903 |
+
|
904 |
+
#~ msgid ""
|
905 |
+
#~ "In <a href=\"http://php.net/manual/en/function.date.php\" target=\"_blank"
|
906 |
+
#~ "\">PHP date format</a>. Again, leave this blank to stick with the default."
|
907 |
+
#~ msgstr ""
|
908 |
+
#~ "En <a href=\"http://php.net/manual/en/function.date.php\" target=\"_blank"
|
909 |
+
#~ "\">format de data en PHP</a>. De nou, deixeu l'espai en blanc per fer "
|
910 |
+
#~ "servir el format predeterminat."
|
911 |
+
|
912 |
+
#~ msgid ""
|
913 |
+
#~ "These settings control what information will be displayed for this feed "
|
914 |
+
#~ "in the tooltip (for grids), or in a list."
|
915 |
+
#~ msgstr ""
|
916 |
+
#~ "Aquests ajustaments controlen quina informació es mostra per a aquesta "
|
917 |
+
#~ "entrada en el títol (per graelles), o en una llista."
|
918 |
+
|
919 |
+
#~ msgid ""
|
920 |
+
#~ "It is recommended that you use the event display builder option, as it "
|
921 |
+
#~ "provides much more flexibility than the simple display options. The event "
|
922 |
+
#~ "display builder can do everything the simple display options can, plus "
|
923 |
+
#~ "lots more!"
|
924 |
+
#~ msgstr ""
|
925 |
+
#~ "Es recomana que utilitzeu el creador d'esdeveniments personalitzat, ja "
|
926 |
+
#~ "que proporciona molta més flexibilitat que les opcions de visualització "
|
927 |
+
#~ "per defecte. La visualiitzacó personalitzada pot fer tot el que les "
|
928 |
+
#~ "opcions de visualització per defecte, a més de moltes més!"
|
929 |
+
|
930 |
+
#~ msgid "Event display builder"
|
931 |
+
#~ msgstr "Creador d'esdeveniments personalitzat"
|
932 |
+
|
933 |
+
#~ msgid "Simple display options"
|
934 |
+
#~ msgstr "Visualització d'esdeveniments per defecte"
|
935 |
+
|
936 |
+
#~ msgid ""
|
937 |
+
#~ "Use the event display builder to customize how event information will be "
|
938 |
+
#~ "displayed in the grid tooltips and in lists. Use HTML and the shortcodes "
|
939 |
+
#~ "(explained below) to display the information you require. A basic example "
|
940 |
+
#~ "display format is provided as a starting point. For more information, "
|
941 |
+
#~ "take a look at the <a href=\"http://www.rhanney.co.uk/plugins/google-"
|
942 |
+
#~ "calendar-events/event-display-builder\" target=\"_blank\">event display "
|
943 |
+
#~ "builder guide</a>."
|
944 |
+
#~ msgstr ""
|
945 |
+
#~ "Utilitzeu el creador d'esdeveniments personalitzat per definir quina "
|
946 |
+
#~ "informació es mostrarà als títols de la graella i a les llistes. "
|
947 |
+
#~ "Utilitzeu HTML i codis curts (que s'explica més endavant) per mostrar la "
|
948 |
+
#~ "informació necessària. Com a punt de partida, es proporciona un format "
|
949 |
+
#~ "bàsic a mode d'exemple. Per obtenir més informació, feu un cop d'ull a la "
|
950 |
+
#~ "<a href=\"http://www.rhanney.co.uk/plugins/google-calendar-events/event-"
|
951 |
+
#~ "display-builder\" target=\"_blank\">guia d'ús de creació d'esdeveniments "
|
952 |
+
#~ "personalitzats</a>."
|
953 |
+
|
954 |
+
#~ msgid ""
|
955 |
+
#~ "(More information on all of the below shortcodes and attributes, and "
|
956 |
+
#~ "working examples, can be found in the <a href=\"http://www.rhanney.co.uk/"
|
957 |
+
#~ "plugins/google-calendar-events/event-display-builder\" target=\"_blank"
|
958 |
+
#~ "\">event display builder guide</a>)"
|
959 |
+
#~ msgstr ""
|
960 |
+
#~ "(Podeu trobar més informació sobre tots els codis curts i atributs de "
|
961 |
+
#~ "baix, així com exemples de treball a la <a href=\"http://www.rhanney.co."
|
962 |
+
#~ "uk/plugins/google-calendar-events/event-display-builder\" target=\"_blank"
|
963 |
+
#~ "\">guia d'ús de creació d'esdeveniments personalitzats</a>)"
|
964 |
+
|
965 |
+
#~ msgid "Event information shortcodes:"
|
966 |
+
#~ msgstr "Informació sobre els esdeveniments i codis curts:"
|
967 |
+
|
968 |
+
#~ msgid ""
|
969 |
+
#~ "The event title (possible attributes: <code>html</code>, <code>markdown</"
|
970 |
+
#~ "code>)"
|
971 |
+
#~ msgstr ""
|
972 |
+
#~ "El títol de l'esdeveniment (atributs possibles: <code>html</code>, "
|
973 |
+
#~ "<code>markdown</code>)"
|
974 |
+
|
975 |
+
#~ msgid ""
|
976 |
+
#~ "The event start time. Will use the time format specified in the above "
|
977 |
+
#~ "settings"
|
978 |
+
#~ msgstr ""
|
979 |
+
#~ "L'hora en què comença l'esdeveniment. S'utilitzarà el format especificat "
|
980 |
+
#~ "en els paràmetres anteriors"
|
981 |
+
|
982 |
+
#~ msgid ""
|
983 |
+
#~ "The event start date. Will use the date format specified in the above "
|
984 |
+
#~ "settings"
|
985 |
+
#~ msgstr ""
|
986 |
+
#~ "La data en què comença l'esdeveniment. S'utilitzarà el format especificat "
|
987 |
+
#~ "en els paràmetres anteriors"
|
988 |
+
|
989 |
+
#~ msgid ""
|
990 |
+
#~ "The event start date / time. Will use the format specified in the "
|
991 |
+
#~ "<code>format</code> attribute (possible attributes: <code>format</code>)"
|
992 |
+
#~ msgstr ""
|
993 |
+
#~ "L'hora i la data en què comença l'esdeveniment. S'utilitzarà el format "
|
994 |
+
#~ "especificat a l'atribut <code>format</code> (atributs possibles: "
|
995 |
+
#~ "<code>format</code>)"
|
996 |
+
|
997 |
+
#~ msgid ""
|
998 |
+
#~ "The difference between the start time of the event and the time now, in "
|
999 |
+
#~ "human-readable format, such as '1 hour', '4 days', '15 mins' (possible "
|
1000 |
+
#~ "attributes: <code>precision</code>)"
|
1001 |
+
#~ msgstr ""
|
1002 |
+
#~ "La diferència entre l'hora d'inici de l'esdeveniment i l'hora actual, en "
|
1003 |
+
#~ "un format llegible per les persones, com ara '1 hora', '4 dies', '15 "
|
1004 |
+
#~ "minuts' (atributs possibles: <code>precision</code>)"
|
1005 |
+
|
1006 |
+
#~ msgid ""
|
1007 |
+
#~ "The event end time. Will use the time format specified in the above "
|
1008 |
+
#~ "settings"
|
1009 |
+
#~ msgstr ""
|
1010 |
+
#~ "L'hora en què finalitza l'esdeveniment. S'utilitzarà el format "
|
1011 |
+
#~ "especificat en els paràmetres anteriors"
|
1012 |
+
|
1013 |
+
#~ msgid ""
|
1014 |
+
#~ "The event end date. Will use the date format specified in the above "
|
1015 |
+
#~ "settings"
|
1016 |
+
#~ msgstr ""
|
1017 |
+
#~ "La data en què acaba l'esdeveniment. S'utilitzarà el format especificat "
|
1018 |
+
#~ "en els paràmetres anteriors"
|
1019 |
+
|
1020 |
+
#~ msgid ""
|
1021 |
+
#~ "The event end date / time. Will use the format specified in the "
|
1022 |
+
#~ "<code>format</code> attribute (possible attributes: <code>format</code>)"
|
1023 |
+
#~ msgstr ""
|
1024 |
+
#~ "L'hora i la data en què acaba l'esdeveniment. S'utilitzarà el format "
|
1025 |
+
#~ "especificat a l'atribut <code>format</code> (atributs possibles: "
|
1026 |
+
#~ "<code>format</code>)"
|
1027 |
+
|
1028 |
+
#~ msgid ""
|
1029 |
+
#~ "The difference between the end time of the event and the time now, in "
|
1030 |
+
#~ "human-readable format (possible attributes: <code>precision</code>)"
|
1031 |
+
#~ msgstr ""
|
1032 |
+
#~ "La diferència entre l'hora de finalització de l'esdeveniment i l'hora "
|
1033 |
+
#~ "actual, en un format llegible per les persones, com ara '1 hora', '4 "
|
1034 |
+
#~ "dies', '15 minuts' (atributs possibles: <code>precision</code>)"
|
1035 |
+
|
1036 |
+
#~ msgid ""
|
1037 |
+
#~ "The event location (possible attributes: <code>html</code>, "
|
1038 |
+
#~ "<code>markdown</code>)"
|
1039 |
+
#~ msgstr ""
|
1040 |
+
#~ "La ubicació de l'esdeveniment (atributs possibles: <code>html</code>, "
|
1041 |
+
#~ "<code>markdown</code>)"
|
1042 |
+
|
1043 |
+
#~ msgid ""
|
1044 |
+
#~ "Anything between the opening and closing shortcode tags (inlcuding "
|
1045 |
+
#~ "further shortcodes) will be linked to Google Maps, using the event "
|
1046 |
+
#~ "location as a search parameter (possible attributes: <code>newwindow</"
|
1047 |
+
#~ "code>)"
|
1048 |
+
#~ msgstr ""
|
1049 |
+
#~ "Qualsevol cosa entre les etiquetes d'obertura i tancament (incloses les "
|
1050 |
+
#~ "etiquetes futures) s'enllaçaran al Google Maps mitjançant la ubicació de "
|
1051 |
+
#~ "l'esdeveniment, que s'utilitzarà com a paràmetre de cerca (atributs "
|
1052 |
+
#~ "possibles: <code>newwindow</code>)"
|
1053 |
+
|
1054 |
+
#~ msgid ""
|
1055 |
+
#~ "The event description (possible attributes: <code>html</code>, "
|
1056 |
+
#~ "<code>markdown</code>, <code>limit</code>)"
|
1057 |
+
#~ msgstr ""
|
1058 |
+
#~ "La descripció de l'esdeveniment (atributs possibles: <code>html</code>, "
|
1059 |
+
#~ "<code>markdown</code>, <code>limit</code>)"
|
1060 |
+
|
1061 |
+
#~ msgid ""
|
1062 |
+
#~ "Anything between the opening and closing shortcode tags (inlcuding "
|
1063 |
+
#~ "further shortcodes) will be linked to the Google Calendar page for the "
|
1064 |
+
#~ "event (possible attributes: <code>newwindow</code>)"
|
1065 |
+
#~ msgstr ""
|
1066 |
+
#~ "Qualsevol cosa entre les etiquetes d'obertura i tancament (incloses les "
|
1067 |
+
#~ "etiquetes futures) s'enllaçaran a la pàgina de l'esdeveniment al Google "
|
1068 |
+
#~ "Calendar (atributs possibles: <code>newwindow</code>)"
|
1069 |
+
|
1070 |
+
#~ msgid "The raw URL to the Google Calendar page for the event"
|
1071 |
+
#~ msgstr ""
|
1072 |
+
#~ "L'URL sense formatar a la pàgina de l'esdeveniment al Google Calendar"
|
1073 |
+
|
1074 |
+
#~ msgid ""
|
1075 |
+
#~ "The length of the event, in human-readable format (possible attributes: "
|
1076 |
+
#~ "<code>precision</code>)"
|
1077 |
+
#~ msgstr ""
|
1078 |
+
#~ "La durada de l'esdeveniment en un format llegible per les persones "
|
1079 |
+
#~ "(atributs possibles: <code>precision</code>)"
|
1080 |
+
|
1081 |
+
#~ msgid ""
|
1082 |
+
#~ "The position of the event in the current list, or the position of the "
|
1083 |
+
#~ "event in the current month (for grids)"
|
1084 |
+
#~ msgstr ""
|
1085 |
+
#~ "La posició de l'esdeveniment a la llista actual o la posició de "
|
1086 |
+
#~ "l'esdeveniment en el mes actual (per a les graelles)"
|
1087 |
+
|
1088 |
+
#~ msgid "The event UID (a unique identifier assigned to the event by Google)"
|
1089 |
+
#~ msgstr ""
|
1090 |
+
#~ "L'UID de l'esdeveniment (un identificador únic assignat a l'esdeveniment "
|
1091 |
+
#~ "pel Google)"
|
1092 |
+
|
1093 |
+
#~ msgid "The title of the feed from which the event comes"
|
1094 |
+
#~ msgstr "El títol de l'entrada d'on prové l'esdeveniment"
|
1095 |
+
|
1096 |
+
#~ msgid "The ID of the feed from which the event comes"
|
1097 |
+
#~ msgstr "L'ID de l'entrada d'on prové l'esdeveniment"
|
1098 |
+
|
1099 |
+
#~ msgid ""
|
1100 |
+
#~ "The calendar ID (a unique identifier assigned to the calendar by Google)"
|
1101 |
+
#~ msgstr ""
|
1102 |
+
#~ "L'ID del calendari (un identificador únic assignat al calendari pel "
|
1103 |
+
#~ "Google)"
|
1104 |
+
|
1105 |
+
#~ msgid "Conditional shortcodes:"
|
1106 |
+
#~ msgstr "Codis curts condicionals:"
|
1107 |
+
|
1108 |
+
#~ msgid ""
|
1109 |
+
#~ "Anything entered between the opening and closing tags of each of the "
|
1110 |
+
#~ "following shortcodes will only be displayed if its condition (below) is "
|
1111 |
+
#~ "met."
|
1112 |
+
#~ msgstr ""
|
1113 |
+
#~ "Qualsevol cosa introduïda entre l'obertura i el tancament d'etiquetes de "
|
1114 |
+
#~ "cadascun dels codis curts següents, només es mostrarà si es compleix la "
|
1115 |
+
#~ "condició de sota."
|
1116 |
+
|
1117 |
+
#~ msgid "The event is an all-day event"
|
1118 |
+
#~ msgstr "L'esdeveniment dura tot el dia"
|
1119 |
+
|
1120 |
+
#~ msgid "The event is not an all-day event"
|
1121 |
+
#~ msgstr "L'esdeveniment no dura tot el dia"
|
1122 |
+
|
1123 |
+
#~ msgid "The event has a title"
|
1124 |
+
#~ msgstr "L'esdeveniment té títol"
|
1125 |
+
|
1126 |
+
#~ msgid "The event has a description"
|
1127 |
+
#~ msgstr "L'esdeveniment té descripció"
|
1128 |
+
|
1129 |
+
#~ msgid "The event has a location"
|
1130 |
+
#~ msgstr "L'esdeveniment té ubicació"
|
1131 |
+
|
1132 |
+
#~ msgid "The event is to be displayed in a tooltip (not a list)"
|
1133 |
+
#~ msgstr ""
|
1134 |
+
#~ "L'esdeveniment s'ha de mostrar en un text emergent (no en una llista)"
|
1135 |
+
|
1136 |
+
#~ msgid "The event is to be displayed in a list (not a tooltip)"
|
1137 |
+
#~ msgstr ""
|
1138 |
+
#~ "L'esdeveniment s'ha de mostrar en una llista (no en un text emergent)"
|
1139 |
+
|
1140 |
+
#~ msgid ""
|
1141 |
+
#~ "The event is taking place now (after the start time, but before the end "
|
1142 |
+
#~ "time)"
|
1143 |
+
#~ msgstr ""
|
1144 |
+
#~ "L'esdeveniment està tenint lloc en aquests moments (després de l'hora "
|
1145 |
+
#~ "d'inici, però abans de l'hora de finalització)"
|
1146 |
+
|
1147 |
+
#~ msgid ""
|
1148 |
+
#~ "The event is not taking place now (may have ended or not yet started)"
|
1149 |
+
#~ msgstr ""
|
1150 |
+
#~ "L'esdeveniment no està tenint lloc en aquests moments (pot haver acabat o "
|
1151 |
+
#~ "no haver començat)"
|
1152 |
+
|
1153 |
+
#~ msgid "The event has started (even if it has also ended)"
|
1154 |
+
#~ msgstr "L'esdeveniment ha començat (pot haver acabat)"
|
1155 |
+
|
1156 |
+
#~ msgid "The event has not started"
|
1157 |
+
#~ msgstr "L'esdeveniment no ha començat"
|
1158 |
+
|
1159 |
+
#~ msgid "The event has ended"
|
1160 |
+
#~ msgstr "L'esdeveniment ha acabat"
|
1161 |
+
|
1162 |
+
#~ msgid "The event has not ended (even if it hasn't started)"
|
1163 |
+
#~ msgstr "L'esdeveniment no ha acabat (pot no haver començat)"
|
1164 |
+
|
1165 |
+
#~ msgid "The event is the first of the day"
|
1166 |
+
#~ msgstr "L'esdeveniment és el primer del dia"
|
1167 |
+
|
1168 |
+
#~ msgid "The event is not the first of the day"
|
1169 |
+
#~ msgstr "L'esdeveniment no és el primer del dia"
|
1170 |
+
|
1171 |
+
#~ msgid "The event spans multiple days"
|
1172 |
+
#~ msgstr "L'esdeveniment dura més d'un dia"
|
1173 |
+
|
1174 |
+
#~ msgid "The event does not span multiple days"
|
1175 |
+
#~ msgstr "L'esdeveniment comença i acaba el mateix dia"
|
1176 |
+
|
1177 |
+
#~ msgid "Attributes:"
|
1178 |
+
#~ msgstr "Atributs:"
|
1179 |
+
|
1180 |
+
#~ msgid "The possible attributes mentioned above are explained here:"
|
1181 |
+
#~ msgstr "Els possibles atributs abans esmentats s'expliquen aquí:"
|
1182 |
+
|
1183 |
+
#~ msgid ""
|
1184 |
+
#~ "Whether or not to parse HTML that has been entered in the relevant field. "
|
1185 |
+
#~ "Can be <code>true</code> or <code>false</code>"
|
1186 |
+
#~ msgstr ""
|
1187 |
+
#~ "Si s'ha de parsejar o no el codi HTML que s'ha introduït en el camp. Pot "
|
1188 |
+
#~ "ser <code>true</code> o <code>false</code>"
|
1189 |
+
|
1190 |
+
#~ msgid ""
|
1191 |
+
#~ "Whether or not to parse <a href=\"http://daringfireball.net/projects/"
|
1192 |
+
#~ "markdown\" target=\"_blank\">Markdown</a> that has been entered in the "
|
1193 |
+
#~ "relevant field. <a href=\"http://michelf.com/projects/php-markdown\" "
|
1194 |
+
#~ "target=\"_blank\">PHP Markdown</a> must be installed for this to work. "
|
1195 |
+
#~ "Can be <code>true</code> or <code>false</code>"
|
1196 |
+
#~ msgstr ""
|
1197 |
+
#~ "Si s'ha de parsejar o no el text del camp amb el <a href=\"http://"
|
1198 |
+
#~ "daringfireball.net/projects/markdown\" target=\"_blank\">Markdown</a>. "
|
1199 |
+
#~ "Cal haver instal·lat el <a href=\"http://michelf.com/projects/php-markdown"
|
1200 |
+
#~ "\" target=\"_blank\">PHP Markdown</a> per a que això funcioni. Pot ser "
|
1201 |
+
#~ "<code>true</code> o <code>false</code>"
|
1202 |
+
|
1203 |
+
#~ msgid ""
|
1204 |
+
#~ "The word limit for the field. Should be specified as a positive integer"
|
1205 |
+
#~ msgstr "El nombre de paraules màxim pel camp. Ha de ser un número natural"
|
1206 |
+
|
1207 |
+
#~ msgid ""
|
1208 |
+
#~ "The date / time format to use. Should specified as a <a href=\"http://php."
|
1209 |
+
#~ "net/manual/en/function.date.php\" target=\"_blank\">PHP date format</a> "
|
1210 |
+
#~ "string"
|
1211 |
+
#~ msgstr ""
|
1212 |
+
#~ "El format de data i hora que s'ha d'utilitzar. S'ha d'especificar amb una "
|
1213 |
+
#~ "cadena de <a href=\"http://php.net/manual/en/function.date.php\" target="
|
1214 |
+
#~ "\"_blank\">format de data PHP</a>"
|
1215 |
+
|
1216 |
+
#~ msgid ""
|
1217 |
+
#~ "Whether or not the link should open in a new window / tab. Can be "
|
1218 |
+
#~ "<code>true</code> or <code>false</code>"
|
1219 |
+
#~ msgstr ""
|
1220 |
+
#~ "Si l'enllaç s'ha d'obrir en una finestra o pestanya noves. Pot ser "
|
1221 |
+
#~ "<code>true</code> o <code>false</code>"
|
1222 |
+
|
1223 |
+
#~ msgid ""
|
1224 |
+
#~ "How precise to be when displaying a time difference in human-readable "
|
1225 |
+
#~ "format. Should be specified as a positive integer"
|
1226 |
+
#~ msgstr ""
|
1227 |
+
#~ "Com de precís s'ha de ser en mostrar la diferència de temps en un format "
|
1228 |
+
#~ "llegible per les persones. S'ha d'especificar un número natural"
|
1229 |
+
|
1230 |
+
#~ msgid ""
|
1231 |
+
#~ "An offset (in seconds) to apply to start / end times before display. "
|
1232 |
+
#~ "Should be specified as a (positive or negative) integer"
|
1233 |
+
#~ msgstr ""
|
1234 |
+
#~ "Un desplaçament (en segons) per aplicar a les hores d'inici / final abans "
|
1235 |
+
#~ "de la visualització. S'ha d'especificar com un nombre sencer (positiu o "
|
1236 |
+
#~ "negatiu)"
|
1237 |
+
|
1238 |
+
#~ msgid ""
|
1239 |
+
#~ "Whether or not to automatically convert URLs in the description to links. "
|
1240 |
+
#~ "Can be <code>true</code> or <code>false</code>"
|
1241 |
+
#~ msgstr ""
|
1242 |
+
#~ "Si s'han de convertir automàticament en enllaços els URL que apareguin a "
|
1243 |
+
#~ "les descripcions. Pot ser <code>true</code> o <code>false</code>"
|
1244 |
+
|
1245 |
+
#~ msgid ""
|
1246 |
+
#~ "You can use some HTML in the text fields, but ensure it is valid or "
|
1247 |
+
#~ "things might go wonky. Text fields can be empty too."
|
1248 |
+
#~ msgstr ""
|
1249 |
+
#~ "Podeu fer servir HTML als camps de text, però assegureu-vos que és un "
|
1250 |
+
#~ "HMTL vàlid on algunes coses poden funcionar malament. Els camps de text "
|
1251 |
+
#~ "també poden estar buits."
|
1252 |
+
|
1253 |
+
#~ msgid "Don't display start time or date"
|
1254 |
+
#~ msgstr "No mostris la data o hora d'inici"
|
1255 |
+
|
1256 |
+
#~ msgid "Display start time and date (in that order)"
|
1257 |
+
#~ msgstr "Mostra l'hora i data d'inici (en aquest ordre)"
|
1258 |
+
|
1259 |
+
#~ msgid "Display start date and time (in that order)"
|
1260 |
+
#~ msgstr "Mostra la data i hora d'inici (en aquest ordre)"
|
1261 |
+
|
1262 |
+
#~ msgid "Don't display end time or date"
|
1263 |
+
#~ msgstr "No mostris l'hora o data de finalització"
|
1264 |
+
|
1265 |
+
#~ msgid "Display end date"
|
1266 |
+
#~ msgstr "Mostra la data de finalització"
|
1267 |
+
|
1268 |
+
#~ msgid "Display end time and date (in that order)"
|
1269 |
+
#~ msgstr "Mostra l'hora i data de finalització (en aquest ordre)"
|
1270 |
+
|
1271 |
+
#~ msgid "Display end date and time (in that order)"
|
1272 |
+
#~ msgstr "Mostra la data i hora de finalització (en aquest ordre)"
|
1273 |
+
|
1274 |
+
#~ msgid ""
|
1275 |
+
#~ "Show the description of events? (URLs in the description will be made "
|
1276 |
+
#~ "into links)."
|
1277 |
+
#~ msgstr ""
|
1278 |
+
#~ "Voleu mostrar la descripció dels esdeveniments? (l'URL de la descripció "
|
1279 |
+
#~ "es convertirà en un enllaç)."
|
1280 |
+
|
1281 |
+
#~ msgid "Enter the feed details below, then click the Add Feed button."
|
1282 |
+
#~ msgstr ""
|
1283 |
+
#~ "Afegiu els detalls de l'entrada a sota, després feu clic al botó Afegeix "
|
1284 |
+
#~ "entrada."
|
1285 |
+
|
1286 |
+
#~ msgid "This will probably be something like:"
|
1287 |
+
#~ msgstr "Això probablement serà similar a:"
|
1288 |
+
|
1289 |
+
#~ msgid "or:"
|
1290 |
+
#~ msgstr "o:"
|
1291 |
+
|
1292 |
+
#~ msgid ""
|
1293 |
+
#~ "The point in time at which to start retrieving events. Use the text-box "
|
1294 |
+
#~ "to specify an additional offset from you chosen start point. The offset "
|
1295 |
+
#~ "should be provided in seconds (3600 = 1 hour, 86400 = 1 day) and can be "
|
1296 |
+
#~ "negative. If you have selected the 'Specific date / time' option, enter a"
|
1297 |
+
#~ msgstr ""
|
1298 |
+
#~ "El punt en el temps en què es començaran a recuperar els esdeveniments. "
|
1299 |
+
#~ "Feu servir la caixa de text per especificar un desplaçament addicional al "
|
1300 |
+
#~ "punt triat inicialment. Aquest desplaçament s'ha de proporcionar en "
|
1301 |
+
#~ "segons (3600 = 1 hora, 86400 = 1 dia) i pot ser negatiu. Si heu "
|
1302 |
+
#~ "seleccionat l'opció 'Data / hora específics' poseu una"
|
1303 |
+
|
1304 |
+
#~ msgid "UNIX timestamp"
|
1305 |
+
#~ msgstr "marca de temps de UNIX"
|
1306 |
+
|
1307 |
+
#~ msgid "in the text-box."
|
1308 |
+
#~ msgstr "a la caixa de text."
|
1309 |
+
|
1310 |
+
#~ msgid "Now"
|
1311 |
+
#~ msgstr "Ara"
|
1312 |
+
|
1313 |
+
#~ msgid "00:00 today"
|
1314 |
+
#~ msgstr "00:00 avui"
|
1315 |
+
|
1316 |
+
#~ msgid ""
|
1317 |
+
#~ "Use the event display builder to customize how event information will be "
|
1318 |
+
#~ "displayed in the grid tooltips and in lists. Use HTML and the shortcodes "
|
1319 |
+
#~ "(explained below) to display the information you require. A basic example "
|
1320 |
+
#~ "display format is provided as a starting point. For more information, "
|
1321 |
+
#~ "take a look at the"
|
1322 |
+
#~ msgstr ""
|
1323 |
+
#~ "Utilitzeu el creador d'esdeveniments personalitzat per definir quina "
|
1324 |
+
#~ "informació es mostrarà als títols de la graella i a les llistes. "
|
1325 |
+
#~ "Utilitzeu HTML i codis curts (que s'explica més endavant) per mostrar la "
|
1326 |
+
#~ "informació necessària. Com a punt de partida, es proporciona un format "
|
1327 |
+
#~ "bàsic a mode d'exemple. Per obtenir més informació, feu un cop d'ull a la"
|
1328 |
+
|
1329 |
+
#~ msgid "event display builder guide"
|
1330 |
+
#~ msgstr "guia d'ús de creació d'esdeveniments personalitzats"
|
1331 |
+
|
1332 |
+
#~ msgid ""
|
1333 |
+
#~ "(More information on all of the below shortcodes and attributes, and "
|
1334 |
+
#~ "working examples, can be found in the"
|
1335 |
+
#~ msgstr ""
|
1336 |
+
#~ "(Podeu trobar més informació sobre tots els codis curts i atributs de "
|
1337 |
+
#~ "baix, així com exemples de treball a la"
|
1338 |
+
|
1339 |
+
#~ msgid "Refresh Feed Cache"
|
1340 |
+
#~ msgstr "Refresca la memòria cau de les entrades"
|
1341 |
+
|
1342 |
+
#~ msgid ""
|
1343 |
+
#~ "The plugin will automatically refresh the cache when it expires, but you "
|
1344 |
+
#~ "can manually clear the cache now by clicking the button below."
|
1345 |
+
#~ msgstr ""
|
1346 |
+
#~ "El connector actualitzarà automàticament la memòria cau quan expiri, però "
|
1347 |
+
#~ "es pot esborrar manualment ara fent clic al botó de sota."
|
1348 |
+
|
1349 |
+
#~ msgid "Are you want you want to clear the cache data for this feed?"
|
1350 |
+
#~ msgstr ""
|
1351 |
+
#~ "Esteu segurs que voleu esborrar les dades de la memòria cau d'aquesta "
|
1352 |
+
#~ "entrada?"
|
1353 |
+
|
1354 |
+
#~ msgid "Delete Feed"
|
1355 |
+
#~ msgstr "Esborra l'entrada"
|
1356 |
+
|
1357 |
+
#~ msgid ""
|
1358 |
+
#~ "Are you want you want to delete this feed? (Remember to remove / adjust "
|
1359 |
+
#~ "any widgets or shortcodes associated with this feed)."
|
1360 |
+
#~ msgstr ""
|
1361 |
+
#~ "Esteu segurs que voleu esborrar aquesta entrada? (Recordeu esborrar / "
|
1362 |
+
#~ "ajustar els ginys o codis curts associats a aquesta entrada)."
|
1363 |
+
|
1364 |
+
#~ msgid "Click here to add a new feed"
|
1365 |
+
#~ msgstr "Feu clic aquí per afegir una entrada nova"
|
1366 |
+
|
1367 |
+
#~ msgid "Add Feed"
|
1368 |
+
#~ msgstr "Afegeix entrada"
|
1369 |
+
|
1370 |
+
#~ msgid "Current Feeds"
|
1371 |
+
#~ msgstr "Entrades actuals"
|
1372 |
+
|
1373 |
+
#~ msgid "ID"
|
1374 |
+
#~ msgstr "ID"
|
1375 |
+
|
1376 |
+
#~ msgid "URL"
|
1377 |
+
#~ msgstr "URL"
|
1378 |
+
|
1379 |
+
#~ msgid "Refresh"
|
1380 |
+
#~ msgstr "Refresca"
|
1381 |
+
|
1382 |
+
#~ msgid "Edit"
|
1383 |
+
#~ msgstr "Edita"
|
1384 |
+
|
1385 |
+
#~ msgid "Delete"
|
1386 |
+
#~ msgstr "Esborra"
|
1387 |
+
|
1388 |
+
#~ msgid "Custom stylesheet URL"
|
1389 |
+
#~ msgstr "URL del full d'estils personalitzat"
|
1390 |
+
|
1391 |
+
#~ msgid ""
|
1392 |
+
#~ "If you want to alter the default plugin styling, create a new stylesheet "
|
1393 |
+
#~ "on your server (not in the <code>google-calendar-events</code> directory) "
|
1394 |
+
#~ "and then enter its URL below."
|
1395 |
+
#~ msgstr ""
|
1396 |
+
#~ "Si voleu canviar l'estil per defecte del giny, creeu un full d'estil nou "
|
1397 |
+
#~ "al vostre servidor (no al directori <code>google-calendar-events</code>) "
|
1398 |
+
#~ "i poseu aquí l'URL."
|
1399 |
+
|
1400 |
+
#~ msgid "Add JavaScript to footer?"
|
1401 |
+
#~ msgstr "Voleu afegir JavaScript al peu de pàgina?"
|
1402 |
+
|
1403 |
+
#~ msgid ""
|
1404 |
+
#~ "If you are having issues with tooltips not appearing or the AJAX "
|
1405 |
+
#~ "functionality not working, try ticking the checkbox below."
|
1406 |
+
#~ msgstr ""
|
1407 |
+
#~ "Si teniu problemes amb títols que no apareixen o l'AJAX no funciona, "
|
1408 |
+
#~ "proveu a marcar la casella de sota."
|
1409 |
+
|
1410 |
+
#~ msgid "Text to display while calendar data is loading (on AJAX requests)."
|
1411 |
+
#~ msgstr ""
|
1412 |
+
#~ "Text que es mostra mentre el calendari s'està carregant (en peticions "
|
1413 |
+
#~ "AJAX)."
|
1414 |
+
|
1415 |
+
#~ msgid "Error message"
|
1416 |
+
#~ msgstr "Missatge d'error"
|
1417 |
+
|
1418 |
+
#~ msgid ""
|
1419 |
+
#~ "An error message to display to non-admin users if events cannot be "
|
1420 |
+
#~ "displayed for any reason (admins will see a message indicating the cause "
|
1421 |
+
#~ "of the problem)."
|
1422 |
+
#~ msgstr ""
|
1423 |
+
#~ "Missatge d'error que es mostrarà als usuaris que no siguin administradors "
|
1424 |
+
#~ "si els esdeveniments no es poden mostrar per qualsevol motiu (els "
|
1425 |
+
#~ "administradors veuran un missatge indicant la causa del problema)."
|
1426 |
+
|
1427 |
+
#~ msgid "Optimise event retrieval?"
|
1428 |
+
#~ msgstr "Voleu optimitzar la recuperació de l'esdeveniment?"
|
1429 |
+
|
1430 |
+
#~ msgid ""
|
1431 |
+
#~ "If this option is enabled, the plugin will use an experimental feature of "
|
1432 |
+
#~ "the Google Data API, which can improve performance significantly, "
|
1433 |
+
#~ "especially with large numbers of events. Google could potentially "
|
1434 |
+
#~ "remove / change this feature at any time."
|
1435 |
+
#~ msgstr ""
|
1436 |
+
#~ "Si s'activa aquesta opció, el giny farà servir una característica "
|
1437 |
+
#~ "experimental de l'API de dades de Google que pot millorar "
|
1438 |
+
#~ "significativament el rendiment, sobretot si el nombre d'esdeveniments és "
|
1439 |
+
#~ "elevat. Google pot eliminar / canviar aquesta funció en qualsevol moment."
|
1440 |
+
|
1441 |
+
#~ msgid "Use old styles?"
|
1442 |
+
#~ msgstr "Voleu fer servir estils antics?"
|
1443 |
+
|
1444 |
+
#~ msgid ""
|
1445 |
+
#~ "Some CSS changes were made in version 0.7. If this option is enabled, the "
|
1446 |
+
#~ "old CSS will still be added along with the main stylesheet. You should "
|
1447 |
+
#~ "consider updating your stylesheet so that you don't need this enabled."
|
1448 |
+
#~ msgstr ""
|
1449 |
+
#~ "Es van fer alguns canvis d'estil CSS en la versió 0.7. Si aquesta opció "
|
1450 |
+
#~ "està activada, s'afegirà el CSS antic, juntament amb el full d'estils "
|
1451 |
+
#~ "principal. Hauríeu de considerar actualitzar el vostre full d'estils per "
|
1452 |
+
#~ "no tenir la necessitat d'activar aquesta opció."
|
1453 |
+
|
1454 |
+
#~ msgid "Save"
|
1455 |
+
#~ msgstr "Desa"
|
1456 |
+
|
1457 |
+
#~ msgid ""
|
1458 |
+
#~ "No feeds have been added yet. You can add a feed in the Google Calendar "
|
1459 |
+
#~ "Events settings."
|
1460 |
+
#~ msgstr ""
|
1461 |
+
#~ "Encara no s'ha afegit cap entrada. Podeu afegir una entrada a la "
|
1462 |
+
#~ "configuració d'esdeveniments del Google Calendar."
|
1463 |
+
|
1464 |
+
#~ msgid ""
|
1465 |
+
#~ "No feeds have been added yet. You can add feeds in the Google Calendar "
|
1466 |
+
#~ "Events settings."
|
1467 |
+
#~ msgstr ""
|
1468 |
+
#~ "Encara no s'ha afegit cap entrada. Podeu afegir entrades a la "
|
1469 |
+
#~ "configuració d'esdeveniments del Google Calendar."
|
1470 |
+
|
1471 |
+
#~ msgid "Calendar Grid"
|
1472 |
+
#~ msgstr "Graella de calendari"
|
1473 |
+
|
1474 |
+
#~ msgid "List - grouped by date"
|
1475 |
+
#~ msgstr "Llista - agrupada per data"
|
1476 |
+
|
1477 |
+
#~ msgid ""
|
1478 |
+
#~ "1 or more of your feeds could not be displayed. The following errors "
|
1479 |
+
#~ "occurred:"
|
1480 |
+
#~ msgstr ""
|
1481 |
+
#~ "Una o més de les vostres entrades no es poden mostrar. S'han trobat els "
|
1482 |
+
#~ "errors següents:"
|
1483 |
+
|
1484 |
+
#~ msgid "Notice:"
|
1485 |
+
#~ msgstr "Avís:"
|
1486 |
+
|
1487 |
+
#~ msgid ""
|
1488 |
+
#~ "The way in which Google Calendar Events stores cached data has been much "
|
1489 |
+
#~ "improved in version 0.6. As you have upgraded from a previous version of "
|
1490 |
+
#~ "the plugin, there is likely to be some data from the old caching system "
|
1491 |
+
#~ "hanging around in your database that is now useless. Click below to clear "
|
1492 |
+
#~ "expired cached data from your database."
|
1493 |
+
#~ msgstr ""
|
1494 |
+
#~ "La forma en què Esdeveniments de Google Calendar desa les dades a la "
|
1495 |
+
#~ "memòria cau ha estat millorada a la versió 0.6. Com que heu actualitzat "
|
1496 |
+
#~ "des d'una versió anterior del connector, pot ser que hi hagi dades dels "
|
1497 |
+
#~ "sistema antic, que ja no són útils, a la vostra base de dades. Feu clic a "
|
1498 |
+
#~ "continuació per esborrar aquestes dades antigues emmagatzemades a la "
|
1499 |
+
#~ "memòria cau de la base de dades."
|
1500 |
+
|
1501 |
+
#~ msgid "Clear expired cached data"
|
1502 |
+
#~ msgstr "Esborra dades antigues de la memòria cau"
|
1503 |
+
|
1504 |
+
#~ msgid "or"
|
1505 |
+
#~ msgstr "o"
|
1506 |
+
|
1507 |
+
#~ msgid "Ignore this notice"
|
1508 |
+
#~ msgstr "Ignora aquest avís"
|
1509 |
+
|
1510 |
+
#~ msgid "Cancel"
|
1511 |
+
#~ msgstr "Cancel·la"
|
1512 |
+
|
1513 |
+
#~ msgid "Refresh Feed"
|
1514 |
+
#~ msgstr "Refresca l'entrada"
|
1515 |
+
|
1516 |
+
#~ msgid "Save Changes"
|
1517 |
+
#~ msgstr "Desa els canvis"
|
1518 |
+
|
1519 |
+
#~ msgid "Old cached data cleared."
|
1520 |
+
#~ msgstr "S'han esborrat les dades antigues de la memòria cau"
|
1521 |
+
|
1522 |
+
#~ msgid "General options updated."
|
1523 |
+
#~ msgstr "S'han desat les opcions generals"
|
1524 |
+
|
1525 |
+
#~ msgid ""
|
1526 |
+
#~ "No valid Feed IDs have been entered for this shortcode. Please check that "
|
1527 |
+
#~ "you have entered the IDs correctly and that the Feeds have not been "
|
1528 |
+
#~ "deleted."
|
1529 |
+
#~ msgstr ""
|
1530 |
+
#~ "No hi ha cap ID d'entrada vàlid en aquest codi curt. Comproveu que heu "
|
1531 |
+
#~ "introduït els codis correctament i que les entrades no s'han eliminat."
|
1532 |
+
|
1533 |
+
#~ msgid "http://www.rhanney.co.uk/plugins/google-calendar-events"
|
1534 |
+
#~ msgstr "http://www.rhanney.co.uk/plugins/google-calendar-events"
|
1535 |
+
|
1536 |
+
#~ msgid ""
|
1537 |
+
#~ "Parses Google Calendar feeds and displays the events as a calendar grid "
|
1538 |
+
#~ "or list on a page, post or widget."
|
1539 |
+
#~ msgstr ""
|
1540 |
+
#~ "Analitza les entrades de Google Calendar i mostra els esdeveniments com "
|
1541 |
+
#~ "una graella de calendari, una llista en una pàgina, un article o un giny."
|
languages/gce.pot
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Google Calendar Events\n"
|
4 |
-
"POT-Creation-Date:
|
5 |
-
"PO-Revision-Date:
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: en\n"
|
@@ -15,43 +15,47 @@ msgstr ""
|
|
15 |
"X-Poedit-KeywordsList: __;_e\n"
|
16 |
"X-Poedit-SearchPath-0: google-calendar-events\n"
|
17 |
|
18 |
-
#: google-calendar-events/class-google-calendar-events-admin.php:
|
19 |
-
#: google-calendar-events/class-google-calendar-events-admin.php:
|
20 |
-
#: google-calendar-events/class-google-calendar-events-admin.php:
|
21 |
#: google-calendar-events/includes/register-settings.php:54
|
22 |
msgid "General Settings"
|
23 |
msgstr ""
|
24 |
|
25 |
-
#: google-calendar-events/class-google-calendar-events-admin.php:
|
26 |
#: google-calendar-events/views/widgets.php:27
|
27 |
msgid "Google Calendar Events"
|
28 |
msgstr ""
|
29 |
|
30 |
-
#: google-calendar-events/class-google-calendar-events-admin.php:
|
31 |
msgid "Feeds"
|
32 |
msgstr ""
|
33 |
|
|
|
|
|
|
|
|
|
34 |
#: google-calendar-events/includes/admin/admin-functions.php:20
|
35 |
msgid "Cache has been cleared for this feed."
|
36 |
msgstr ""
|
37 |
|
38 |
#: google-calendar-events/includes/admin/admin-functions.php:35
|
39 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
40 |
msgid "Starts:"
|
41 |
msgstr ""
|
42 |
|
43 |
#: google-calendar-events/includes/admin/admin-functions.php:36
|
44 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
45 |
msgid "Ends:"
|
46 |
msgstr ""
|
47 |
|
48 |
#: google-calendar-events/includes/admin/admin-functions.php:37
|
49 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
50 |
msgid "Location:"
|
51 |
msgstr ""
|
52 |
|
53 |
#: google-calendar-events/includes/admin/admin-functions.php:38
|
54 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
55 |
msgid "Description:"
|
56 |
msgstr ""
|
57 |
|
@@ -59,108 +63,135 @@ msgstr ""
|
|
59 |
msgid "More details..."
|
60 |
msgstr ""
|
61 |
|
62 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
63 |
msgid "More Details"
|
64 |
msgstr ""
|
65 |
|
66 |
-
#: google-calendar-events/includes/admin/admin-functions.php:
|
67 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
68 |
msgid "Clear Cache"
|
69 |
msgstr ""
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
#: google-calendar-events/includes/class-gce-display.php:179
|
72 |
-
#: google-calendar-events/includes/class-gce-display.php:
|
73 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:185
|
74 |
-
#: google-calendar-events/views/widgets.php:252
|
75 |
msgid "Back"
|
76 |
msgstr ""
|
77 |
|
78 |
#: google-calendar-events/includes/class-gce-display.php:183
|
79 |
-
#: google-calendar-events/includes/class-gce-display.php:
|
80 |
msgid "Next"
|
81 |
msgstr ""
|
82 |
|
83 |
-
#: google-calendar-events/includes/class-gce-display.php:
|
84 |
msgid "No events to display."
|
85 |
msgstr ""
|
86 |
|
87 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
88 |
#, php-format
|
89 |
msgid "%s year"
|
90 |
msgstr ""
|
91 |
|
92 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
93 |
#, php-format
|
94 |
msgid "%s years"
|
95 |
msgstr ""
|
96 |
|
97 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
98 |
#, php-format
|
99 |
msgid "%s month"
|
100 |
msgstr ""
|
101 |
|
102 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
103 |
#, php-format
|
104 |
msgid "%s months"
|
105 |
msgstr ""
|
106 |
|
107 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
108 |
#, php-format
|
109 |
msgid "%s week"
|
110 |
msgstr ""
|
111 |
|
112 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
113 |
#, php-format
|
114 |
msgid "%s weeks"
|
115 |
msgstr ""
|
116 |
|
117 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
118 |
#, php-format
|
119 |
msgid "%s day"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
123 |
#, php-format
|
124 |
msgid "%s days"
|
125 |
msgstr ""
|
126 |
|
127 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
128 |
#, php-format
|
129 |
msgid "%s hour"
|
130 |
msgstr ""
|
131 |
|
132 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
133 |
#, php-format
|
134 |
msgid "%s hours"
|
135 |
msgstr ""
|
136 |
|
137 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
138 |
#, php-format
|
139 |
msgid "%s min"
|
140 |
msgstr ""
|
141 |
|
142 |
-
#: google-calendar-events/includes/class-gce-event.php:
|
143 |
#, php-format
|
144 |
msgid "%s mins"
|
145 |
msgstr ""
|
146 |
|
147 |
-
#: google-calendar-events/includes/class-gce-feed.php:
|
148 |
msgid ""
|
149 |
-
"The
|
150 |
-
"Feed settings."
|
151 |
msgstr ""
|
152 |
|
153 |
-
#: google-calendar-events/includes/class-gce-feed.php:
|
154 |
msgid ""
|
155 |
"Some data was retrieved, but could not be parsed successfully. Please ensure "
|
156 |
"your feed settings are correct."
|
157 |
msgstr ""
|
158 |
|
159 |
-
#: google-calendar-events/includes/class-gce-feed.php:
|
160 |
msgid "An error has occured."
|
161 |
msgstr ""
|
162 |
|
163 |
-
#: google-calendar-events/includes/class-gce-feed.php:
|
164 |
msgid " Please ensure your calendar ID is correct."
|
165 |
msgstr ""
|
166 |
|
@@ -256,41 +287,35 @@ msgstr ""
|
|
256 |
msgid "Display Options"
|
257 |
msgstr ""
|
258 |
|
259 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
260 |
msgid "Feed ID"
|
261 |
msgstr ""
|
262 |
|
263 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
264 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
265 |
msgid "Feed Shortcode"
|
266 |
msgstr ""
|
267 |
|
268 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
269 |
msgid "Display Type"
|
270 |
msgstr ""
|
271 |
|
272 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
273 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:152
|
274 |
-
#: google-calendar-events/views/widgets.php:218
|
275 |
msgid "Grid"
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
279 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
280 |
-
#: google-calendar-events/views/widgets.php:
|
281 |
msgid "List"
|
282 |
msgstr ""
|
283 |
|
284 |
-
#: google-calendar-events/includes/gce-feed-cpt.php:
|
285 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
286 |
-
#: google-calendar-events/views/widgets.php:
|
287 |
msgid "Grouped List"
|
288 |
msgstr ""
|
289 |
|
290 |
-
#: google-calendar-events/includes/misc-functions.php:21
|
291 |
-
msgid "Loading..."
|
292 |
-
msgstr ""
|
293 |
-
|
294 |
#: google-calendar-events/includes/register-settings.php:29
|
295 |
msgid "Google API Key"
|
296 |
msgstr ""
|
@@ -330,32 +355,10 @@ msgid ""
|
|
330 |
"The callback function used for the <strong>%s</strong> setting is missing."
|
331 |
msgstr ""
|
332 |
|
333 |
-
#: google-calendar-events/
|
334 |
-
msgid "GCal Events Important Update (Nov. 19, 2014):"
|
335 |
-
msgstr ""
|
336 |
-
|
337 |
-
#: google-calendar-events/views/admin/api-settings-notice.php:28
|
338 |
msgid ""
|
339 |
-
"
|
340 |
-
"
|
341 |
-
msgstr ""
|
342 |
-
|
343 |
-
#: google-calendar-events/views/admin/api-settings-notice.php:29
|
344 |
-
msgid ""
|
345 |
-
"By default a shared key is used across all plugin users, which is limited to "
|
346 |
-
"500,000 requests per day and 5 requests per second."
|
347 |
-
msgstr ""
|
348 |
-
|
349 |
-
#: google-calendar-events/views/admin/api-settings-notice.php:30
|
350 |
-
msgid "To avoid these limits you can use your own Google API key."
|
351 |
-
msgstr ""
|
352 |
-
|
353 |
-
#: google-calendar-events/views/admin/api-settings-notice.php:33
|
354 |
-
msgid "Update your API settings now"
|
355 |
-
msgstr ""
|
356 |
-
|
357 |
-
#: google-calendar-events/views/admin/api-settings-notice.php:34
|
358 |
-
msgid "Hide this"
|
359 |
msgstr ""
|
360 |
|
361 |
#: google-calendar-events/views/admin/display-options-meta.php:39
|
@@ -482,223 +485,253 @@ msgstr ""
|
|
482 |
msgid "The link text to be displayed."
|
483 |
msgstr ""
|
484 |
|
485 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
486 |
-
msgid ""
|
487 |
-
"We're <strong>smack dab</strong> in the middle of building additional "
|
488 |
-
"features for this plugin. Have ideas?"
|
489 |
-
msgstr ""
|
490 |
-
|
491 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:57
|
492 |
-
msgid "Visit our roadmap and tell us what you're looking for"
|
493 |
-
msgstr ""
|
494 |
-
|
495 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:63
|
496 |
msgid "Want to be in the know?"
|
497 |
msgstr ""
|
498 |
|
499 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
500 |
msgid "Get notified when new features are released"
|
501 |
msgstr ""
|
502 |
|
503 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
504 |
msgid ""
|
505 |
"Copy and paste this shortcode to display this Google Calendar feed on any "
|
506 |
"post or page."
|
507 |
msgstr ""
|
508 |
|
509 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
510 |
msgid ""
|
511 |
"To avoid display issues, make sure to paste the shortcode in the Text tab of "
|
512 |
"the post editor."
|
513 |
msgstr ""
|
514 |
|
515 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
516 |
msgid "Google Calendar ID"
|
517 |
msgstr ""
|
518 |
|
519 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
520 |
msgid "The Google Calendar ID."
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
524 |
msgid "Example"
|
525 |
msgstr ""
|
526 |
|
527 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
528 |
-
msgid "How to find your
|
529 |
msgstr ""
|
530 |
|
531 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
532 |
msgid "Search Query"
|
533 |
msgstr ""
|
534 |
|
535 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
536 |
msgid "Find and show events based on a search query."
|
537 |
msgstr ""
|
538 |
|
539 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
540 |
msgid "Expand Recurring Events?"
|
541 |
msgstr ""
|
542 |
|
543 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
544 |
msgid "Yes"
|
545 |
msgstr ""
|
546 |
|
547 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
548 |
msgid ""
|
549 |
-
"
|
550 |
-
"
|
551 |
msgstr ""
|
552 |
|
553 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
554 |
-
msgid "
|
555 |
-
msgstr ""
|
556 |
-
|
557 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:115
|
558 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:126
|
559 |
-
#, php-format
|
560 |
-
msgid "Use %sPHP date formatting%s."
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:116
|
564 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:127
|
565 |
-
msgid "
|
566 |
msgstr ""
|
567 |
|
568 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
569 |
-
msgid "
|
|
|
|
|
570 |
msgstr ""
|
571 |
|
572 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:133
|
573 |
-
msgid "
|
574 |
msgstr ""
|
575 |
|
576 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:136
|
577 |
-
|
578 |
-
"
|
579 |
-
"this feed changes regularly, you may want to reduce the cache duration."
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
583 |
-
|
|
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
587 |
-
msgid "
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
591 |
-
msgid ""
|
592 |
-
"Show events that span multiple days on each day that they span, rather than "
|
593 |
-
"just the first day."
|
594 |
msgstr ""
|
595 |
|
596 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:149
|
597 |
-
|
|
|
598 |
msgstr ""
|
599 |
|
600 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
601 |
-
|
|
|
602 |
msgstr ""
|
603 |
|
604 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
605 |
-
|
|
|
606 |
msgstr ""
|
607 |
|
608 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
609 |
-
#: google-calendar-events/views/widgets.php:
|
610 |
-
msgid "
|
611 |
msgstr ""
|
612 |
|
613 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
614 |
-
msgid "
|
615 |
msgstr ""
|
616 |
|
617 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
618 |
-
|
619 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:197
|
620 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:211
|
621 |
-
#: google-calendar-events/views/widgets.php:242
|
622 |
-
#: google-calendar-events/views/widgets.php:250
|
623 |
-
msgid "Days"
|
624 |
msgstr ""
|
625 |
|
626 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
627 |
-
#: google-calendar-events/views/
|
628 |
-
|
|
|
629 |
msgstr ""
|
630 |
|
631 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
632 |
-
|
|
|
|
|
633 |
msgstr ""
|
634 |
|
635 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
636 |
-
|
|
|
|
|
|
|
637 |
msgstr ""
|
638 |
|
639 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
640 |
-
|
641 |
-
msgid "Ahead"
|
642 |
msgstr ""
|
643 |
|
644 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
645 |
-
msgid ""
|
646 |
-
"Change if you need to initially display events on a date other than today "
|
647 |
-
"(List View only)."
|
648 |
msgstr ""
|
649 |
|
650 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
651 |
-
msgid "
|
652 |
msgstr ""
|
653 |
|
654 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
655 |
-
|
656 |
-
msgid "Months"
|
657 |
msgstr ""
|
658 |
|
659 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
660 |
-
|
661 |
-
|
|
|
|
|
|
|
662 |
msgstr ""
|
663 |
|
664 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
665 |
-
msgid "
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
669 |
msgid ""
|
670 |
-
"Set how far
|
671 |
-
"displayed."
|
672 |
msgstr ""
|
673 |
|
674 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
675 |
-
msgid "
|
676 |
msgstr ""
|
677 |
|
678 |
-
#: google-calendar-events/views/admin/gce-feed-meta-display.php:
|
679 |
-
msgid "
|
680 |
msgstr ""
|
681 |
|
682 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:216
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
683 |
msgid ""
|
684 |
-
"
|
685 |
-
"
|
686 |
msgstr ""
|
687 |
|
688 |
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6
|
689 |
msgid "Documentation & getting started"
|
690 |
msgstr ""
|
691 |
|
692 |
-
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:
|
693 |
msgid "Community support forums"
|
694 |
msgstr ""
|
695 |
|
696 |
-
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:
|
697 |
-
msgid "
|
698 |
msgstr ""
|
699 |
|
700 |
-
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:
|
701 |
-
msgid "
|
|
|
|
|
|
|
|
|
702 |
msgstr ""
|
703 |
|
704 |
#: google-calendar-events/views/widgets.php:28
|
@@ -707,66 +740,74 @@ msgid ""
|
|
707 |
"feeds you have added"
|
708 |
msgstr ""
|
709 |
|
710 |
-
#: google-calendar-events/views/widgets.php:
|
711 |
msgid ""
|
712 |
"No valid Feed IDs have been entered for this widget. Please check that you "
|
713 |
"have entered the IDs correctly in the widget settings (Appearance > "
|
714 |
"Widgets), and that the Feeds have not been deleted."
|
715 |
msgstr ""
|
716 |
|
717 |
-
#: google-calendar-events/views/widgets.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
718 |
msgid "You have not added any feeds yet."
|
719 |
msgstr ""
|
720 |
|
721 |
-
#: google-calendar-events/views/widgets.php:
|
722 |
msgid "There are no feeds created yet."
|
723 |
msgstr ""
|
724 |
|
725 |
-
#: google-calendar-events/views/widgets.php:
|
726 |
msgid "Add your first feed!"
|
727 |
msgstr ""
|
728 |
|
729 |
-
#: google-calendar-events/views/widgets.php:
|
730 |
msgid "Events on"
|
731 |
msgstr ""
|
732 |
|
733 |
-
#: google-calendar-events/views/widgets.php:
|
734 |
msgid "Title:"
|
735 |
msgstr ""
|
736 |
|
737 |
-
#: google-calendar-events/views/widgets.php:
|
738 |
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
|
739 |
msgstr ""
|
740 |
|
741 |
-
#: google-calendar-events/views/widgets.php:
|
742 |
msgid "Display Events as:"
|
743 |
msgstr ""
|
744 |
|
745 |
-
#: google-calendar-events/views/widgets.php:
|
746 |
-
msgid "Show Paging Links:"
|
747 |
-
msgstr ""
|
748 |
-
|
749 |
-
#: google-calendar-events/views/widgets.php:231
|
750 |
msgid "Sort Order (List View only):"
|
751 |
msgstr ""
|
752 |
|
753 |
-
#: google-calendar-events/views/widgets.php:
|
754 |
msgid "Ascending"
|
755 |
msgstr ""
|
756 |
|
757 |
-
#: google-calendar-events/views/widgets.php:
|
758 |
msgid "Descending"
|
759 |
msgstr ""
|
760 |
|
761 |
-
#: google-calendar-events/views/widgets.php:
|
762 |
-
msgid "
|
763 |
msgstr ""
|
764 |
|
765 |
-
#: google-calendar-events/views/widgets.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
766 |
msgid "Display Start Date Offset (List View only):"
|
767 |
msgstr ""
|
768 |
|
769 |
-
#: google-calendar-events/views/widgets.php:
|
770 |
msgid ""
|
771 |
"Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped "
|
772 |
"lists always have a title displayed."
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: Google Calendar Events\n"
|
4 |
+
"POT-Creation-Date: 2015-02-25 15:34-0700\n"
|
5 |
+
"PO-Revision-Date: 2015-02-25 15:34-0700\n"
|
6 |
"Last-Translator: \n"
|
7 |
"Language-Team: \n"
|
8 |
"Language: en\n"
|
15 |
"X-Poedit-KeywordsList: __;_e\n"
|
16 |
"X-Poedit-SearchPath-0: google-calendar-events\n"
|
17 |
|
18 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:126
|
19 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:127
|
20 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:218
|
21 |
#: google-calendar-events/includes/register-settings.php:54
|
22 |
msgid "General Settings"
|
23 |
msgstr ""
|
24 |
|
25 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:206
|
26 |
#: google-calendar-events/views/widgets.php:27
|
27 |
msgid "Google Calendar Events"
|
28 |
msgstr ""
|
29 |
|
30 |
+
#: google-calendar-events/class-google-calendar-events-admin.php:219
|
31 |
msgid "Feeds"
|
32 |
msgstr ""
|
33 |
|
34 |
+
#: google-calendar-events/class-google-calendar-events.php:90
|
35 |
+
msgid "Loading..."
|
36 |
+
msgstr ""
|
37 |
+
|
38 |
#: google-calendar-events/includes/admin/admin-functions.php:20
|
39 |
msgid "Cache has been cleared for this feed."
|
40 |
msgstr ""
|
41 |
|
42 |
#: google-calendar-events/includes/admin/admin-functions.php:35
|
43 |
+
#: google-calendar-events/includes/admin/admin-functions.php:55
|
44 |
msgid "Starts:"
|
45 |
msgstr ""
|
46 |
|
47 |
#: google-calendar-events/includes/admin/admin-functions.php:36
|
48 |
+
#: google-calendar-events/includes/admin/admin-functions.php:57
|
49 |
msgid "Ends:"
|
50 |
msgstr ""
|
51 |
|
52 |
#: google-calendar-events/includes/admin/admin-functions.php:37
|
53 |
+
#: google-calendar-events/includes/admin/admin-functions.php:59
|
54 |
msgid "Location:"
|
55 |
msgstr ""
|
56 |
|
57 |
#: google-calendar-events/includes/admin/admin-functions.php:38
|
58 |
+
#: google-calendar-events/includes/admin/admin-functions.php:60
|
59 |
msgid "Description:"
|
60 |
msgstr ""
|
61 |
|
63 |
msgid "More details..."
|
64 |
msgstr ""
|
65 |
|
66 |
+
#: google-calendar-events/includes/admin/admin-functions.php:62
|
67 |
msgid "More Details"
|
68 |
msgstr ""
|
69 |
|
70 |
+
#: google-calendar-events/includes/admin/admin-functions.php:76
|
71 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:279
|
72 |
msgid "Clear Cache"
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: google-calendar-events/includes/admin/admin-notice.php:26
|
76 |
+
msgid "GCal API Key Notice"
|
77 |
+
msgstr ""
|
78 |
+
|
79 |
+
#: google-calendar-events/includes/admin/admin-notice.php:28
|
80 |
+
msgid ""
|
81 |
+
"GCal Events uses the Google Calendar API version 3. By default this plugin "
|
82 |
+
"uses a public shared key across all plugin users."
|
83 |
+
msgstr ""
|
84 |
+
|
85 |
+
#: google-calendar-events/includes/admin/admin-notice.php:30
|
86 |
+
msgid ""
|
87 |
+
"This key is limited to 500,000 requests per day and 5 requests per second. "
|
88 |
+
"To avoid running into any potential limits you can use your own Google API "
|
89 |
+
"key."
|
90 |
+
msgstr ""
|
91 |
+
|
92 |
+
#: google-calendar-events/includes/admin/admin-notice.php:33
|
93 |
+
msgid "Enter your GCal API key"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: google-calendar-events/includes/admin/admin-notice.php:34
|
97 |
+
msgid "Configure GCal feeds"
|
98 |
+
msgstr ""
|
99 |
+
|
100 |
+
#: google-calendar-events/includes/admin/admin-notice.php:35
|
101 |
+
msgid "Hide this"
|
102 |
+
msgstr ""
|
103 |
+
|
104 |
#: google-calendar-events/includes/class-gce-display.php:179
|
105 |
+
#: google-calendar-events/includes/class-gce-display.php:289
|
|
|
|
|
106 |
msgid "Back"
|
107 |
msgstr ""
|
108 |
|
109 |
#: google-calendar-events/includes/class-gce-display.php:183
|
110 |
+
#: google-calendar-events/includes/class-gce-display.php:290
|
111 |
msgid "Next"
|
112 |
msgstr ""
|
113 |
|
114 |
+
#: google-calendar-events/includes/class-gce-display.php:392
|
115 |
msgid "No events to display."
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: google-calendar-events/includes/class-gce-event.php:518
|
119 |
#, php-format
|
120 |
msgid "%s year"
|
121 |
msgstr ""
|
122 |
|
123 |
+
#: google-calendar-events/includes/class-gce-event.php:518
|
124 |
#, php-format
|
125 |
msgid "%s years"
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: google-calendar-events/includes/class-gce-event.php:519
|
129 |
#, php-format
|
130 |
msgid "%s month"
|
131 |
msgstr ""
|
132 |
|
133 |
+
#: google-calendar-events/includes/class-gce-event.php:519
|
134 |
#, php-format
|
135 |
msgid "%s months"
|
136 |
msgstr ""
|
137 |
|
138 |
+
#: google-calendar-events/includes/class-gce-event.php:520
|
139 |
#, php-format
|
140 |
msgid "%s week"
|
141 |
msgstr ""
|
142 |
|
143 |
+
#: google-calendar-events/includes/class-gce-event.php:520
|
144 |
#, php-format
|
145 |
msgid "%s weeks"
|
146 |
msgstr ""
|
147 |
|
148 |
+
#: google-calendar-events/includes/class-gce-event.php:521
|
149 |
#, php-format
|
150 |
msgid "%s day"
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: google-calendar-events/includes/class-gce-event.php:521
|
154 |
#, php-format
|
155 |
msgid "%s days"
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: google-calendar-events/includes/class-gce-event.php:522
|
159 |
#, php-format
|
160 |
msgid "%s hour"
|
161 |
msgstr ""
|
162 |
|
163 |
+
#: google-calendar-events/includes/class-gce-event.php:522
|
164 |
#, php-format
|
165 |
msgid "%s hours"
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: google-calendar-events/includes/class-gce-event.php:523
|
169 |
#, php-format
|
170 |
msgid "%s min"
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: google-calendar-events/includes/class-gce-event.php:523
|
174 |
#, php-format
|
175 |
msgid "%s mins"
|
176 |
msgstr ""
|
177 |
|
178 |
+
#: google-calendar-events/includes/class-gce-feed.php:93
|
179 |
msgid ""
|
180 |
+
"The Google Calendar ID has not been set. Please make sure to set it "
|
181 |
+
"correctly in the Feed settings."
|
182 |
msgstr ""
|
183 |
|
184 |
+
#: google-calendar-events/includes/class-gce-feed.php:197
|
185 |
msgid ""
|
186 |
"Some data was retrieved, but could not be parsed successfully. Please ensure "
|
187 |
"your feed settings are correct."
|
188 |
msgstr ""
|
189 |
|
190 |
+
#: google-calendar-events/includes/class-gce-feed.php:200
|
191 |
msgid "An error has occured."
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: google-calendar-events/includes/class-gce-feed.php:205
|
195 |
msgid " Please ensure your calendar ID is correct."
|
196 |
msgstr ""
|
197 |
|
287 |
msgid "Display Options"
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:232
|
291 |
msgid "Feed ID"
|
292 |
msgstr ""
|
293 |
|
294 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:233
|
295 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:87
|
296 |
msgid "Feed Shortcode"
|
297 |
msgstr ""
|
298 |
|
299 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:234
|
300 |
msgid "Display Type"
|
301 |
msgstr ""
|
302 |
|
303 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:261
|
|
|
|
|
304 |
msgid "Grid"
|
305 |
msgstr ""
|
306 |
|
307 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:263
|
308 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:137
|
309 |
+
#: google-calendar-events/views/widgets.php:287
|
310 |
msgid "List"
|
311 |
msgstr ""
|
312 |
|
313 |
+
#: google-calendar-events/includes/gce-feed-cpt.php:265
|
314 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:138
|
315 |
+
#: google-calendar-events/views/widgets.php:288
|
316 |
msgid "Grouped List"
|
317 |
msgstr ""
|
318 |
|
|
|
|
|
|
|
|
|
319 |
#: google-calendar-events/includes/register-settings.php:29
|
320 |
msgid "Google API Key"
|
321 |
msgstr ""
|
355 |
"The callback function used for the <strong>%s</strong> setting is missing."
|
356 |
msgstr ""
|
357 |
|
358 |
+
#: google-calendar-events/includes/shortcodes.php:95
|
|
|
|
|
|
|
|
|
359 |
msgid ""
|
360 |
+
"There was a problem with one or more of your feed IDs. Please check your "
|
361 |
+
"shortcode settings and make sure they are correct."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
362 |
msgstr ""
|
363 |
|
364 |
#: google-calendar-events/views/admin/display-options-meta.php:39
|
485 |
msgid "The link text to be displayed."
|
486 |
msgstr ""
|
487 |
|
488 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:77
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
489 |
msgid "Want to be in the know?"
|
490 |
msgstr ""
|
491 |
|
492 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:80
|
493 |
msgid "Get notified when new features are released"
|
494 |
msgstr ""
|
495 |
|
496 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:91
|
497 |
msgid ""
|
498 |
"Copy and paste this shortcode to display this Google Calendar feed on any "
|
499 |
"post or page."
|
500 |
msgstr ""
|
501 |
|
502 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:92
|
503 |
msgid ""
|
504 |
"To avoid display issues, make sure to paste the shortcode in the Text tab of "
|
505 |
"the post editor."
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:97
|
509 |
msgid "Google Calendar ID"
|
510 |
msgstr ""
|
511 |
|
512 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101
|
513 |
msgid "The Google Calendar ID."
|
514 |
msgstr ""
|
515 |
|
516 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101
|
517 |
msgid "Example"
|
518 |
msgstr ""
|
519 |
|
520 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:103
|
521 |
+
msgid "How to find your Google Calendar ID"
|
522 |
msgstr ""
|
523 |
|
524 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:109
|
525 |
msgid "Search Query"
|
526 |
msgstr ""
|
527 |
|
528 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:112
|
529 |
msgid "Find and show events based on a search query."
|
530 |
msgstr ""
|
531 |
|
532 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:117
|
533 |
msgid "Expand Recurring Events?"
|
534 |
msgstr ""
|
535 |
|
536 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:119
|
537 |
msgid "Yes"
|
538 |
msgstr ""
|
539 |
|
540 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:120
|
541 |
msgid ""
|
542 |
+
"Display recurring events each time they occur. If disabled, events will be "
|
543 |
+
"displayed only the first time they occur."
|
544 |
msgstr ""
|
545 |
|
546 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:125
|
547 |
+
msgid "Multiple Day Events"
|
|
|
|
|
|
|
|
|
|
|
|
|
548 |
msgstr ""
|
549 |
|
|
|
550 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:127
|
551 |
+
msgid "Show on each day"
|
552 |
msgstr ""
|
553 |
|
554 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:128
|
555 |
+
msgid ""
|
556 |
+
"Display multiple day events on each day that they span. If disabled, "
|
557 |
+
"multiple day events will be displayed only on the first day they occur."
|
558 |
msgstr ""
|
559 |
|
560 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:133
|
561 |
+
msgid "Display Mode"
|
562 |
msgstr ""
|
563 |
|
564 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:136
|
565 |
+
#: google-calendar-events/views/widgets.php:286
|
566 |
+
msgid "Grid (Month view)"
|
|
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:139
|
570 |
+
#: google-calendar-events/views/widgets.php:289
|
571 |
+
msgid "Custom Date Range (List)"
|
572 |
msgstr ""
|
573 |
|
574 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:141
|
575 |
+
msgid "Select how to display this feed."
|
576 |
msgstr ""
|
577 |
|
578 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:146
|
579 |
+
msgid "Events per Page"
|
|
|
|
|
580 |
msgstr ""
|
581 |
|
582 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:149
|
583 |
+
#: google-calendar-events/views/widgets.php:304
|
584 |
+
msgid "Number of Days"
|
585 |
msgstr ""
|
586 |
|
587 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:150
|
588 |
+
#: google-calendar-events/views/widgets.php:305
|
589 |
+
msgid "Number of Events"
|
590 |
msgstr ""
|
591 |
|
592 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:151
|
593 |
+
#: google-calendar-events/views/widgets.php:306
|
594 |
+
msgid "One Week"
|
595 |
msgstr ""
|
596 |
|
597 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:152
|
598 |
+
#: google-calendar-events/views/widgets.php:307
|
599 |
+
msgid "One Month"
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:157
|
603 |
+
msgid "How many events to display per page (List View only)."
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:162
|
607 |
+
msgid "Display Start Date Offset"
|
|
|
|
|
|
|
|
|
|
|
608 |
msgstr ""
|
609 |
|
610 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:165
|
611 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:177
|
612 |
+
#: google-calendar-events/views/widgets.php:321
|
613 |
+
msgid "Number of Days Back"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:166
|
617 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:192
|
618 |
+
#: google-calendar-events/views/widgets.php:322
|
619 |
+
msgid "Number of Days Forward"
|
620 |
msgstr ""
|
621 |
|
622 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:169
|
623 |
+
#: google-calendar-events/views/widgets.php:326
|
624 |
+
msgid ""
|
625 |
+
"Change to initially display events on a date other than today (List View "
|
626 |
+
"only)."
|
627 |
msgstr ""
|
628 |
|
629 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:174
|
630 |
+
msgid "Earliest Feed Event Date"
|
|
|
631 |
msgstr ""
|
632 |
|
633 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:178
|
634 |
+
msgid "Number of Months Back"
|
|
|
|
|
635 |
msgstr ""
|
636 |
|
637 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:179
|
638 |
+
msgid "Number of Years Back"
|
639 |
msgstr ""
|
640 |
|
641 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:184
|
642 |
+
msgid "Set how far back to retrieve events regardless of initial display."
|
|
|
643 |
msgstr ""
|
644 |
|
645 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:189
|
646 |
+
msgid "Latest Feed Event Date"
|
647 |
+
msgstr ""
|
648 |
+
|
649 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:193
|
650 |
+
msgid "Number of Months Forward"
|
651 |
msgstr ""
|
652 |
|
653 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:194
|
654 |
+
msgid "Number of Years Forward"
|
655 |
msgstr ""
|
656 |
|
657 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:199
|
658 |
msgid ""
|
659 |
+
"Set how far in the future to retrieve events regardless of initial display."
|
|
|
660 |
msgstr ""
|
661 |
|
662 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:204
|
663 |
+
msgid "Use Custom Date Range"
|
664 |
msgstr ""
|
665 |
|
666 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:210
|
667 |
+
msgid "Set a specific range of events to retrieve."
|
668 |
msgstr ""
|
669 |
|
670 |
#: google-calendar-events/views/admin/gce-feed-meta-display.php:216
|
671 |
+
#: google-calendar-events/views/widgets.php:336
|
672 |
+
msgid "Show Paging Links"
|
673 |
+
msgstr ""
|
674 |
+
|
675 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:219
|
676 |
+
msgid "Display Next and Back navigation links."
|
677 |
+
msgstr ""
|
678 |
+
|
679 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:224
|
680 |
+
#: google-calendar-events/views/widgets.php:339
|
681 |
+
msgid "Show Tooltips"
|
682 |
+
msgstr ""
|
683 |
+
|
684 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:227
|
685 |
+
msgid "Display tooltips when hovering over events (Grid View only)."
|
686 |
+
msgstr ""
|
687 |
+
|
688 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:232
|
689 |
+
msgid "Date Format"
|
690 |
+
msgstr ""
|
691 |
+
|
692 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:236
|
693 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:247
|
694 |
+
#, php-format
|
695 |
+
msgid "Use %sPHP date formatting%s."
|
696 |
+
msgstr ""
|
697 |
+
|
698 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:237
|
699 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:248
|
700 |
+
msgid "Leave blank to use the default."
|
701 |
+
msgstr ""
|
702 |
+
|
703 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:243
|
704 |
+
msgid "Time Format"
|
705 |
+
msgstr ""
|
706 |
+
|
707 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:254
|
708 |
+
msgid "Cache Duration"
|
709 |
+
msgstr ""
|
710 |
+
|
711 |
+
#: google-calendar-events/views/admin/gce-feed-meta-display.php:257
|
712 |
msgid ""
|
713 |
+
"The length of time, in seconds, to cache the feed (43200 = 12 hours). If "
|
714 |
+
"this feed changes regularly, you may want to reduce the cache duration."
|
715 |
msgstr ""
|
716 |
|
717 |
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6
|
718 |
msgid "Documentation & getting started"
|
719 |
msgstr ""
|
720 |
|
721 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:11
|
722 |
msgid "Community support forums"
|
723 |
msgstr ""
|
724 |
|
725 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:16
|
726 |
+
msgid "Rate this plugin"
|
727 |
msgstr ""
|
728 |
|
729 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:21
|
730 |
+
msgid "View our roadmap & vote"
|
731 |
+
msgstr ""
|
732 |
+
|
733 |
+
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:26
|
734 |
+
msgid "Get notified of new features"
|
735 |
msgstr ""
|
736 |
|
737 |
#: google-calendar-events/views/widgets.php:28
|
740 |
"feeds you have added"
|
741 |
msgstr ""
|
742 |
|
743 |
+
#: google-calendar-events/views/widgets.php:159
|
744 |
msgid ""
|
745 |
"No valid Feed IDs have been entered for this widget. Please check that you "
|
746 |
"have entered the IDs correctly in the widget settings (Appearance > "
|
747 |
"Widgets), and that the Feeds have not been deleted."
|
748 |
msgstr ""
|
749 |
|
750 |
+
#: google-calendar-events/views/widgets.php:199
|
751 |
+
msgid ""
|
752 |
+
"There was a problem with one or more of your feed IDs. Please check your "
|
753 |
+
"widget settings and make sure they are correct."
|
754 |
+
msgstr ""
|
755 |
+
|
756 |
+
#: google-calendar-events/views/widgets.php:205
|
757 |
msgid "You have not added any feeds yet."
|
758 |
msgstr ""
|
759 |
|
760 |
+
#: google-calendar-events/views/widgets.php:248
|
761 |
msgid "There are no feeds created yet."
|
762 |
msgstr ""
|
763 |
|
764 |
+
#: google-calendar-events/views/widgets.php:249
|
765 |
msgid "Add your first feed!"
|
766 |
msgstr ""
|
767 |
|
768 |
+
#: google-calendar-events/views/widgets.php:259
|
769 |
msgid "Events on"
|
770 |
msgstr ""
|
771 |
|
772 |
+
#: google-calendar-events/views/widgets.php:273
|
773 |
msgid "Title:"
|
774 |
msgstr ""
|
775 |
|
776 |
+
#: google-calendar-events/views/widgets.php:278
|
777 |
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
|
778 |
msgstr ""
|
779 |
|
780 |
+
#: google-calendar-events/views/widgets.php:284
|
781 |
msgid "Display Events as:"
|
782 |
msgstr ""
|
783 |
|
784 |
+
#: google-calendar-events/views/widgets.php:294
|
|
|
|
|
|
|
|
|
785 |
msgid "Sort Order (List View only):"
|
786 |
msgstr ""
|
787 |
|
788 |
+
#: google-calendar-events/views/widgets.php:296
|
789 |
msgid "Ascending"
|
790 |
msgstr ""
|
791 |
|
792 |
+
#: google-calendar-events/views/widgets.php:297
|
793 |
msgid "Descending"
|
794 |
msgstr ""
|
795 |
|
796 |
+
#: google-calendar-events/views/widgets.php:302
|
797 |
+
msgid "Events per Page (List View only):"
|
798 |
msgstr ""
|
799 |
|
800 |
+
#: google-calendar-events/views/widgets.php:315
|
801 |
+
msgid ""
|
802 |
+
"This setting will pull from the custom date range set in the main feed "
|
803 |
+
"settings and cannot be changed here."
|
804 |
+
msgstr ""
|
805 |
+
|
806 |
+
#: google-calendar-events/views/widgets.php:319
|
807 |
msgid "Display Start Date Offset (List View only):"
|
808 |
msgstr ""
|
809 |
|
810 |
+
#: google-calendar-events/views/widgets.php:330
|
811 |
msgid ""
|
812 |
"Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped "
|
813 |
"lists always have a title displayed."
|
screenshot-1.png
CHANGED
Binary file
|
screenshot-2.png
CHANGED
Binary file
|
screenshot-3.png
CHANGED
Binary file
|
screenshot-4.png
CHANGED
Binary file
|
screenshot-5.png
CHANGED
Binary file
|
screenshot-6.png
CHANGED
Binary file
|
screenshot-7.png
CHANGED
Binary file
|
uninstall.php
CHANGED
@@ -26,7 +26,13 @@ if ( empty( $general['save_settings'] ) ) {
|
|
26 |
'post_status' => array(
|
27 |
'any',
|
28 |
'trash',
|
29 |
-
'auto-draft'
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
)
|
31 |
));
|
32 |
|
@@ -55,6 +61,32 @@ if ( empty( $general['save_settings'] ) ) {
|
|
55 |
delete_post_meta_by_key( 'gce_list_max_length' );
|
56 |
delete_post_meta_by_key( 'gce_list_start_offset_num' );
|
57 |
delete_post_meta_by_key( 'gce_list_start_offset_direction' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
// Remove options
|
60 |
delete_option( 'gce_upgrade_has_run' );
|
26 |
'post_status' => array(
|
27 |
'any',
|
28 |
'trash',
|
29 |
+
'auto-draft',
|
30 |
+
'trash',
|
31 |
+
'draft',
|
32 |
+
'pending',
|
33 |
+
'future',
|
34 |
+
'private',
|
35 |
+
'inherit'
|
36 |
)
|
37 |
));
|
38 |
|
61 |
delete_post_meta_by_key( 'gce_list_max_length' );
|
62 |
delete_post_meta_by_key( 'gce_list_start_offset_num' );
|
63 |
delete_post_meta_by_key( 'gce_list_start_offset_direction' );
|
64 |
+
delete_post_meta_by_key( 'old_gce_id' );
|
65 |
+
delete_post_meta_by_key( 'gce_display_link' );
|
66 |
+
delete_post_meta_by_key( 'gce_display_link_text' );
|
67 |
+
delete_post_meta_by_key( 'gce_display_end' );
|
68 |
+
delete_post_meta_by_key( 'gce_display_end_text' );
|
69 |
+
delete_post_meta_by_key( 'gce_display_separator' );
|
70 |
+
delete_post_meta_by_key( 'gce_display_location_text' );
|
71 |
+
delete_post_meta_by_key( 'gce_display_description_text' );
|
72 |
+
delete_post_meta_by_key( 'gce_expand_recurring' );
|
73 |
+
delete_post_meta_by_key( 'gce_feed_end' );
|
74 |
+
delete_post_meta_by_key( 'gce_feed_end_interval' );
|
75 |
+
delete_post_meta_by_key( 'gce_display_start' );
|
76 |
+
delete_post_meta_by_key( 'gce_display_start_text' );
|
77 |
+
delete_post_meta_by_key( 'gce_paging_widget' );
|
78 |
+
delete_post_meta_by_key( 'gce_widget_paging_interval' );
|
79 |
+
delete_post_meta_by_key( 'gce_feed_end_custom' );
|
80 |
+
delete_post_meta_by_key( 'gce_feed_end_num' );
|
81 |
+
delete_post_meta_by_key( 'gce_feed_start_custom' );
|
82 |
+
delete_post_meta_by_key( 'gce_feed_start_num' );
|
83 |
+
delete_post_meta_by_key( 'gce_per_page_to' );
|
84 |
+
delete_post_meta_by_key( 'gce_per_page_from' );
|
85 |
+
delete_post_meta_by_key( 'gce_per_page_num' );
|
86 |
+
delete_post_meta_by_key( 'gce_events_per_page' );
|
87 |
+
delete_post_meta_by_key( 'gce_end_date' );
|
88 |
+
delete_post_meta_by_key( 'gce_date_range' );
|
89 |
+
delete_post_meta_by_key( 'gce_start_date' );
|
90 |
|
91 |
// Remove options
|
92 |
delete_option( 'gce_upgrade_has_run' );
|
views/admin/api-settings-notice.php
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* Show notice for API Settings
|
5 |
-
*
|
6 |
-
* @package GCE
|
7 |
-
* @subpackage admin/views
|
8 |
-
* @author Phil Derksen <pderksen@gmail.com>, Nick Young <mycorpweb@gmail.com>
|
9 |
-
*/
|
10 |
-
|
11 |
-
// Exit if accessed directly.
|
12 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
13 |
-
exit;
|
14 |
-
}
|
15 |
-
|
16 |
-
?>
|
17 |
-
|
18 |
-
<style>
|
19 |
-
/* #gce-install-notice .button-primary, */
|
20 |
-
#gce-install-notice .button-secondary {
|
21 |
-
margin-left: 15px;
|
22 |
-
}
|
23 |
-
</style>
|
24 |
-
|
25 |
-
<div id="gce-install-notice" class="updated">
|
26 |
-
<p>
|
27 |
-
<strong><?php echo __( 'GCal Events Important Update (Nov. 19, 2014):', 'gce' ); ?></strong><br/>
|
28 |
-
<?php echo __( 'GCal Events now uses the Google API version 3, which requires use of a public key.', 'gce' ); ?>
|
29 |
-
<?php echo __( 'By default a shared key is used across all plugin users, which is limited to 500,000 requests per day and 5 requests per second.', 'gce' ); ?>
|
30 |
-
<?php echo __( 'To avoid these limits you can use your own Google API key.', 'gce' ); ?>
|
31 |
-
</p>
|
32 |
-
<p>
|
33 |
-
<a href="<?php echo admin_url( 'edit.php?post_type=gce_feed&page=google-calendar-events_general_settings' ); ?>" class="button-primary"><?php _e( 'Update your API settings now', 'gce' ); ?></a>
|
34 |
-
<a href="<?php echo add_query_arg( 'gce-dismiss-install-nag', 1 ); ?>" class="button-secondary"><?php _e( 'Hide this', 'gce' ); ?></a>
|
35 |
-
</p>
|
36 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
views/admin/display-options-meta.php
CHANGED
@@ -51,7 +51,7 @@
|
|
51 |
<option value="date-time" <?php selected( $gce_display_start, 'date-time', true ); ?>><?php _e( 'Start date and time', 'gce' ); ?></option>
|
52 |
</select>
|
53 |
<label class="description" for="gce_display_start_text"><?php _e( 'Text to display before the start time.', 'gce' ); ?></label>
|
54 |
-
<input type="text" name="gce_display_start_text" id="gce_display_start_text" value="<?php echo $gce_display_start_text; ?>" />
|
55 |
</div>
|
56 |
|
57 |
<div class="gce-meta-control">
|
@@ -65,7 +65,7 @@
|
|
65 |
<option value="date-time" <?php selected( $gce_display_end, 'date-time', true ); ?>><?php _e( 'End date and time', 'gce' ); ?></option>
|
66 |
</select>
|
67 |
<label class="description" for="gce_display_end_text"><?php _e( 'Text to display before the end time.', 'gce' ); ?></label>
|
68 |
-
<input type="text" name="gce_display_end_text" id="gce_display_end_text" value="<?php echo $gce_display_end_text; ?>" />
|
69 |
</div>
|
70 |
|
71 |
<div class="gce-meta-control">
|
@@ -73,7 +73,7 @@
|
|
73 |
<label class="description" for="gce_display_separator">
|
74 |
<?php _e( 'If you have chosen to display both the time and date above, enter the text / characters to display between the time and date here (including any spaces).' , 'gce' ); ?>
|
75 |
</label>
|
76 |
-
<input type="text" name="gce_display_separator" id="gce_display_separator" value="<?php echo $gce_display_separator; ?>" />
|
77 |
</div>
|
78 |
|
79 |
<div class="gce-meta-control">
|
@@ -81,7 +81,7 @@
|
|
81 |
<p><input type="checkbox" name="gce_display_location" id="gce_display_location" value="1" <?php checked( $gce_display_location, '1' ); ?> />
|
82 |
<label for="gce_display_location"><?php _e( 'Show the location of events?', 'gce' ); ?></label></p>
|
83 |
<label class="description" for="gce_display_location_text"><?php _e( 'Text to display before the location.', 'gce' ); ?></label>
|
84 |
-
<input type="text" name="gce_display_location_text" id="gce_display_location_text" value="<?php echo $gce_display_location_text; ?>" />
|
85 |
</div>
|
86 |
|
87 |
<div class="gce-meta-control">
|
@@ -91,9 +91,9 @@
|
|
91 |
<label for="gce_display_description"><?php _e( 'Show the description of events? (URLs in the description will be made into links).', 'gce' ); ?></label>
|
92 |
</p>
|
93 |
<label class="description" for="gce_display_description_text"><?php _e( 'Text to display before the description.', 'gce' ); ?></label>
|
94 |
-
<input type="text" name="gce_display_description_text" id="gce_display_description_text" value="<?php echo $gce_display_description_text; ?>" />
|
95 |
<label class="description" for="gce_display_description_max"><?php _e( 'Maximum number of words to show from description. Leave blank for no limit.', 'gce' ); ?></label>
|
96 |
-
<input type="text" name="gce_display_description_max" id="gce_display_description_max" value="<?php echo $gce_display_description_max; ?>" />
|
97 |
</div>
|
98 |
|
99 |
<div class="gce-meta-control">
|
@@ -107,6 +107,6 @@
|
|
107 |
<label for="gce_display_link_tab"><?php _e( 'Links open in a new window / tab?', 'gce' ); ?></label>
|
108 |
</p>
|
109 |
<label class="description" for="gce_display_link_text"><?php _e( 'The link text to be displayed.', 'gce' ); ?></label>
|
110 |
-
<input type="text" name="gce_display_link_text" id="gce_display_link_text" value="<?php echo $gce_display_link_text; ?>" />
|
111 |
</div>
|
112 |
</div>
|
51 |
<option value="date-time" <?php selected( $gce_display_start, 'date-time', true ); ?>><?php _e( 'Start date and time', 'gce' ); ?></option>
|
52 |
</select>
|
53 |
<label class="description" for="gce_display_start_text"><?php _e( 'Text to display before the start time.', 'gce' ); ?></label>
|
54 |
+
<input type="text" name="gce_display_start_text" id="gce_display_start_text" value="<?php echo esc_attr( $gce_display_start_text ); ?>" />
|
55 |
</div>
|
56 |
|
57 |
<div class="gce-meta-control">
|
65 |
<option value="date-time" <?php selected( $gce_display_end, 'date-time', true ); ?>><?php _e( 'End date and time', 'gce' ); ?></option>
|
66 |
</select>
|
67 |
<label class="description" for="gce_display_end_text"><?php _e( 'Text to display before the end time.', 'gce' ); ?></label>
|
68 |
+
<input type="text" name="gce_display_end_text" id="gce_display_end_text" value="<?php echo esc_attr( $gce_display_end_text ); ?>" />
|
69 |
</div>
|
70 |
|
71 |
<div class="gce-meta-control">
|
73 |
<label class="description" for="gce_display_separator">
|
74 |
<?php _e( 'If you have chosen to display both the time and date above, enter the text / characters to display between the time and date here (including any spaces).' , 'gce' ); ?>
|
75 |
</label>
|
76 |
+
<input type="text" name="gce_display_separator" id="gce_display_separator" value="<?php echo esc_attr( $gce_display_separator ); ?>" />
|
77 |
</div>
|
78 |
|
79 |
<div class="gce-meta-control">
|
81 |
<p><input type="checkbox" name="gce_display_location" id="gce_display_location" value="1" <?php checked( $gce_display_location, '1' ); ?> />
|
82 |
<label for="gce_display_location"><?php _e( 'Show the location of events?', 'gce' ); ?></label></p>
|
83 |
<label class="description" for="gce_display_location_text"><?php _e( 'Text to display before the location.', 'gce' ); ?></label>
|
84 |
+
<input type="text" name="gce_display_location_text" id="gce_display_location_text" value="<?php echo esc_attr( $gce_display_location_text ); ?>" />
|
85 |
</div>
|
86 |
|
87 |
<div class="gce-meta-control">
|
91 |
<label for="gce_display_description"><?php _e( 'Show the description of events? (URLs in the description will be made into links).', 'gce' ); ?></label>
|
92 |
</p>
|
93 |
<label class="description" for="gce_display_description_text"><?php _e( 'Text to display before the description.', 'gce' ); ?></label>
|
94 |
+
<input type="text" name="gce_display_description_text" id="gce_display_description_text" value="<?php echo esc_attr( $gce_display_description_text ); ?>" />
|
95 |
<label class="description" for="gce_display_description_max"><?php _e( 'Maximum number of words to show from description. Leave blank for no limit.', 'gce' ); ?></label>
|
96 |
+
<input type="text" name="gce_display_description_max" id="gce_display_description_max" value="<?php echo esc_attr( $gce_display_description_max ); ?>" />
|
97 |
</div>
|
98 |
|
99 |
<div class="gce-meta-control">
|
107 |
<label for="gce_display_link_tab"><?php _e( 'Links open in a new window / tab?', 'gce' ); ?></label>
|
108 |
</p>
|
109 |
<label class="description" for="gce_display_link_text"><?php _e( 'The link text to be displayed.', 'gce' ); ?></label>
|
110 |
+
<input type="text" name="gce_display_link_text" id="gce_display_link_text" value="<?php echo esc_attr( $gce_display_link_text ); ?>" />
|
111 |
</div>
|
112 |
</div>
|
views/admin/gce-feed-meta-display.php
CHANGED
@@ -28,38 +28,52 @@
|
|
28 |
$gce_search_query = get_post_meta( $post->ID, 'gce_search_query', true );
|
29 |
$gce_expand_recurring = get_post_meta( $post->ID, 'gce_expand_recurring', true );
|
30 |
$gce_paging = get_post_meta( $post->ID, 'gce_paging', true );
|
31 |
-
$
|
32 |
-
$
|
33 |
$gce_list_start_offset_num = get_post_meta( $post->ID, 'gce_list_start_offset_num', true );
|
34 |
$gce_list_start_offset_direction = get_post_meta( $post->ID, 'gce_list_start_offset_direction', true );
|
35 |
$gce_feed_start = get_post_meta( $post->ID, 'gce_feed_start', true );
|
36 |
-
$
|
37 |
$gce_feed_end = get_post_meta( $post->ID, 'gce_feed_end', true );
|
38 |
-
$
|
|
|
|
|
39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
if( empty( $gce_list_start_offset_num ) ) {
|
41 |
$gce_list_start_offset_num = 0;
|
42 |
}
|
43 |
|
44 |
if( empty( $gce_feed_start ) ) {
|
45 |
-
$gce_feed_start =
|
46 |
}
|
47 |
|
48 |
if( empty( $gce_feed_end ) ) {
|
49 |
-
$gce_feed_end =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
}
|
51 |
?>
|
52 |
|
53 |
<div id="gce-admin-promo">
|
54 |
-
<?php echo __( 'We\'re <strong>smack dab</strong> in the middle of building additional features for this plugin. Have ideas?', 'gce' ); ?>
|
55 |
-
<strong>
|
56 |
-
<a href="https://trello.com/b/ZQSzsarY" target="_blank">
|
57 |
-
<?php echo __( 'Visit our roadmap and tell us what you\'re looking for', 'gce' ); ?>
|
58 |
-
</a>
|
59 |
-
</strong>
|
60 |
-
<br/>
|
61 |
-
<br/>
|
62 |
-
|
63 |
<?php echo __( 'Want to be in the know?', 'gce' ); ?>
|
64 |
<strong>
|
65 |
<a href="http://eepurl.com/0_VsT" target="_blank">
|
@@ -82,11 +96,11 @@
|
|
82 |
<tr>
|
83 |
<th scope="row"><label for="gce_feed_url"><?php _e( 'Google Calendar ID', 'gce' ); ?></label></th>
|
84 |
<td>
|
85 |
-
<input type="text" class="regular-text" style="width: 30em;" name="gce_feed_url" id="gce_feed_url" value="<?php echo $gce_feed_url; ?>" />
|
86 |
<p class="description">
|
87 |
<?php _e( 'The Google Calendar ID.', 'gce' ); ?> <?php _e( 'Example', 'gce' ); ?>:<br/>
|
88 |
<code>umsb0ekhivs1a2ubtq6vlqvcjk@group.calendar.google.com</code><br/>
|
89 |
-
<a href="<?php echo gce_ga_campaign_url( 'http://wpdocs.philderksen.com/google-calendar-events/getting-started/find-calendar-id/', 'gce_lite', 'settings_link', 'docs' ); ?>" target="_blank"><?php _e( 'How to find your
|
90 |
</p>
|
91 |
</td>
|
92 |
</tr>
|
@@ -94,7 +108,7 @@
|
|
94 |
<tr>
|
95 |
<th scope="row"><label for="gce_search_query"><?php _e( 'Search Query', 'gce' ); ?></label></th>
|
96 |
<td>
|
97 |
-
<input type="text" class="" name="gce_search_query" id="gce_search_query" value="<?php echo $gce_search_query; ?>" />
|
98 |
<p class="description"><?php _e( 'Find and show events based on a search query.', 'gce' ); ?></p>
|
99 |
</td>
|
100 |
</tr>
|
@@ -103,117 +117,150 @@
|
|
103 |
<th scope="row"><label for="gce_expand_recurring"><?php _e( 'Expand Recurring Events?', 'gce' ); ?></label></th>
|
104 |
<td>
|
105 |
<input type="checkbox" name="gce_expand_recurring" id="gce_expand_recurring" value="1" <?php checked( $gce_expand_recurring, '1' ); ?> /> <?php _e( 'Yes', 'gce' ); ?>
|
106 |
-
<p class="description"><?php _e( '
|
107 |
</td>
|
108 |
</tr>
|
109 |
|
110 |
<tr>
|
111 |
-
<th scope="row"><label for="
|
112 |
<td>
|
113 |
-
<input type="
|
114 |
-
<p class="description">
|
115 |
-
<?php printf( __( 'Use %sPHP date formatting%s.', 'gce' ), '<a href="http://php.net/manual/en/function.date.php" target="_blank">', '</a>' ); ?>
|
116 |
-
<?php _e( 'Leave blank to use the default.', 'gce' ); ?>
|
117 |
-
</p>
|
118 |
</td>
|
119 |
</tr>
|
120 |
|
121 |
<tr>
|
122 |
-
<th scope="row"><label for="
|
123 |
<td>
|
124 |
-
<
|
125 |
-
|
126 |
-
<?php
|
127 |
-
<?php
|
128 |
-
|
|
|
|
|
129 |
</td>
|
130 |
</tr>
|
131 |
-
|
132 |
-
<tr>
|
133 |
-
<th scope="row"><label for="
|
134 |
-
<td>
|
135 |
-
<input type="text" class="" name="gce_cache" id="gce_cache" value="<?php echo $gce_cache; ?>" />
|
136 |
-
<p class="description"><?php _e( 'The length of time, in seconds, to cache the feed (43200 = 12 hours). If this feed changes regularly, you may want to reduce the cache duration.', 'gce' ); ?></p>
|
137 |
<td>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
</tr>
|
139 |
-
|
140 |
-
<tr>
|
141 |
-
<th scope="row"><label for="
|
142 |
<td>
|
143 |
-
<
|
144 |
-
|
|
|
|
|
|
|
|
|
145 |
</td>
|
146 |
</tr>
|
147 |
-
|
148 |
-
<tr>
|
149 |
-
<th scope="row"><label for="
|
150 |
<td>
|
151 |
-
<select
|
152 |
-
<option value="
|
153 |
-
<option value="
|
154 |
-
<option value="
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
</select>
|
156 |
-
<
|
|
|
|
|
|
|
157 |
</td>
|
158 |
</tr>
|
159 |
|
160 |
-
<tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
161 |
<th scope="row"><label for="gce_paging"><?php _e( 'Show Paging Links', 'gce' ); ?></label></th>
|
162 |
<td>
|
163 |
-
<input type="checkbox" name="gce_paging" id="gce_paging" value="1" <?php checked( $gce_paging, '1' ); ?> />
|
|
|
164 |
</td>
|
165 |
</tr>
|
166 |
|
167 |
<tr>
|
168 |
-
<th scope="row"><label for="
|
169 |
<td>
|
170 |
-
<input type="
|
171 |
-
|
172 |
-
<option value="days" <?php selected( $gce_list_max_length, 'days', true ); ?>><?php _e( 'Days', 'gce' ); ?></option>
|
173 |
-
<option value="events" <?php selected( $gce_list_max_length, 'events', true ); ?>><?php _e( 'Events', 'gce' ); ?></option>
|
174 |
-
</select>
|
175 |
-
<p class="description"><?php _e( 'How many events to display per page (List View only).', 'gce' ); ?></p>
|
176 |
</td>
|
177 |
</tr>
|
178 |
|
179 |
<tr>
|
180 |
-
<th scope="row"><label for="
|
181 |
<td>
|
182 |
-
<input type="
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
<p class="description"><?php _e( 'Change if you need to initially display events on a date other than today (List View only).', 'gce' ); ?></p>
|
189 |
-
</td>
|
190 |
</tr>
|
191 |
|
192 |
<tr>
|
193 |
-
<th scope="row"><label for="
|
194 |
<td>
|
195 |
-
<input type="
|
196 |
-
<
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
<?php _e( 'back', 'gce' ); ?>
|
202 |
-
<p class="description"><?php _e( 'Set how far back to retrieve events regardless of month or page being displayed.', 'gce' ); ?></p>
|
203 |
-
</td>
|
204 |
</tr>
|
205 |
|
206 |
<tr>
|
207 |
-
<th scope="row"><label for="
|
208 |
<td>
|
209 |
-
<input type="
|
210 |
-
<
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
<
|
217 |
-
</td>
|
218 |
</tr>
|
219 |
</table>
|
28 |
$gce_search_query = get_post_meta( $post->ID, 'gce_search_query', true );
|
29 |
$gce_expand_recurring = get_post_meta( $post->ID, 'gce_expand_recurring', true );
|
30 |
$gce_paging = get_post_meta( $post->ID, 'gce_paging', true );
|
31 |
+
$gce_events_per_page = get_post_meta( $post->ID, 'gce_events_per_page', true );
|
32 |
+
$gce_per_page_num = get_post_meta( $post->ID, 'gce_per_page_num', true );
|
33 |
$gce_list_start_offset_num = get_post_meta( $post->ID, 'gce_list_start_offset_num', true );
|
34 |
$gce_list_start_offset_direction = get_post_meta( $post->ID, 'gce_list_start_offset_direction', true );
|
35 |
$gce_feed_start = get_post_meta( $post->ID, 'gce_feed_start', true );
|
36 |
+
$gce_feed_start_num = get_post_meta( $post->ID, 'gce_feed_start_num', true );
|
37 |
$gce_feed_end = get_post_meta( $post->ID, 'gce_feed_end', true );
|
38 |
+
$gce_feed_end_num = get_post_meta( $post->ID, 'gce_feed_end_num', true );
|
39 |
+
$gce_feed_range_start = get_post_meta( $post->ID, 'gce_feed_range_start', true );
|
40 |
+
$gce_feed_range_end = get_post_meta( $post->ID, 'gce_feed_range_end', true );
|
41 |
|
42 |
+
|
43 |
+
$use_range = ( selected( $gce_display_mode, 'date-range', false ) ? true : false );
|
44 |
+
|
45 |
+
if( empty( $gce_events_per_page ) ) {
|
46 |
+
$gce_events_per_page = 'days';
|
47 |
+
}
|
48 |
+
|
49 |
+
$gce_show_tooltips = get_post_meta( $post->ID, 'gce_show_tooltips', true );
|
50 |
+
|
51 |
if( empty( $gce_list_start_offset_num ) ) {
|
52 |
$gce_list_start_offset_num = 0;
|
53 |
}
|
54 |
|
55 |
if( empty( $gce_feed_start ) ) {
|
56 |
+
$gce_feed_start = 'years';
|
57 |
}
|
58 |
|
59 |
if( empty( $gce_feed_end ) ) {
|
60 |
+
$gce_feed_end = 'years';
|
61 |
+
}
|
62 |
+
|
63 |
+
if( empty( $gce_feed_start_num ) ) {
|
64 |
+
$gce_feed_start_num = 1;
|
65 |
+
}
|
66 |
+
|
67 |
+
if( empty( $gce_feed_end_num ) ) {
|
68 |
+
$gce_feed_end_num = 1;
|
69 |
+
}
|
70 |
+
|
71 |
+
if( empty( $gce_per_page_num ) ) {
|
72 |
+
$gce_per_page_num = 7;
|
73 |
}
|
74 |
?>
|
75 |
|
76 |
<div id="gce-admin-promo">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
<?php echo __( 'Want to be in the know?', 'gce' ); ?>
|
78 |
<strong>
|
79 |
<a href="http://eepurl.com/0_VsT" target="_blank">
|
96 |
<tr>
|
97 |
<th scope="row"><label for="gce_feed_url"><?php _e( 'Google Calendar ID', 'gce' ); ?></label></th>
|
98 |
<td>
|
99 |
+
<input type="text" class="regular-text" style="width: 30em;" name="gce_feed_url" id="gce_feed_url" value="<?php echo esc_attr( $gce_feed_url ); ?>" />
|
100 |
<p class="description">
|
101 |
<?php _e( 'The Google Calendar ID.', 'gce' ); ?> <?php _e( 'Example', 'gce' ); ?>:<br/>
|
102 |
<code>umsb0ekhivs1a2ubtq6vlqvcjk@group.calendar.google.com</code><br/>
|
103 |
+
<a href="<?php echo gce_ga_campaign_url( 'http://wpdocs.philderksen.com/google-calendar-events/getting-started/find-calendar-id/', 'gce_lite', 'settings_link', 'docs' ); ?>" target="_blank"><?php _e( 'How to find your Google Calendar ID', 'gce' ); ?></a>
|
104 |
</p>
|
105 |
</td>
|
106 |
</tr>
|
108 |
<tr>
|
109 |
<th scope="row"><label for="gce_search_query"><?php _e( 'Search Query', 'gce' ); ?></label></th>
|
110 |
<td>
|
111 |
+
<input type="text" class="" name="gce_search_query" id="gce_search_query" value="<?php echo esc_attr( $gce_search_query ); ?>" />
|
112 |
<p class="description"><?php _e( 'Find and show events based on a search query.', 'gce' ); ?></p>
|
113 |
</td>
|
114 |
</tr>
|
117 |
<th scope="row"><label for="gce_expand_recurring"><?php _e( 'Expand Recurring Events?', 'gce' ); ?></label></th>
|
118 |
<td>
|
119 |
<input type="checkbox" name="gce_expand_recurring" id="gce_expand_recurring" value="1" <?php checked( $gce_expand_recurring, '1' ); ?> /> <?php _e( 'Yes', 'gce' ); ?>
|
120 |
+
<p class="description"><?php _e( 'Display recurring events each time they occur. If disabled, events will be displayed only the first time they occur.', 'gce' ); ?></p>
|
121 |
</td>
|
122 |
</tr>
|
123 |
|
124 |
<tr>
|
125 |
+
<th scope="row"><label for="gce_multi_day_events"><?php _e( 'Multiple Day Events', 'gce' ); ?></label></th>
|
126 |
<td>
|
127 |
+
<input type="checkbox" name="gce_multi_day_events" id="gce_multi_day_events" value="1" <?php checked( $gce_multi_day_events, '1' ); ?> /> <?php _e( 'Show on each day', 'gce' ); ?>
|
128 |
+
<p class="description"><?php _e( 'Display multiple day events on each day that they span. If disabled, multiple day events will be displayed only on the first day they occur.', 'gce' ); ?></p>
|
|
|
|
|
|
|
129 |
</td>
|
130 |
</tr>
|
131 |
|
132 |
<tr>
|
133 |
+
<th scope="row"><label for="gce_display_mode"><?php _e( 'Display Mode', 'gce' ); ?></label></th>
|
134 |
<td>
|
135 |
+
<select name="gce_display_mode" id="gce_display_mode">
|
136 |
+
<option value="grid" <?php selected( $gce_display_mode, 'grid', true ); ?>><?php _e( 'Grid (Month view)', 'gce' ); ?></option>
|
137 |
+
<option value="list" <?php selected( $gce_display_mode, 'list', true ); ?>><?php _e( 'List', 'gce' ); ?></option>
|
138 |
+
<option value="list-grouped" <?php selected( $gce_display_mode, 'list-grouped', true ); ?>><?php _e( 'Grouped List', 'gce' ); ?></option>
|
139 |
+
<option value="date-range" <?php selected( $gce_display_mode, 'date-range', true ); ?>><?php _e( 'Custom Date Range (List)', 'gce' ); ?></option>
|
140 |
+
</select>
|
141 |
+
<p class="description"><?php _e( 'Select how to display this feed.', 'gce' ); ?></p>
|
142 |
</td>
|
143 |
</tr>
|
144 |
+
|
145 |
+
<tr class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
146 |
+
<th scope="row"><label for="gce_events_per_page"><?php _e( 'Events per Page', 'gce' ); ?></label></th>
|
|
|
|
|
|
|
147 |
<td>
|
148 |
+
<select id="gce_events_per_page" name="gce_events_per_page">
|
149 |
+
<option value="days" <?php selected( $gce_events_per_page, 'days', true ); ?>><?php _e( 'Number of Days', 'gce' ); ?></option>
|
150 |
+
<option value="events" <?php selected( $gce_events_per_page, 'events', true ); ?>><?php _e( 'Number of Events', 'gce' ); ?></option>
|
151 |
+
<option value="week" <?php selected( $gce_events_per_page, 'week', true ); ?>><?php _e( 'One Week', 'gce' ); ?></option>
|
152 |
+
<option value="month" <?php selected( $gce_events_per_page, 'month', true ); ?>><?php _e( 'One Month', 'gce' ); ?></option>
|
153 |
+
</select>
|
154 |
+
<span class="gce_per_page_num_wrap <?php echo ( $gce_events_per_page != 'days' && $gce_events_per_page != 'events' ? 'gce-admin-hidden' : '' ); ?>">
|
155 |
+
<input type="number" min="0" step="1" class="small-text" name="gce_per_page_num" id="gce_per_page_num" value="<?php echo esc_attr( $gce_per_page_num ); ?>" />
|
156 |
+
</span>
|
157 |
+
<p class="description"><?php _e( 'How many events to display per page (List View only).', 'gce' ); ?></p>
|
158 |
+
</td>
|
159 |
</tr>
|
160 |
+
|
161 |
+
<tr class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
162 |
+
<th scope="row"><label for="gce_list_start_offset_num"><?php _e( 'Display Start Date Offset', 'gce' ); ?></label></th>
|
163 |
<td>
|
164 |
+
<select name="gce_list_start_offset_direction" id="gce_list_start_offset_direction">
|
165 |
+
<option value="back" <?php selected( $gce_list_start_offset_direction, 'back', true ); ?>><?php _e( 'Number of Days Back', 'gce' ); ?></option>
|
166 |
+
<option value="ahead" <?php selected( $gce_list_start_offset_direction, 'ahead', true ); ?>><?php _e( 'Number of Days Forward', 'gce' ); ?></option>
|
167 |
+
</select>
|
168 |
+
<input type="number" min="0" step="1" class="small-text" id="gce_list_start_offset_num" name="gce_list_start_offset_num" value="<?php echo esc_attr( $gce_list_start_offset_num ); ?>" />
|
169 |
+
<p class="description"><?php _e( 'Change to initially display events on a date other than today (List View only).', 'gce' ); ?></p>
|
170 |
</td>
|
171 |
</tr>
|
172 |
+
|
173 |
+
<tr class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
174 |
+
<th scope="row"><label for="gce_feed_start"><?php _e( 'Earliest Feed Event Date', 'gce' ); ?></label></th>
|
175 |
<td>
|
176 |
+
<select id="gce_feed_start" name="gce_feed_start">
|
177 |
+
<option value="days" <?php selected( $gce_feed_start, 'days', true ); ?>><?php _e( 'Number of Days Back', 'gce' ); ?></option>
|
178 |
+
<option value="months" <?php selected( $gce_feed_start, 'months', true ); ?>><?php _e( 'Number of Months Back', 'gce' ); ?></option>
|
179 |
+
<option value="years" <?php selected( $gce_feed_start, 'years', true ); ?>><?php _e( 'Number of Years Back', 'gce' ); ?></option>
|
180 |
+
</select>
|
181 |
+
<span class="gce_feed_start_num_wrap <?php echo ( $gce_feed_start == 'custom' ? 'gce-admin-hidden' : '' ); ?>">
|
182 |
+
<input type="number" min="0" step="1" class="small-text" id="gce_feed_start_num" name="gce_feed_start_num" value="<?php echo esc_attr( $gce_feed_start_num ); ?>" />
|
183 |
+
</span>
|
184 |
+
<p class="description"><?php _e( 'Set how far back to retrieve events regardless of initial display.', 'gce' ); ?></p>
|
185 |
+
</td>
|
186 |
+
</tr>
|
187 |
+
|
188 |
+
<tr class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
189 |
+
<th scope="row"><label for="gce_feed_end"><?php _e( 'Latest Feed Event Date', 'gce' ); ?></label></th>
|
190 |
+
<td>
|
191 |
+
<select id="gce_feed_end" name="gce_feed_end">
|
192 |
+
<option value="days" <?php selected( $gce_feed_end, 'days', true ); ?>><?php _e( 'Number of Days Forward', 'gce' ); ?></option>
|
193 |
+
<option value="months" <?php selected( $gce_feed_end, 'months', true ); ?>><?php _e( 'Number of Months Forward', 'gce' ); ?></option>
|
194 |
+
<option value="years" <?php selected( $gce_feed_end, 'years', true ); ?>><?php _e( 'Number of Years Forward', 'gce' ); ?></option>
|
195 |
</select>
|
196 |
+
<span class="gce_feed_end_num_wrap <?php echo ( $gce_feed_end == 'custom' ? 'gce-admin-hidden' : '' ); ?>">
|
197 |
+
<input type="number" min="0" step="1" class="small-text" id="gce_feed_end_num" name="gce_feed_end_num" value="<?php echo esc_attr( $gce_feed_end_num ); ?>" />
|
198 |
+
</span>
|
199 |
+
<p class="description"><?php _e( 'Set how far in the future to retrieve events regardless of initial display.', 'gce' ); ?></p>
|
200 |
</td>
|
201 |
</tr>
|
202 |
|
203 |
+
<tr class="gce-custom-range <?php echo ( $use_range == true ? '' : 'gce-admin-hidden' ); ?>">
|
204 |
+
<th scope="row"><label for="gce_feed_use_range"><?php _e( 'Use Custom Date Range', 'gce' ); ?></label></th>
|
205 |
+
<td>
|
206 |
+
<span>
|
207 |
+
<input type="text" name="gce_feed_range_start" id="gce_feed_range_start" value="<?php echo esc_attr( $gce_feed_range_start ); ?>" />
|
208 |
+
<?php _ex( 'to', 'separator between custom date range fields', 'gce' ); ?>
|
209 |
+
<input type="text" id="gce_feed_range_end" name="gce_feed_range_end" value="<?php echo esc_attr( $gce_feed_range_end ); ?>" />
|
210 |
+
<p class="description"><?php _e( 'Set a specific range of events to retrieve.', 'gce' ); ?></p>
|
211 |
+
</span>
|
212 |
+
</td>
|
213 |
+
</tr>
|
214 |
+
|
215 |
+
<tr class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
216 |
<th scope="row"><label for="gce_paging"><?php _e( 'Show Paging Links', 'gce' ); ?></label></th>
|
217 |
<td>
|
218 |
+
<input type="checkbox" name="gce_paging" id="gce_paging" value="1" <?php checked( $gce_paging, '1' ); ?> />
|
219 |
+
<?php _e( 'Display Next and Back navigation links.', 'gce' ); ?>
|
220 |
</td>
|
221 |
</tr>
|
222 |
|
223 |
<tr>
|
224 |
+
<th scope="row"><label for="gce_show_tooltips"><?php _e( 'Show Tooltips', 'gce' ); ?></label></th>
|
225 |
<td>
|
226 |
+
<input type="checkbox" name="gce_show_tooltips" id="gce_show_tooltips" value="1" <?php checked( $gce_show_tooltips, '1' ); ?> />
|
227 |
+
<?php _e( 'Display tooltips when hovering over events (Grid View only).', 'gce' ); ?>
|
|
|
|
|
|
|
|
|
228 |
</td>
|
229 |
</tr>
|
230 |
|
231 |
<tr>
|
232 |
+
<th scope="row"><label for="gce_date_format"><?php _e( 'Date Format', 'gce' ); ?></label></th>
|
233 |
<td>
|
234 |
+
<input type="text" class="" name="gce_date_format" id="gce_date_format" value="<?php echo esc_attr( $gce_date_format ); ?>" />
|
235 |
+
<p class="description">
|
236 |
+
<?php printf( __( 'Use %sPHP date formatting%s.', 'gce' ), '<a href="http://php.net/manual/en/function.date.php" target="_blank">', '</a>' ); ?>
|
237 |
+
<?php _e( 'Leave blank to use the default.', 'gce' ); ?>
|
238 |
+
</p>
|
239 |
+
</td>
|
|
|
|
|
240 |
</tr>
|
241 |
|
242 |
<tr>
|
243 |
+
<th scope="row"><label for="gce_time_format"><?php _e( 'Time Format', 'gce' ); ?></label></th>
|
244 |
<td>
|
245 |
+
<input type="text" class="" name="gce_time_format" id="gce_time_format" value="<?php echo esc_attr( $gce_time_format ); ?>" />
|
246 |
+
<p class="description">
|
247 |
+
<?php printf( __( 'Use %sPHP date formatting%s.', 'gce' ), '<a href="http://php.net/manual/en/function.date.php" target="_blank">', '</a>' ); ?>
|
248 |
+
<?php _e( 'Leave blank to use the default.', 'gce' ); ?>
|
249 |
+
</p>
|
250 |
+
</td>
|
|
|
|
|
|
|
251 |
</tr>
|
252 |
|
253 |
<tr>
|
254 |
+
<th scope="row"><label for="gce_cache"><?php _e( 'Cache Duration', 'gce' ); ?></label></th>
|
255 |
<td>
|
256 |
+
<input type="text" class="" name="gce_cache" id="gce_cache" value="<?php echo esc_attr( $gce_cache ); ?>" />
|
257 |
+
<p class="description"><?php _e( 'The length of time, in seconds, to cache the feed (43200 = 12 hours). If this feed changes regularly, you may want to reduce the cache duration.', 'gce' ); ?></p>
|
258 |
+
<td>
|
259 |
+
</tr>
|
260 |
+
|
261 |
+
<tr>
|
262 |
+
<td colspan="2">
|
263 |
+
<input type="button" class="button button-primary button-large gce-feed-update-button" value="Save Changes">
|
264 |
+
</td>
|
265 |
</tr>
|
266 |
</table>
|
views/admin/gce-feed-sidebar-help.php
CHANGED
@@ -5,23 +5,25 @@
|
|
5 |
<a href="<?php echo gce_ga_campaign_url( 'http://wpdocs.philderksen.com/google-calendar-events/', 'gce_lite', 'sidebar_link', 'docs' ); ?>" target="_blank">
|
6 |
<?php _e( 'Documentation & getting started', 'gce' ); ?></a>
|
7 |
</li>
|
8 |
-
|
9 |
<li>
|
10 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
11 |
<a href="https://wordpress.org/support/plugin/google-calendar-events" target="_blank">
|
12 |
<?php _e( 'Community support forums', 'gce' ); ?></a>
|
13 |
</li>
|
14 |
-
|
15 |
<li>
|
16 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
17 |
-
<a href="
|
18 |
-
<?php _e( '
|
19 |
</li>
|
20 |
-
|
21 |
<li>
|
22 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
23 |
-
<a href="https://
|
24 |
-
<?php _e( '
|
|
|
|
|
|
|
|
|
|
|
25 |
</li>
|
26 |
</ul>
|
27 |
</div>
|
5 |
<a href="<?php echo gce_ga_campaign_url( 'http://wpdocs.philderksen.com/google-calendar-events/', 'gce_lite', 'sidebar_link', 'docs' ); ?>" target="_blank">
|
6 |
<?php _e( 'Documentation & getting started', 'gce' ); ?></a>
|
7 |
</li>
|
|
|
8 |
<li>
|
9 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
10 |
<a href="https://wordpress.org/support/plugin/google-calendar-events" target="_blank">
|
11 |
<?php _e( 'Community support forums', 'gce' ); ?></a>
|
12 |
</li>
|
|
|
13 |
<li>
|
14 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
15 |
+
<a href="https://wordpress.org/support/view/plugin-reviews/google-calendar-events#postform" target="_blank">
|
16 |
+
<?php _e( 'Rate this plugin', 'gce' ); ?></a>
|
17 |
</li>
|
|
|
18 |
<li>
|
19 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
20 |
+
<a href="https://trello.com/b/ZQSzsarY" target="_blank">
|
21 |
+
<?php _e( 'View our roadmap & vote', 'gce' ); ?></a>
|
22 |
+
</li>
|
23 |
+
<li>
|
24 |
+
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
25 |
+
<a href="http://eepurl.com/0_VsT" target="_blank">
|
26 |
+
<?php _e( 'Get notified of new features', 'gce' ); ?></a>
|
27 |
</li>
|
28 |
</ul>
|
29 |
</div>
|
views/widgets.php
CHANGED
@@ -27,6 +27,19 @@ class GCE_Widget extends WP_Widget {
|
|
27 |
$name = __( 'Google Calendar Events', 'gce' ),
|
28 |
array( 'description' => __( 'Display a list or calendar grid of events from one or more Google Calendar feeds you have added', 'gce' ) )
|
29 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
}
|
31 |
|
32 |
/**
|
@@ -40,16 +53,40 @@ class GCE_Widget extends WP_Widget {
|
|
40 |
//Output before widget stuff
|
41 |
echo $before_widget;
|
42 |
|
43 |
-
$paging
|
44 |
-
$max_num
|
45 |
-
$max_length
|
46 |
-
$max_events
|
|
|
47 |
|
48 |
// Start offset
|
49 |
$offset_num = ( isset( $instance['list_start_offset_num'] ) ? $instance['list_start_offset_num'] : 0 );
|
50 |
$offset_length = 86400;
|
51 |
$offset_direction = ( isset( $instance['list_start_offset_direction'] ) ? $instance['list_start_offset_direction'] : null );
|
52 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
53 |
|
54 |
if( $offset_direction == 'back' ) {
|
55 |
$offset_direction = -1;
|
@@ -61,12 +98,18 @@ class GCE_Widget extends WP_Widget {
|
|
61 |
|
62 |
$paging_interval = null;
|
63 |
|
|
|
|
|
|
|
|
|
64 |
if( $max_length == 'days' ) {
|
65 |
$paging_interval = $max_num * 86400;
|
66 |
-
}
|
67 |
-
|
68 |
-
if( $max_length == 'events' ) {
|
69 |
$max_events = $max_num;
|
|
|
|
|
|
|
|
|
70 |
}
|
71 |
|
72 |
// Check whether any feeds have been added yet
|
@@ -87,8 +130,13 @@ class GCE_Widget extends WP_Widget {
|
|
87 |
|
88 |
//Check each id is an integer, if not, remove it from the array
|
89 |
foreach ( $feed_ids as $key => $feed_id ) {
|
90 |
-
if ( 0 == absint( $feed_id ) )
|
91 |
unset( $feed_ids[$key] );
|
|
|
|
|
|
|
|
|
|
|
92 |
}
|
93 |
|
94 |
//If at least one of the feed ids entered exists, set no_feeds_exist to false
|
@@ -121,29 +169,42 @@ class GCE_Widget extends WP_Widget {
|
|
121 |
$sort_order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
122 |
|
123 |
$args = array(
|
124 |
-
'title_text'
|
125 |
-
'sort'
|
126 |
-
'month'
|
127 |
-
'year'
|
128 |
-
'widget'
|
129 |
-
'max_events'
|
130 |
-
'start_offset'
|
131 |
-
'paging_type'
|
|
|
|
|
132 |
);
|
133 |
|
134 |
-
if( 'list-grouped' == $
|
135 |
$args['grouped'] = 1;
|
136 |
}
|
137 |
|
138 |
-
|
|
|
|
|
|
|
|
|
|
|
139 |
|
140 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
141 |
}
|
142 |
} else {
|
143 |
if( current_user_can( 'manage_options' ) ) {
|
144 |
_e( 'You have not added any feeds yet.', 'gce' );
|
145 |
} else {
|
146 |
-
|
147 |
}
|
148 |
}
|
149 |
|
@@ -161,14 +222,15 @@ class GCE_Widget extends WP_Widget {
|
|
161 |
$instance = $old_instance;
|
162 |
$instance['title'] = esc_html( $new_instance['title'] );
|
163 |
$instance['id'] = esc_html( $new_instance['id'] );
|
164 |
-
$instance['display_type']
|
165 |
$instance['order'] = ( 'asc' == $new_instance['order'] ) ? 'asc' : 'desc';
|
166 |
$instance['display_title_text'] = esc_html( $new_instance['display_title_text'] );
|
167 |
$instance['paging'] = ( isset( $new_instance['paging'] ) ? 1 : 0 );
|
168 |
-
$instance['list_max_num'] = $new_instance['list_max_num'];
|
169 |
-
$instance['list_max_length'] = $new_instance['list_max_length'];
|
170 |
$instance['list_start_offset_num'] = $new_instance['list_start_offset_num'];
|
171 |
$instance['list_start_offset_direction'] = $new_instance['list_start_offset_direction'];
|
|
|
|
|
|
|
172 |
|
173 |
return $instance;
|
174 |
}
|
@@ -191,43 +253,44 @@ class GCE_Widget extends WP_Widget {
|
|
191 |
|
192 |
$title = ( isset( $instance['title'] ) ) ? $instance['title'] : '';
|
193 |
$ids = ( isset( $instance['id'] ) ) ? $instance['id'] : '';
|
194 |
-
$display_type
|
195 |
$order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
196 |
$display_title = ( isset( $instance['display_title'] ) ) ? $instance['display_title'] : true;
|
197 |
$title_text = ( isset( $instance['display_title_text'] ) ) ? $instance['display_title_text'] : __( 'Events on', 'gce' );
|
198 |
$paging = ( isset( $instance['paging'] ) ? $instance['paging'] : 1 );
|
199 |
-
|
200 |
-
$
|
201 |
-
$
|
|
|
|
|
202 |
$list_start_offset_direction = ( isset( $instance['list_start_offset_direction'] ) ? $instance['list_start_offset_direction'] : 'back' );
|
|
|
|
|
|
|
203 |
|
204 |
?>
|
205 |
<p>
|
206 |
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'gce' ); ?></label>
|
207 |
-
<input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $title; ?>" class="widefat" />
|
208 |
</p>
|
209 |
<p>
|
210 |
<label for="<?php echo $this->get_field_id( 'id' ); ?>">
|
211 |
<?php _e( 'Feeds to Display (comma separated list - i.e. 101,102,103):', 'gce' ); ?>
|
212 |
</label>
|
213 |
-
<input type="text" id="<?php echo $this->get_field_id( 'id' ); ?>" name="<?php echo $this->get_field_name( 'id' ); ?>" value="<?php echo $ids; ?>" class="widefat" />
|
214 |
</p>
|
|
|
215 |
<p>
|
216 |
<label for="<?php echo $this->get_field_id( 'display_type' ); ?>"><?php _e( 'Display Events as:', 'gce' ); ?></label>
|
217 |
<select id="<?php echo $this->get_field_id( 'display_type' ); ?>" name="<?php echo $this->get_field_name( 'display_type' ); ?>" class="widefat">
|
218 |
-
<option value="grid"<?php selected( $display_type, 'grid' ); ?>><?php _e( 'Grid', 'gce' ); ?></option>
|
219 |
-
<option value="list"<?php selected( $display_type, 'list' ); ?>><?php _e( 'List', 'gce' ); ?></option>
|
220 |
-
<option value="list-grouped"<?php selected( $display_type, 'list-grouped' );?>><?php _e( 'Grouped List', 'gce' ); ?></option>
|
|
|
221 |
</select>
|
222 |
</p>
|
223 |
|
224 |
-
<p>
|
225 |
-
<label for="<?php echo $this->get_field_id( 'paging' ); ?>"><?php _e( 'Show Paging Links:', 'gce' ); ?></label><br>
|
226 |
-
<input type="checkbox" id="<?php echo $this->get_field_id( 'paging' ); ?>" name="<?php echo $this->get_field_name( 'paging' ); ?>" class="widefat" value="1" <?php checked( $paging, 1 ); ?>>
|
227 |
-
<?php _e( 'Check this option to display Next and Back navigation links.', 'gce' ); ?>
|
228 |
-
</p>
|
229 |
-
|
230 |
-
<p>
|
231 |
<label for="<?php echo $this->get_field_id( 'order' ); ?>"><?php _e( 'Sort Order (List View only):', 'gce' ); ?></label>
|
232 |
<select id="<?php echo $this->get_field_id( 'order' ); ?>" name="<?php echo $this->get_field_name( 'order' ); ?>" class="widefat">
|
233 |
<option value="asc" <?php selected( $order, 'asc' ); ?>><?php _e( 'Ascending', 'gce' ); ?></option>
|
@@ -235,28 +298,45 @@ class GCE_Widget extends WP_Widget {
|
|
235 |
</select>
|
236 |
</p>
|
237 |
|
238 |
-
<p>
|
239 |
-
<label for="<?php echo $this->get_field_id( '
|
240 |
-
<
|
241 |
-
|
242 |
-
<option value="
|
243 |
-
<option value="
|
|
|
244 |
</select>
|
|
|
|
|
|
|
245 |
</p>
|
|
|
|
|
|
|
|
|
246 |
|
247 |
-
<p>
|
248 |
<label for="<?php echo $this->get_field_id( 'list_start_offset_num' ); ?>"><?php _e( 'Display Start Date Offset (List View only):', 'gce' ); ?></label><br>
|
249 |
-
<input type="number" min="0" step="1" class="small-text" id="<?php echo $this->get_field_id( 'list_start_offset_num' ); ?>" name="<?php echo $this->get_field_name( 'list_start_offset_num' ); ?>" value="<?php echo $list_start_offset_num; ?>" />
|
250 |
-
<?php _e( 'Days', 'gce' ); ?>
|
251 |
<select name="<?php echo $this->get_field_name( 'list_start_offset_direction' ); ?>" id="<?php echo $this->get_field_id( 'list_start_offset_direction' ); ?>">
|
252 |
-
<option value="back" <?php selected( $list_start_offset_direction, 'back', true ); ?>><?php _e( 'Back', 'gce' ); ?></option>
|
253 |
-
<option value="ahead" <?php selected( $list_start_offset_direction, 'ahead', true ); ?>><?php _e( '
|
254 |
</select>
|
|
|
|
|
|
|
255 |
</p>
|
256 |
|
257 |
-
<p>
|
258 |
<label for="<?php echo $this->get_field_id( 'display_title' ); ?>"><?php _e( 'Display Title on Tooltip/List Item (e.g. \'Events on 7th March\'). Grouped lists always have a title displayed.', 'gce' ); ?></label>
|
259 |
-
<input type="text" class="widefat" id="<?php echo $this->get_field_id( 'display_title_text' ); ?>" name="<?php echo $this->get_field_name( 'display_title_text' ); ?>" value="<?php echo $title_text; ?>" />
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
260 |
</p>
|
261 |
|
262 |
<?php
|
27 |
$name = __( 'Google Calendar Events', 'gce' ),
|
28 |
array( 'description' => __( 'Display a list or calendar grid of events from one or more Google Calendar feeds you have added', 'gce' ) )
|
29 |
);
|
30 |
+
|
31 |
+
if ( is_active_widget( false, false, $this->id_base ) ) {
|
32 |
+
// Call action to load CSS for widget
|
33 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'gce_widget_add_styles' ) );
|
34 |
+
|
35 |
+
// Load JS
|
36 |
+
wp_enqueue_script( 'google-calendar-events-public' );
|
37 |
+
}
|
38 |
+
}
|
39 |
+
|
40 |
+
function gce_widget_add_styles() {
|
41 |
+
// Load CSS
|
42 |
+
wp_enqueue_style( 'google-calendar-events-public' );
|
43 |
}
|
44 |
|
45 |
/**
|
53 |
//Output before widget stuff
|
54 |
echo $before_widget;
|
55 |
|
56 |
+
$paging = ( isset( $instance['paging'] ) ? $instance['paging'] : null );
|
57 |
+
$max_num = ( isset( $instance['per_page_num'] ) ? $instance['per_page_num'] : null );
|
58 |
+
$max_length = ( isset( $instance['events_per_page'] ) ? $instance['events_per_page'] : null );
|
59 |
+
$max_events = null;
|
60 |
+
$display_type = ( isset( $instance['display_type'] ) ? $instance['display_type'] : null );
|
61 |
|
62 |
// Start offset
|
63 |
$offset_num = ( isset( $instance['list_start_offset_num'] ) ? $instance['list_start_offset_num'] : 0 );
|
64 |
$offset_length = 86400;
|
65 |
$offset_direction = ( isset( $instance['list_start_offset_direction'] ) ? $instance['list_start_offset_direction'] : null );
|
66 |
|
67 |
+
$invalid_id = false;
|
68 |
+
|
69 |
+
|
70 |
+
// Get custom date range if set
|
71 |
+
if( 'date-range' == $display_type ) {
|
72 |
+
$range_start = ( isset( $instance['feed_range_start'] ) ? $instance['feed_range_start'] : null );
|
73 |
+
$range_end = ( isset( $instance['feed_range_end'] ) ? $instance['feed_range_end'] : null );
|
74 |
+
|
75 |
+
if( $range_start !== null && ! empty( $range_start ) ) {
|
76 |
+
$range_start = gce_date_unix( $range_start );
|
77 |
+
}
|
78 |
+
|
79 |
+
if( $range_end !== null && ! empty( $range_end ) ) {
|
80 |
+
$range_end = gce_date_unix( $range_end );
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
if( ! isset( $instance['show_tooltips'] ) ) {
|
85 |
+
$show_tooltips = 1;
|
86 |
+
} else {
|
87 |
+
$show_tooltips = ( isset( $instance['show_tooltips'] ) ? $instance['show_tooltips'] : 'false' );
|
88 |
+
}
|
89 |
+
|
90 |
|
91 |
if( $offset_direction == 'back' ) {
|
92 |
$offset_direction = -1;
|
98 |
|
99 |
$paging_interval = null;
|
100 |
|
101 |
+
if( $display_type == 'date-range' ) {
|
102 |
+
$max_length = 'date-range';
|
103 |
+
}
|
104 |
+
|
105 |
if( $max_length == 'days' ) {
|
106 |
$paging_interval = $max_num * 86400;
|
107 |
+
} else if( $max_length == 'events' ) {
|
|
|
|
|
108 |
$max_events = $max_num;
|
109 |
+
} else if( $max_length == 'week' ) {
|
110 |
+
$paging_interval = 604800;
|
111 |
+
} else if( $max_length == 'month' ) {
|
112 |
+
$paging_interval = 2629743;
|
113 |
}
|
114 |
|
115 |
// Check whether any feeds have been added yet
|
130 |
|
131 |
//Check each id is an integer, if not, remove it from the array
|
132 |
foreach ( $feed_ids as $key => $feed_id ) {
|
133 |
+
if ( 0 == absint( $feed_id ) ) {
|
134 |
unset( $feed_ids[$key] );
|
135 |
+
}
|
136 |
+
|
137 |
+
if( ! ( 'publish' == get_post_status( $feed_id ) ) ) {
|
138 |
+
$invalid_id = true;
|
139 |
+
}
|
140 |
}
|
141 |
|
142 |
//If at least one of the feed ids entered exists, set no_feeds_exist to false
|
169 |
$sort_order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
170 |
|
171 |
$args = array(
|
172 |
+
'title_text' => $title_text,
|
173 |
+
'sort' => $sort_order,
|
174 |
+
'month' => null,
|
175 |
+
'year' => null,
|
176 |
+
'widget' => 1,
|
177 |
+
'max_events' => $max_events,
|
178 |
+
'start_offset' => $start_offset,
|
179 |
+
'paging_type' => $max_length,
|
180 |
+
'max_num' => $max_num,
|
181 |
+
'show_tooltips' => $show_tooltips
|
182 |
);
|
183 |
|
184 |
+
if( 'list-grouped' == $display_type ) {
|
185 |
$args['grouped'] = 1;
|
186 |
}
|
187 |
|
188 |
+
if( 'date-range' == $display_type ) {
|
189 |
+
$args['max_events'] = INF;
|
190 |
+
$args['max_num'] = INF;
|
191 |
+
}
|
192 |
+
|
193 |
+
$markup = gce_print_calendar( $feed_ids, $display_type, $args, true );
|
194 |
|
195 |
+
if( ! $invalid_id ) {
|
196 |
+
echo $markup;
|
197 |
+
} else {
|
198 |
+
if( current_user_can( 'manage_options' ) ) {
|
199 |
+
echo '<p>' . __( 'There was a problem with one or more of your feed IDs. Please check your widget settings and make sure they are correct.', 'gce' ) . '</p>';
|
200 |
+
}
|
201 |
+
}
|
202 |
}
|
203 |
} else {
|
204 |
if( current_user_can( 'manage_options' ) ) {
|
205 |
_e( 'You have not added any feeds yet.', 'gce' );
|
206 |
} else {
|
207 |
+
echo '';
|
208 |
}
|
209 |
}
|
210 |
|
222 |
$instance = $old_instance;
|
223 |
$instance['title'] = esc_html( $new_instance['title'] );
|
224 |
$instance['id'] = esc_html( $new_instance['id'] );
|
225 |
+
$instance['display_type'] = esc_html( $new_instance['display_type'] );
|
226 |
$instance['order'] = ( 'asc' == $new_instance['order'] ) ? 'asc' : 'desc';
|
227 |
$instance['display_title_text'] = esc_html( $new_instance['display_title_text'] );
|
228 |
$instance['paging'] = ( isset( $new_instance['paging'] ) ? 1 : 0 );
|
|
|
|
|
229 |
$instance['list_start_offset_num'] = $new_instance['list_start_offset_num'];
|
230 |
$instance['list_start_offset_direction'] = $new_instance['list_start_offset_direction'];
|
231 |
+
$instance['per_page_num'] = $new_instance['per_page_num'];
|
232 |
+
$instance['events_per_page'] = $new_instance['events_per_page'];
|
233 |
+
$instance['show_tooltips'] = ( isset( $new_instance['show_tooltips'] ) ? 1 : 0 );
|
234 |
|
235 |
return $instance;
|
236 |
}
|
253 |
|
254 |
$title = ( isset( $instance['title'] ) ) ? $instance['title'] : '';
|
255 |
$ids = ( isset( $instance['id'] ) ) ? $instance['id'] : '';
|
256 |
+
$display_type = ( isset( $instance['display_type'] ) ) ? $instance['display_type'] : 'grid';
|
257 |
$order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
258 |
$display_title = ( isset( $instance['display_title'] ) ) ? $instance['display_title'] : true;
|
259 |
$title_text = ( isset( $instance['display_title_text'] ) ) ? $instance['display_title_text'] : __( 'Events on', 'gce' );
|
260 |
$paging = ( isset( $instance['paging'] ) ? $instance['paging'] : 1 );
|
261 |
+
|
262 |
+
$per_page_num = ( isset( $instance['per_page_num'] ) && ! empty( $instance['per_page_num'] ) ? $instance['per_page_num'] : 7 );
|
263 |
+
$events_per_page = ( isset( $instance['events_per_page'] ) ? $instance['events_per_page'] : 'days' );
|
264 |
+
|
265 |
+
$list_start_offset_num = ( isset( $instance['list_start_offset_num'] ) && ! empty( $instance['list_start_offset_num'] ) ? $instance['list_start_offset_num'] : 0 );
|
266 |
$list_start_offset_direction = ( isset( $instance['list_start_offset_direction'] ) ? $instance['list_start_offset_direction'] : 'back' );
|
267 |
+
$show_tooltips = ( isset( $instance['show_tooltips'] ) ? $instance['show_tooltips'] : 1 );
|
268 |
+
|
269 |
+
$use_range = ( selected( $display_type, 'date-range', false ) ? true : false );
|
270 |
|
271 |
?>
|
272 |
<p>
|
273 |
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:', 'gce' ); ?></label>
|
274 |
+
<input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo esc_attr( $title ); ?>" class="widefat" />
|
275 |
</p>
|
276 |
<p>
|
277 |
<label for="<?php echo $this->get_field_id( 'id' ); ?>">
|
278 |
<?php _e( 'Feeds to Display (comma separated list - i.e. 101,102,103):', 'gce' ); ?>
|
279 |
</label>
|
280 |
+
<input type="text" id="<?php echo $this->get_field_id( 'id' ); ?>" name="<?php echo $this->get_field_name( 'id' ); ?>" value="<?php echo esc_attr( $ids ); ?>" class="widefat" />
|
281 |
</p>
|
282 |
+
|
283 |
<p>
|
284 |
<label for="<?php echo $this->get_field_id( 'display_type' ); ?>"><?php _e( 'Display Events as:', 'gce' ); ?></label>
|
285 |
<select id="<?php echo $this->get_field_id( 'display_type' ); ?>" name="<?php echo $this->get_field_name( 'display_type' ); ?>" class="widefat">
|
286 |
+
<option value="grid" <?php selected( $display_type, 'grid' ); ?>><?php _e( 'Grid (Month view)', 'gce' ); ?></option>
|
287 |
+
<option value="list" <?php selected( $display_type, 'list' ); ?>><?php _e( 'List', 'gce' ); ?></option>
|
288 |
+
<option value="list-grouped" <?php selected( $display_type, 'list-grouped' );?>><?php _e( 'Grouped List', 'gce' ); ?></option>
|
289 |
+
<option value="date-range" <?php selected( $display_type, 'date-range' );?>><?php _e( 'Custom Date Range (List)', 'gce' ); ?></option>
|
290 |
</select>
|
291 |
</p>
|
292 |
|
293 |
+
<p class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
|
|
|
|
|
|
|
|
|
|
|
|
294 |
<label for="<?php echo $this->get_field_id( 'order' ); ?>"><?php _e( 'Sort Order (List View only):', 'gce' ); ?></label>
|
295 |
<select id="<?php echo $this->get_field_id( 'order' ); ?>" name="<?php echo $this->get_field_name( 'order' ); ?>" class="widefat">
|
296 |
<option value="asc" <?php selected( $order, 'asc' ); ?>><?php _e( 'Ascending', 'gce' ); ?></option>
|
298 |
</select>
|
299 |
</p>
|
300 |
|
301 |
+
<p class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
302 |
+
<label for="<?php echo $this->get_field_id( 'events_per_page' ); ?>"><?php _e( 'Events per Page (List View only):', 'gce' ); ?></label><br/>
|
303 |
+
<select id="<?php echo $this->get_field_id( 'events_per_page' ); ?>" name="<?php echo $this->get_field_name( 'events_per_page' ); ?>">
|
304 |
+
<option value="days" <?php selected( $events_per_page, 'days', true ); ?>><?php _e( 'Number of Days', 'gce' ); ?></option>
|
305 |
+
<option value="events" <?php selected( $events_per_page, 'events', true ); ?>><?php _e( 'Number of Events', 'gce' ); ?></option>
|
306 |
+
<option value="week" <?php selected( $events_per_page, 'week', true ); ?>><?php _e( 'One Week', 'gce' ); ?></option>
|
307 |
+
<option value="month" <?php selected( $events_per_page, 'month', true ); ?>><?php _e( 'One Month', 'gce' ); ?></option>
|
308 |
</select>
|
309 |
+
<span class="gce_per_page_num_wrap <?php echo ( $events_per_page != 'days' && $events_per_page != 'events' ? 'gce-admin-hidden' : '' ); ?>">
|
310 |
+
<input type="number" min="0" step="1" class="small-text" name="<?php echo $this->get_field_name( 'per_page_num' ); ?>" id="<?php echo $this->get_field_id( 'per_page_num' ); ?>" value="<?php echo esc_attr( $per_page_num ); ?>" />
|
311 |
+
</span>
|
312 |
</p>
|
313 |
+
|
314 |
+
<span class="gce-custom-range <?php echo ( $use_range == true ? '' : 'gce-admin-hidden' ); ?>">
|
315 |
+
<small><?php _e( 'This setting will pull from the custom date range set in the main feed settings and cannot be changed here.', 'gce' ); ?></small>
|
316 |
+
</span>
|
317 |
|
318 |
+
<p class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
319 |
<label for="<?php echo $this->get_field_id( 'list_start_offset_num' ); ?>"><?php _e( 'Display Start Date Offset (List View only):', 'gce' ); ?></label><br>
|
|
|
|
|
320 |
<select name="<?php echo $this->get_field_name( 'list_start_offset_direction' ); ?>" id="<?php echo $this->get_field_id( 'list_start_offset_direction' ); ?>">
|
321 |
+
<option value="back" <?php selected( $list_start_offset_direction, 'back', true ); ?>><?php _e( 'Number of Days Back', 'gce' ); ?></option>
|
322 |
+
<option value="ahead" <?php selected( $list_start_offset_direction, 'ahead', true ); ?>><?php _e( 'Number of Days Forward', 'gce' ); ?></option>
|
323 |
</select>
|
324 |
+
<input type="number" min="0" step="1" class="small-text" id="<?php echo $this->get_field_id( 'list_start_offset_num' ); ?>" name="<?php echo $this->get_field_name( 'list_start_offset_num' ); ?>" value="<?php echo esc_attr( $list_start_offset_num ); ?>" />
|
325 |
+
<br>
|
326 |
+
<small><?php _e( 'Change to initially display events on a date other than today (List View only).', 'gce' ); ?></small>
|
327 |
</p>
|
328 |
|
329 |
+
<p class="gce-display-option gce-display-control <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
330 |
<label for="<?php echo $this->get_field_id( 'display_title' ); ?>"><?php _e( 'Display Title on Tooltip/List Item (e.g. \'Events on 7th March\'). Grouped lists always have a title displayed.', 'gce' ); ?></label>
|
331 |
+
<input type="text" class="widefat" id="<?php echo $this->get_field_id( 'display_title_text' ); ?>" name="<?php echo $this->get_field_name( 'display_title_text' ); ?>" value="<?php echo esc_attr( $title_text ); ?>" />
|
332 |
+
</p>
|
333 |
+
|
334 |
+
<p class="gce-display-option <?php echo ( $use_range == true ? 'gce-admin-hidden' : '' ); ?>">
|
335 |
+
<input type="checkbox" id="<?php echo $this->get_field_id( 'paging' ); ?>" name="<?php echo $this->get_field_name( 'paging' ); ?>" class="widefat" value="1" <?php checked( $paging, 1 ); ?>>
|
336 |
+
<label for="<?php echo $this->get_field_id( 'paging' ); ?>"><?php _e( 'Show Paging Links', 'gce' ); ?></label>
|
337 |
+
<br>
|
338 |
+
<input type="checkbox" id="<?php echo $this->get_field_id( 'show_tooltips' ); ?>" name="<?php echo $this->get_field_name( 'show_tooltips' ); ?>" class="widefat" value="1" <?php checked( $show_tooltips, 1 ); ?>>
|
339 |
+
<label for="<?php echo $this->get_field_id( 'show_tooltips' ); ?>"><?php _e( 'Show Tooltips', 'gce' ); ?></label>
|
340 |
</p>
|
341 |
|
342 |
<?php
|