Version Description
- Fixed bug where calendar feed caches weren't getting cleared properly.
- Fixed feed settings metabox content wrapping issue.
Download this release
Release Info
Developer | pderksen |
Plugin | Simple Calendar – Google Calendar Plugin |
Version | 2.0.3 |
Comparing to | |
See all releases |
Code changes from version 2.0.2 to 2.0.3
- class-google-calendar-events.php +1 -1
- css/admin.css +4 -0
- google-calendar-events.php +1 -1
- includes/admin/upgrade.php +0 -47
- includes/class-gce-display.php +45 -34
- includes/class-gce-event.php +1 -4
- includes/class-gce-feed.php +7 -63
- includes/gce-feed-cpt.php +1 -12
- includes/misc-functions.php +26 -5
- includes/shortcodes.php +0 -2
- js/gce-script.js +29 -3
- readme.txt +5 -0
- views/admin/gce-feed-meta-display.php +0 -43
- views/admin/gce-feed-sidebar-help.php +4 -4
- views/widgets.php +0 -9
class-google-calendar-events.php
CHANGED
@@ -18,7 +18,7 @@ class Google_Calendar_Events {
|
|
18 |
*
|
19 |
* @var string
|
20 |
*/
|
21 |
-
protected $version = '2.0.
|
22 |
|
23 |
/**
|
24 |
* Unique identifier for the plugin.
|
18 |
*
|
19 |
* @var string
|
20 |
*/
|
21 |
+
protected $version = '2.0.3';
|
22 |
|
23 |
/**
|
24 |
* Unique identifier for the plugin.
|
css/admin.css
CHANGED
@@ -50,3 +50,7 @@
|
|
50 |
color: #8a6d3b;
|
51 |
padding: 15px;
|
52 |
}
|
|
|
|
|
|
|
|
50 |
color: #8a6d3b;
|
51 |
padding: 15px;
|
52 |
}
|
53 |
+
|
54 |
+
#gce_feed_meta .inside code {
|
55 |
+
word-break: break-all;
|
56 |
+
}
|
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.0.
|
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.0.3
|
16 |
* Author: Phil Derksen
|
17 |
* Author URI: http://philderksen.com
|
18 |
* License: GPL-2.0+
|
includes/admin/upgrade.php
CHANGED
@@ -84,52 +84,6 @@ function convert_to_cpt_posts( $args ) {
|
|
84 |
*/
|
85 |
function create_cpt_meta( $id, $args ) {
|
86 |
|
87 |
-
// Convert the dropdown values to the new values for "Retrieve Events From"
|
88 |
-
switch( $args['retrieve_from'] ) {
|
89 |
-
case 'now':
|
90 |
-
case 'today':
|
91 |
-
$from = 'today';
|
92 |
-
break;
|
93 |
-
case 'week':
|
94 |
-
$from = 'start_week';
|
95 |
-
break;
|
96 |
-
case 'month-start':
|
97 |
-
$from = 'start_month';
|
98 |
-
break;
|
99 |
-
case 'month-end':
|
100 |
-
$from = 'end_month';
|
101 |
-
break;
|
102 |
-
case 'date':
|
103 |
-
$from = 'custom_date';
|
104 |
-
break;
|
105 |
-
default:
|
106 |
-
$from = 'start_time';
|
107 |
-
break;
|
108 |
-
}
|
109 |
-
|
110 |
-
// Convert the dropdown values to the new values for "Retrieve Events Until"
|
111 |
-
switch( $args['retrieve_until'] ) {
|
112 |
-
case 'now':
|
113 |
-
case 'today':
|
114 |
-
$until = 'today';
|
115 |
-
break;
|
116 |
-
case 'week':
|
117 |
-
$until = 'start_week';
|
118 |
-
break;
|
119 |
-
case 'month-start':
|
120 |
-
$until = 'start_month';
|
121 |
-
break;
|
122 |
-
case 'month-end':
|
123 |
-
$until = 'end_month';
|
124 |
-
break;
|
125 |
-
case 'date':
|
126 |
-
$until = 'custom_date';
|
127 |
-
break;
|
128 |
-
default:
|
129 |
-
$until = 'end_time';
|
130 |
-
break;
|
131 |
-
}
|
132 |
-
|
133 |
$gce_expand_recurring = ( isset( $args['expand_recurring'] ) ? ( $args['expand_recurring'] == 'true' ? '1' : '0' ) : '1' );
|
134 |
|
135 |
// An array to hold all of our post meta ids and values so that we can loop through and add as post meta easily
|
@@ -137,7 +91,6 @@ function create_cpt_meta( $id, $args ) {
|
|
137 |
'gce_feed_url' => $args['url'],
|
138 |
'gce_retrieve_from' => $from,
|
139 |
'gce_retrieve_until' => $until,
|
140 |
-
'gce_retrieve_max' => $args['max_events'],
|
141 |
'gce_date_format' => $args['date_format'],
|
142 |
'gce_time_format' => $args['time_format'],
|
143 |
'gce_cache' => $args['cache_duration'],
|
84 |
*/
|
85 |
function create_cpt_meta( $id, $args ) {
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
$gce_expand_recurring = ( isset( $args['expand_recurring'] ) ? ( $args['expand_recurring'] == 'true' ? '1' : '0' ) : '1' );
|
88 |
|
89 |
// An array to hold all of our post meta ids and values so that we can loop through and add as post meta easily
|
91 |
'gce_feed_url' => $args['url'],
|
92 |
'gce_retrieve_from' => $from,
|
93 |
'gce_retrieve_until' => $until,
|
|
|
94 |
'gce_date_format' => $args['date_format'],
|
95 |
'gce_time_format' => $args['time_format'],
|
96 |
'gce_cache' => $args['cache_duration'],
|
includes/class-gce-display.php
CHANGED
@@ -13,11 +13,10 @@ class GCE_Display {
|
|
13 |
|
14 |
private $feeds, $merged_feeds;
|
15 |
|
16 |
-
public function __construct( $ids, $title_text = null, $
|
17 |
|
18 |
$this->id = $ids;
|
19 |
$this->title = $title_text;
|
20 |
-
$this->max_events = $max_events;
|
21 |
$this->sort = $sort_order;
|
22 |
|
23 |
foreach( $ids as $id ) {
|
@@ -61,11 +60,9 @@ class GCE_Display {
|
|
61 |
//Total number of events retrieved
|
62 |
$count = count( $this->merged_feeds );
|
63 |
|
64 |
-
//If maximum events to display is 0 (unlimited) set $max to 1, otherwise use maximum of events specified by user
|
65 |
-
$max = ( 0 == $this->max_events ) ? 1 : $this->max_events;
|
66 |
|
67 |
//Loop through entire array of events, or until maximum number of events to be displayed has been reached
|
68 |
-
for ( $i = 0; $i < $count
|
69 |
$event = $this->merged_feeds[$i];
|
70 |
|
71 |
//Check that event ends, or starts (or both) within the required date range. This prevents all-day events from before / after date range from showing up.
|
@@ -73,10 +70,6 @@ class GCE_Display {
|
|
73 |
foreach ( $event->get_days() as $day ) {
|
74 |
$event_days[$day][] = $event;
|
75 |
}
|
76 |
-
|
77 |
-
//If maximum events to display isn't 0 (unlimited) decrement $max counter
|
78 |
-
if ( 0 != $this->max_events )
|
79 |
-
$max--;
|
80 |
}
|
81 |
}
|
82 |
|
@@ -207,7 +200,7 @@ class GCE_Display {
|
|
207 |
*
|
208 |
* @since 2.0.0
|
209 |
*/
|
210 |
-
public function get_list( $grouped = false ) {
|
211 |
$time_now = current_time( 'timestamp' );
|
212 |
|
213 |
// Get all the event days
|
@@ -218,38 +211,56 @@ class GCE_Display {
|
|
218 |
return '<p>' . __( 'There are currently no events to display.', 'gce' ) . '</p>';
|
219 |
}
|
220 |
|
221 |
-
$today
|
|
|
222 |
|
223 |
$i = 1;
|
224 |
-
|
225 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
226 |
|
227 |
foreach ( $event_days as $key => $event_day ) {
|
|
|
|
|
228 |
//If this is a grouped list, add the date title and begin the nested list for this day
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
$i++;
|
247 |
-
}
|
248 |
|
249 |
-
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
252 |
}
|
|
|
|
|
253 |
}
|
254 |
|
255 |
$markup .= '</ul>';
|
13 |
|
14 |
private $feeds, $merged_feeds;
|
15 |
|
16 |
+
public function __construct( $ids, $title_text = null, $sort_order = 'asc' ) {
|
17 |
|
18 |
$this->id = $ids;
|
19 |
$this->title = $title_text;
|
|
|
20 |
$this->sort = $sort_order;
|
21 |
|
22 |
foreach( $ids as $id ) {
|
60 |
//Total number of events retrieved
|
61 |
$count = count( $this->merged_feeds );
|
62 |
|
|
|
|
|
63 |
|
64 |
//Loop through entire array of events, or until maximum number of events to be displayed has been reached
|
65 |
+
for ( $i = 0; $i < $count; $i++ ) {
|
66 |
$event = $this->merged_feeds[$i];
|
67 |
|
68 |
//Check that event ends, or starts (or both) within the required date range. This prevents all-day events from before / after date range from showing up.
|
70 |
foreach ( $event->get_days() as $day ) {
|
71 |
$event_days[$day][] = $event;
|
72 |
}
|
|
|
|
|
|
|
|
|
73 |
}
|
74 |
}
|
75 |
|
200 |
*
|
201 |
* @since 2.0.0
|
202 |
*/
|
203 |
+
public function get_list( $grouped = false, $start = 0, $end = 1 ) {
|
204 |
$time_now = current_time( 'timestamp' );
|
205 |
|
206 |
// Get all the event days
|
211 |
return '<p>' . __( 'There are currently no events to display.', 'gce' ) . '</p>';
|
212 |
}
|
213 |
|
214 |
+
$today = mktime( 0, 0, 0, date( 'm', $time_now ) + $start, date( 'd', $time_now ), date( 'Y', $time_now ) );
|
215 |
+
$end_month = mktime( 0, 0, 0, date( 'm' ) + $end, 1, date( 'Y' ) );
|
216 |
|
217 |
$i = 1;
|
218 |
+
|
219 |
+
|
220 |
+
$feeds = implode( $this->id, '-' );
|
221 |
+
|
222 |
+
|
223 |
+
$markup = '<ul class="gce-list" data-gce-feeds="' . $feeds . '" data-gce-title="' . $this->title . '" data-gce-grouped="' . $grouped . '" data-gce-sort="' . $this->sort . '">';
|
224 |
+
|
225 |
+
$p = '<span class="gce-prev"><a href="#" class="gce-change-month-list" title="Previous month" data-gce-month="' . ( date( 'n', $today ) - 1 ) . '">Back</a></span>';
|
226 |
+
$n = '<span class="gce-next"><a href="#" class="gce-change-month-list" title="Next month" data-gce-month="' . ( date( 'n', $today ) + 1 ) . '">Next</a></span>';
|
227 |
+
|
228 |
+
$markup .= '' . "\n" . '<caption class="gce-caption">' . $p . '<span class="gce-month-title">' .
|
229 |
+
date( 'F', $today ) . '</span>' . $n . "</caption>\n";
|
230 |
+
|
231 |
+
$max_count = 1;
|
232 |
|
233 |
foreach ( $event_days as $key => $event_day ) {
|
234 |
+
|
235 |
+
if( $key < $end_month ) {
|
236 |
//If this is a grouped list, add the date title and begin the nested list for this day
|
237 |
+
if ( $grouped ) {
|
238 |
+
$markup .=
|
239 |
+
'<li' . ( ( $key == $today ) ? ' class="gce-today"' : '' ) . '>' .
|
240 |
+
'<div class="gce-list-title">' . date_i18n( $event_day[0]->feed->date_format, $key ) . '</div>' .
|
241 |
+
'<ul>';
|
242 |
+
}
|
243 |
|
244 |
+
foreach ( $event_day as $num_in_day => $event ) {
|
245 |
+
//Create the markup for this event
|
246 |
+
$markup .=
|
247 |
+
'<li class="gce-feed-' . $event->feed->id . '">' .
|
248 |
+
//If this isn't a grouped list and a date title should be displayed, add the date title
|
249 |
+
( ( ! $grouped && isset( $event->title ) ) ? '<div class="gce-list-title">' . esc_html( $this->title ) . ' ' . date_i18n( $event->feed->date_format, $key ) . '</div>' : '' ) .
|
250 |
+
//Add the event markup
|
251 |
+
$event->get_event_markup( 'list', $num_in_day, $i ) .
|
252 |
+
'</li>';
|
|
|
|
|
|
|
253 |
|
254 |
+
$i++;
|
255 |
+
}
|
256 |
+
|
257 |
+
//If this is a grouped list, close the nested list for this day
|
258 |
+
if ( $grouped ) {
|
259 |
+
$markup .= '</ul></li>';
|
260 |
+
}
|
261 |
}
|
262 |
+
|
263 |
+
$max_count++;
|
264 |
}
|
265 |
|
266 |
$markup .= '</ul>';
|
includes/class-gce-event.php
CHANGED
@@ -64,10 +64,7 @@ class GCE_Event {
|
|
64 |
while ( $on_next_day ) {
|
65 |
//If the end time of the event is after 00:00 on the next day (therefore, not doesn't end on this day)
|
66 |
if ( $this->end_time > $next_day ) {
|
67 |
-
|
68 |
-
if ( $next_day >= $this->feed->start && $next_day < $this->feed->end ) {
|
69 |
-
$days[] = $next_day;
|
70 |
-
}
|
71 |
} else {
|
72 |
$on_next_day = false;
|
73 |
}
|
64 |
while ( $on_next_day ) {
|
65 |
//If the end time of the event is after 00:00 on the next day (therefore, not doesn't end on this day)
|
66 |
if ( $this->end_time > $next_day ) {
|
67 |
+
|
|
|
|
|
|
|
68 |
} else {
|
69 |
$on_next_day = false;
|
70 |
}
|
includes/class-gce-feed.php
CHANGED
@@ -13,9 +13,6 @@ class GCE_Feed {
|
|
13 |
|
14 |
public $id,
|
15 |
$feed_url,
|
16 |
-
$start,
|
17 |
-
$end,
|
18 |
-
$max,
|
19 |
$date_format,
|
20 |
$time_format,
|
21 |
$cache,
|
@@ -41,10 +38,6 @@ class GCE_Feed {
|
|
41 |
|
42 |
// Now create the Feed
|
43 |
$this->create_feed();
|
44 |
-
|
45 |
-
if( $this->cache > 0 ) {
|
46 |
-
$this->cache_events();
|
47 |
-
}
|
48 |
}
|
49 |
|
50 |
/**
|
@@ -66,9 +59,6 @@ class GCE_Feed {
|
|
66 |
$time_format = get_post_meta( $this->id, 'gce_time_format', true );
|
67 |
|
68 |
$this->feed_url = get_post_meta( $this->id, 'gce_feed_url', true );
|
69 |
-
$this->start = $this->set_feed_length( get_post_meta( $this->id, 'gce_retrieve_from', true ), 'start' );
|
70 |
-
$this->end = $this->set_feed_length( get_post_meta( $this->id, 'gce_retrieve_until', true ), 'end' );
|
71 |
-
$this->max = get_post_meta( $this->id, 'gce_retrieve_max', true );
|
72 |
$this->date_format = ( ! empty( $date_format ) ? $date_format : get_option( 'date_format' ) );
|
73 |
$this->time_format = ( ! empty( $time_format ) ? $time_format : get_option( 'time_format' ) );
|
74 |
$this->cache = get_post_meta( $this->id, 'gce_cache', true );
|
@@ -109,12 +99,10 @@ class GCE_Feed {
|
|
109 |
$gmt_offset = get_option( 'gmt_offset' ) * 3600;
|
110 |
|
111 |
//Append the feed specific parameters to the querystring
|
112 |
-
$query .= '&start-min=' . date( 'Y-m-d\TH:i:s',
|
113 |
-
$query .= '&start-max=' . date( 'Y-m-d\TH:i:s', $this->end - $gmt_offset );
|
114 |
-
$query .= '&max-results=' . $this->max;
|
115 |
|
116 |
if ( ! empty( $this->search_query ) ) {
|
117 |
-
$query .= '&q=' . rawurlencode( $this->search_query );
|
118 |
}
|
119 |
|
120 |
if ( $this->expand_recurring ) {
|
@@ -133,7 +121,7 @@ class GCE_Feed {
|
|
133 |
*
|
134 |
* @since 2.0.0
|
135 |
*/
|
136 |
-
private function get_feed_data( $url ) {
|
137 |
$raw_data = wp_remote_get( $url, array(
|
138 |
'sslverify' => false, //sslverify is set to false to ensure https URLs work reliably. Data source is Google's servers, so is trustworthy
|
139 |
'timeout' => 10 //Increase timeout from the default 5 seconds to ensure even large feeds are retrieved successfully
|
@@ -196,6 +184,10 @@ class GCE_Feed {
|
|
196 |
echo $this->error;
|
197 |
return;
|
198 |
}
|
|
|
|
|
|
|
|
|
199 |
}
|
200 |
}
|
201 |
|
@@ -209,54 +201,6 @@ class GCE_Feed {
|
|
209 |
return mktime( $hour, $minute, $second, $month, $day, $year );
|
210 |
}
|
211 |
|
212 |
-
/**
|
213 |
-
* Return feed start/end
|
214 |
-
*
|
215 |
-
* @since 2.0.0
|
216 |
-
*/
|
217 |
-
private function set_feed_length( $value, $type ) {
|
218 |
-
// All times start at 00:00
|
219 |
-
switch ( $value ) {
|
220 |
-
case 'today':
|
221 |
-
$return = mktime( 0, 0, 0, date( 'm' ), date( 'j' ), date( 'Y' ) );
|
222 |
-
break;
|
223 |
-
case 'start_week':
|
224 |
-
$return = mktime( 0, 0, 0, date( 'm' ), ( date( 'j' ) - date( 'w' ) ), date( 'Y' ) );
|
225 |
-
break;
|
226 |
-
case 'start_month':
|
227 |
-
$return = mktime( 0, 0, 0, date( 'm' ), 1, date( 'Y' ) );
|
228 |
-
break;
|
229 |
-
case 'end_month':
|
230 |
-
$return = mktime( 0, 0, 0, date( 'm' ) + 1, 1, date( 'Y' ) );
|
231 |
-
break;
|
232 |
-
case 'custom_date':
|
233 |
-
if( $type == 'start' ) {
|
234 |
-
$date = get_post_meta( $this->id, 'gce_custom_from', true );
|
235 |
-
$fallback = mktime( 0, 0, 0, date( 'm' ), 1, date( 'Y' ) );
|
236 |
-
} else {
|
237 |
-
$date = get_post_meta( $this->id, 'gce_custom_until', true );
|
238 |
-
$fallback = mktime( 0, 0, 0, date( 'm' ) + 1, 1, date( 'Y' ) );
|
239 |
-
}
|
240 |
-
|
241 |
-
if( ! empty( $date ) ) {
|
242 |
-
$date = explode( '/', $date );
|
243 |
-
$return = mktime( 0, 0, 0, $date[0], $date[1], $date[2] );
|
244 |
-
} else {
|
245 |
-
$return = $fallback;
|
246 |
-
}
|
247 |
-
break;
|
248 |
-
default:
|
249 |
-
if( $type == 'start' ) {
|
250 |
-
$return = 0; //any - 1970-01-01 00:00
|
251 |
-
} else {
|
252 |
-
// Set default end time
|
253 |
-
$return = 2145916800;
|
254 |
-
}
|
255 |
-
}
|
256 |
-
|
257 |
-
return $return;
|
258 |
-
}
|
259 |
-
|
260 |
function get_builder() {
|
261 |
|
262 |
$this->builder = get_post( $this->id )->post_content;
|
13 |
|
14 |
public $id,
|
15 |
$feed_url,
|
|
|
|
|
|
|
16 |
$date_format,
|
17 |
$time_format,
|
18 |
$cache,
|
38 |
|
39 |
// Now create the Feed
|
40 |
$this->create_feed();
|
|
|
|
|
|
|
|
|
41 |
}
|
42 |
|
43 |
/**
|
59 |
$time_format = get_post_meta( $this->id, 'gce_time_format', true );
|
60 |
|
61 |
$this->feed_url = get_post_meta( $this->id, 'gce_feed_url', true );
|
|
|
|
|
|
|
62 |
$this->date_format = ( ! empty( $date_format ) ? $date_format : get_option( 'date_format' ) );
|
63 |
$this->time_format = ( ! empty( $time_format ) ? $time_format : get_option( 'time_format' ) );
|
64 |
$this->cache = get_post_meta( $this->id, 'gce_cache', true );
|
99 |
$gmt_offset = get_option( 'gmt_offset' ) * 3600;
|
100 |
|
101 |
//Append the feed specific parameters to the querystring
|
102 |
+
$query .= '&start-min=' . date( 'Y-m-d\TH:i:s', mktime( 0, 0, 0, date( 'm' ), 1, date( 'Y' ) ) - $gmt_offset );
|
|
|
|
|
103 |
|
104 |
if ( ! empty( $this->search_query ) ) {
|
105 |
+
$query .= '&q=' . rawurlencode( $this->search_query );
|
106 |
}
|
107 |
|
108 |
if ( $this->expand_recurring ) {
|
121 |
*
|
122 |
* @since 2.0.0
|
123 |
*/
|
124 |
+
private function get_feed_data( $url ) {
|
125 |
$raw_data = wp_remote_get( $url, array(
|
126 |
'sslverify' => false, //sslverify is set to false to ensure https URLs work reliably. Data source is Google's servers, so is trustworthy
|
127 |
'timeout' => 10 //Increase timeout from the default 5 seconds to ensure even large feeds are retrieved successfully
|
184 |
echo $this->error;
|
185 |
return;
|
186 |
}
|
187 |
+
} else {
|
188 |
+
if( $this->cache > 0 && false === get_transient( 'gce_feed_' . $this->id ) ) {
|
189 |
+
$this->cache_events();
|
190 |
+
}
|
191 |
}
|
192 |
}
|
193 |
|
201 |
return mktime( $hour, $minute, $second, $month, $day, $year );
|
202 |
}
|
203 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
function get_builder() {
|
205 |
|
206 |
$this->builder = get_post( $this->id )->post_content;
|
includes/gce-feed-cpt.php
CHANGED
@@ -142,7 +142,6 @@ function gce_save_meta( $post_id ) {
|
|
142 |
'gce_feed_url',
|
143 |
'gce_retrieve_from',
|
144 |
'gce_retrieve_until',
|
145 |
-
'gce_retrieve_max',
|
146 |
'gce_date_format',
|
147 |
'gce_time_format',
|
148 |
'gce_cache',
|
@@ -181,12 +180,7 @@ function gce_save_meta( $post_id ) {
|
|
181 |
update_post_meta( $post_id, $pmf, stripslashes( $_POST[$pmf] ) );
|
182 |
}
|
183 |
} else {
|
184 |
-
|
185 |
-
if( $pmf == 'gce_retrieve_max' ) {
|
186 |
-
update_post_meta( $post_id, $pmf, 25 );
|
187 |
-
} else {
|
188 |
-
delete_post_meta( $post_id, $pmf );
|
189 |
-
}
|
190 |
}
|
191 |
}
|
192 |
}
|
@@ -207,7 +201,6 @@ function gce_add_column_headers( $defaults ) {
|
|
207 |
'cb' => $defaults['cb'],
|
208 |
'feed-id' => __( 'Feed ID', 'gce' ),
|
209 |
'feed-sc' => __( 'Feed Shortcode', 'gce' ),
|
210 |
-
'max-events' => __( 'Max Events', 'gce' ),
|
211 |
'display-type' => __( 'Display Type', 'gce' )
|
212 |
);
|
213 |
|
@@ -231,10 +224,6 @@ function gce_column_content( $column_name, $post_ID ) {
|
|
231 |
case 'feed-sc':
|
232 |
echo '<code>[gcal id="' . $post_ID . '"]</code>';
|
233 |
break;
|
234 |
-
case 'max-events':
|
235 |
-
$max = get_post_meta( $post_ID, 'gce_retrieve_max', true );
|
236 |
-
echo $max;
|
237 |
-
break;
|
238 |
case 'display-type':
|
239 |
$display = get_post_meta( $post_ID, 'gce_display_mode', true );
|
240 |
|
142 |
'gce_feed_url',
|
143 |
'gce_retrieve_from',
|
144 |
'gce_retrieve_until',
|
|
|
145 |
'gce_date_format',
|
146 |
'gce_time_format',
|
147 |
'gce_cache',
|
180 |
update_post_meta( $post_id, $pmf, stripslashes( $_POST[$pmf] ) );
|
181 |
}
|
182 |
} else {
|
183 |
+
delete_post_meta( $post_id, $pmf );
|
|
|
|
|
|
|
|
|
|
|
184 |
}
|
185 |
}
|
186 |
}
|
201 |
'cb' => $defaults['cb'],
|
202 |
'feed-id' => __( 'Feed ID', 'gce' ),
|
203 |
'feed-sc' => __( 'Feed Shortcode', 'gce' ),
|
|
|
204 |
'display-type' => __( 'Display Type', 'gce' )
|
205 |
);
|
206 |
|
224 |
case 'feed-sc':
|
225 |
echo '<code>[gcal id="' . $post_ID . '"]</code>';
|
226 |
break;
|
|
|
|
|
|
|
|
|
227 |
case 'display-type':
|
228 |
$display = get_post_meta( $post_ID, 'gce_display_mode', true );
|
229 |
|
includes/misc-functions.php
CHANGED
@@ -9,7 +9,6 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
9 |
|
10 |
$defaults = array(
|
11 |
'title_text' => '',
|
12 |
-
'max_events' => 25,
|
13 |
'sort' => 'asc',
|
14 |
'grouped' => 0,
|
15 |
'month' => null,
|
@@ -24,13 +23,13 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
|
|
24 |
$ids = explode( '-', $feed_ids );
|
25 |
|
26 |
//Create new display object, passing array of feed id(s)
|
27 |
-
$d = new GCE_Display( $ids, $title_text, $
|
28 |
$markup = '';
|
29 |
|
30 |
if( 'grid' == $display ) {
|
31 |
|
32 |
$markup = '<script type="text/javascript">jQuery(document).ready(function($){gce_ajaxify("' . ( $widget == 1 ? 'gce-widget-' : 'gce-page-grid-' ) . $feed_ids
|
33 |
-
. '", "' . $feed_ids . '", "' .
|
34 |
|
35 |
if( $widget == 1 ) {
|
36 |
$markup .= '<div class="gce-widget-grid" id="gce-widget-' . $feed_ids . '">';
|
@@ -57,7 +56,6 @@ function gce_ajax() {
|
|
57 |
if ( isset( $_GET['gce_feed_ids'] ) ) {
|
58 |
$ids = $_GET['gce_feed_ids'];
|
59 |
$title = $_GET['gce_title_text'];
|
60 |
-
$max = $_GET['gce_max_events'];
|
61 |
$month = $_GET['gce_month'];
|
62 |
$year = $_GET['gce_year'];
|
63 |
|
@@ -65,7 +63,6 @@ function gce_ajax() {
|
|
65 |
|
66 |
$args = array(
|
67 |
'title_text' => $title,
|
68 |
-
'max_events' => $max,
|
69 |
'month' => $month,
|
70 |
'year' => $year,
|
71 |
);
|
@@ -82,6 +79,30 @@ function gce_ajax() {
|
|
82 |
add_action( 'wp_ajax_nopriv_gce_ajax', 'gce_ajax' );
|
83 |
add_action( 'wp_ajax_gce_ajax', 'gce_ajax' );
|
84 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
function gce_feed_content( $content ) {
|
86 |
global $post;
|
87 |
|
9 |
|
10 |
$defaults = array(
|
11 |
'title_text' => '',
|
|
|
12 |
'sort' => 'asc',
|
13 |
'grouped' => 0,
|
14 |
'month' => null,
|
23 |
$ids = explode( '-', $feed_ids );
|
24 |
|
25 |
//Create new display object, passing array of feed id(s)
|
26 |
+
$d = new GCE_Display( $ids, $title_text, $sort );
|
27 |
$markup = '';
|
28 |
|
29 |
if( 'grid' == $display ) {
|
30 |
|
31 |
$markup = '<script type="text/javascript">jQuery(document).ready(function($){gce_ajaxify("' . ( $widget == 1 ? 'gce-widget-' : 'gce-page-grid-' ) . $feed_ids
|
32 |
+
. '", "' . $feed_ids . '", "' . $title_text . '", "' . ( $widget == 1 ? 'widget' : 'page' ) . '");});</script>';
|
33 |
|
34 |
if( $widget == 1 ) {
|
35 |
$markup .= '<div class="gce-widget-grid" id="gce-widget-' . $feed_ids . '">';
|
56 |
if ( isset( $_GET['gce_feed_ids'] ) ) {
|
57 |
$ids = $_GET['gce_feed_ids'];
|
58 |
$title = $_GET['gce_title_text'];
|
|
|
59 |
$month = $_GET['gce_month'];
|
60 |
$year = $_GET['gce_year'];
|
61 |
|
63 |
|
64 |
$args = array(
|
65 |
'title_text' => $title,
|
|
|
66 |
'month' => $month,
|
67 |
'year' => $year,
|
68 |
);
|
79 |
add_action( 'wp_ajax_nopriv_gce_ajax', 'gce_ajax' );
|
80 |
add_action( 'wp_ajax_gce_ajax', 'gce_ajax' );
|
81 |
|
82 |
+
|
83 |
+
/**
|
84 |
+
* AJAX function for grid pagination
|
85 |
+
*
|
86 |
+
* @since 2.0.0
|
87 |
+
*/
|
88 |
+
function gce_ajax_list() {
|
89 |
+
|
90 |
+
$grouped = $_GET['gce_grouped'];
|
91 |
+
$start = $_GET['gce_month'];
|
92 |
+
$end = $start + 1;
|
93 |
+
$ids = $_GET['gce_feed_ids'];
|
94 |
+
$title_text = $_GET['gce_title_text'];
|
95 |
+
$sort = $_GET['gce_sort'];
|
96 |
+
|
97 |
+
$d = new GCE_Display( explode( '-', $ids ), $title_text, $sort );
|
98 |
+
|
99 |
+
echo $d->get_list( $grouped, $start, $end );
|
100 |
+
|
101 |
+
die();
|
102 |
+
}
|
103 |
+
add_action( 'wp_ajax_nopriv_gce_ajax_list', 'gce_ajax_list' );
|
104 |
+
add_action( 'wp_ajax_gce_ajax_list', 'gce_ajax_list' );
|
105 |
+
|
106 |
function gce_feed_content( $content ) {
|
107 |
global $post;
|
108 |
|
includes/shortcodes.php
CHANGED
@@ -22,7 +22,6 @@ function gce_gcal_shortcode( $attr ) {
|
|
22 |
extract( shortcode_atts( array(
|
23 |
'id' => null,
|
24 |
'display' => '',
|
25 |
-
'max' => 0,
|
26 |
'order' => 'asc',
|
27 |
'title' => null,
|
28 |
'type' => null,
|
@@ -62,7 +61,6 @@ function gce_gcal_shortcode( $attr ) {
|
|
62 |
|
63 |
$args = array(
|
64 |
'title_text' => $title,
|
65 |
-
'max_events' => $max,
|
66 |
'sort' => $order,
|
67 |
'grouped' => ( $display == 'list-grouped' ? 1 : 0 ),
|
68 |
'month' => null,
|
22 |
extract( shortcode_atts( array(
|
23 |
'id' => null,
|
24 |
'display' => '',
|
|
|
25 |
'order' => 'asc',
|
26 |
'title' => null,
|
27 |
'type' => null,
|
61 |
|
62 |
$args = array(
|
63 |
'title_text' => $title,
|
|
|
64 |
'sort' => $order,
|
65 |
'grouped' => ( $display == 'list-grouped' ? 1 : 0 ),
|
66 |
'month' => null,
|
js/gce-script.js
CHANGED
@@ -9,7 +9,7 @@
|
|
9 |
*/
|
10 |
|
11 |
|
12 |
-
function gce_ajaxify(target, feed_ids,
|
13 |
|
14 |
//Add click event to change month links
|
15 |
jQuery('#' + target + ' .gce-change-month').click(function(){
|
@@ -24,7 +24,6 @@ function gce_ajaxify(target, feed_ids, max_events, title_text, type){
|
|
24 |
gce_feed_ids:feed_ids,
|
25 |
gce_title_text:title_text,
|
26 |
gce_widget_id:target,
|
27 |
-
gce_max_events:max_events,
|
28 |
gce_month:month_year[0],
|
29 |
gce_year:month_year[1]
|
30 |
}, function(data){
|
@@ -53,6 +52,33 @@ function gce_tooltips(target_items){
|
|
53 |
});
|
54 |
}
|
55 |
|
56 |
-
jQuery(document).ready(function(){
|
57 |
gce_tooltips('.gce-has-events');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
});
|
9 |
*/
|
10 |
|
11 |
|
12 |
+
function gce_ajaxify(target, feed_ids, title_text, type){
|
13 |
|
14 |
//Add click event to change month links
|
15 |
jQuery('#' + target + ' .gce-change-month').click(function(){
|
24 |
gce_feed_ids:feed_ids,
|
25 |
gce_title_text:title_text,
|
26 |
gce_widget_id:target,
|
|
|
27 |
gce_month:month_year[0],
|
28 |
gce_year:month_year[1]
|
29 |
}, function(data){
|
52 |
});
|
53 |
}
|
54 |
|
55 |
+
jQuery(document).ready(function($){
|
56 |
gce_tooltips('.gce-has-events');
|
57 |
+
|
58 |
+
$('.gce-change-month-list').on( 'click', function(e) {
|
59 |
+
|
60 |
+
e.preventDefault();
|
61 |
+
|
62 |
+
var month = $(this).data('gce-month');
|
63 |
+
var grouped = $(this).parent().parent().data('gce-grouped');
|
64 |
+
var title_text = $(this).parent().parent().data('gce-title');
|
65 |
+
var feed_ids = $(this).parent().parent().data( 'gce-feeds');
|
66 |
+
var sort = $(this).parent().parent().data('gce-sort');
|
67 |
+
|
68 |
+
//Add loading text to table caption
|
69 |
+
$('.gce-month-title').html('Loading...');
|
70 |
+
|
71 |
+
//Send AJAX request
|
72 |
+
jQuery.get(gce.ajaxurl,{
|
73 |
+
action:'gce_ajax_list',
|
74 |
+
gce_feed_ids:feed_ids,
|
75 |
+
gce_title_text:title_text,
|
76 |
+
gce_month: month,
|
77 |
+
gce_grouped: grouped,
|
78 |
+
gce_sort: sort
|
79 |
+
}, function(data){
|
80 |
+
console.log( 'Data', data);
|
81 |
+
$('.gce-page-list').html(data);
|
82 |
+
});
|
83 |
+
});
|
84 |
});
|
readme.txt
CHANGED
@@ -79,6 +79,11 @@ There are three ways to install this plugin.
|
|
79 |
|
80 |
== Changelog ==
|
81 |
|
|
|
|
|
|
|
|
|
|
|
82 |
= 2.0.2 =
|
83 |
|
84 |
* Added Spanish translation (thanks to Eduardo Larequi of [educacion.navarra.es/web/pnte/](http://www.educacion.navarra.es/web/pnte/)).
|
79 |
|
80 |
== Changelog ==
|
81 |
|
82 |
+
= 2.0.3 =
|
83 |
+
|
84 |
+
* Fixed bug where calendar feed caches weren't getting cleared properly.
|
85 |
+
* Fixed feed settings metabox content wrapping issue.
|
86 |
+
|
87 |
= 2.0.2 =
|
88 |
|
89 |
* Added Spanish translation (thanks to Eduardo Larequi of [educacion.navarra.es/web/pnte/](http://www.educacion.navarra.es/web/pnte/)).
|
views/admin/gce-feed-meta-display.php
CHANGED
@@ -20,9 +20,6 @@
|
|
20 |
|
21 |
// Load up all post meta data
|
22 |
$gce_feed_url = get_post_meta( $post->ID, 'gce_feed_url', true );
|
23 |
-
$gce_retrieve_from = get_post_meta( $post->ID, 'gce_retrieve_from', true );
|
24 |
-
$gce_retrieve_until = get_post_meta( $post->ID, 'gce_retrieve_until', true );
|
25 |
-
$gce_retrieve_max = get_post_meta( $post->ID, 'gce_retrieve_max', true );
|
26 |
$gce_date_format = get_post_meta( $post->ID, 'gce_date_format', true );
|
27 |
$gce_time_format = get_post_meta( $post->ID, 'gce_time_format', true );
|
28 |
$gce_cache = get_post_meta( $post->ID, 'gce_cache', true );
|
@@ -88,46 +85,6 @@
|
|
88 |
</td>
|
89 |
</tr>
|
90 |
|
91 |
-
<tr>
|
92 |
-
<th scope="row"><label for="gce_retrieve_from"><?php _e( 'Retrieve Events From', 'gce' ); ?></label></th>
|
93 |
-
<td>
|
94 |
-
<select name="gce_retrieve_from" id="gce_retrieve_from">
|
95 |
-
<option value="today" <?php selected( $gce_retrieve_from, 'today', true ); ?>><?php _e( 'Today', 'gce' ); ?></option>
|
96 |
-
<option value="start_week" <?php selected( $gce_retrieve_from, 'start_week', true ); ?>><?php _e( 'Start of current week', 'gce' ); ?></option>
|
97 |
-
<option value="start_month" <?php selected( $gce_retrieve_from, 'start_month', true ); ?>><?php _e( 'Start of current month', 'gce' ); ?></option>
|
98 |
-
<option value="end_month" <?php selected( $gce_retrieve_from, 'end_month', true ); ?>><?php _e( 'End of current month', 'gce' ); ?></option>
|
99 |
-
<option value="start_time" <?php selected( $gce_retrieve_from, 'start_time', true ); ?>><?php _e( 'The beginning of time', 'gce' ); ?></option>
|
100 |
-
<option value="custom_date" <?php selected( $gce_retrieve_from, 'custom_date', true ); ?>><?php _e( 'Specific date', 'gce' ); ?></option>
|
101 |
-
</select>
|
102 |
-
<input type="text" <?php echo ( $gce_retrieve_from != 'custom_date' ? 'class="gce-admin-hidden" ' : ' ' ); ?> name="gce_custom_from" id="gce_custom_from" value="<?php echo $gce_custom_from; ?>" />
|
103 |
-
<p class="description"><?php _e( 'The point in time at which to start retrieving events.', 'gce' ); ?></p>
|
104 |
-
</td>
|
105 |
-
</tr>
|
106 |
-
|
107 |
-
<tr>
|
108 |
-
<th scope="row"><label for="gce_retrieve_until"><?php _e( 'Retrieve Events Until', 'gce' ); ?></label></th>
|
109 |
-
<td>
|
110 |
-
<select name="gce_retrieve_until" id="gce_retrieve_until">
|
111 |
-
<option value="today" <?php selected( $gce_retrieve_until, 'today', true ); ?>><?php _e( 'Today', 'gce' ); ?></option>
|
112 |
-
<option value="start_week" <?php selected( $gce_retrieve_until, 'start_week', true ); ?>><?php _e( 'Start of current week', 'gce' ); ?></option>
|
113 |
-
<option value="start_month" <?php selected( $gce_retrieve_until, 'start_month', true ); ?>><?php _e( 'Start of current month', 'gce' ); ?></option>
|
114 |
-
<option value="end_month" <?php selected( $gce_retrieve_until, 'end_month', true ); ?>><?php _e( 'End of current month', 'gce' ); ?></option>
|
115 |
-
<option value="end_time" <?php selected( $gce_retrieve_until, 'end_time', true ); ?>><?php _e( 'The end of time', 'gce' ); ?></option>
|
116 |
-
<option value="custom_date" <?php selected( $gce_retrieve_until, 'custom_date', true ); ?>><?php _e( 'Specific date', 'gce' ); ?></option>
|
117 |
-
</select>
|
118 |
-
<input type="text" <?php echo ( $gce_retrieve_until != 'custom_date' ? 'class="gce-admin-hidden" ' : ' ' ); ?> name="gce_custom_until" id="gce_custom_until" value="<?php echo $gce_custom_until; ?>" />
|
119 |
-
<p class="description"><?php _e( 'The point in time at which to stop retrieving events.', 'gce' ); ?></p>
|
120 |
-
</td>
|
121 |
-
</tr>
|
122 |
-
|
123 |
-
<tr>
|
124 |
-
<th scope="row"><label for="gce_retrieve_max"><?php _e( 'Max Number of Events', 'gce' ); ?></label></th>
|
125 |
-
<td>
|
126 |
-
<input type="text" class="" name="gce_retrieve_max" id="gce_retrieve_max" value="<?php echo $gce_retrieve_max; ?>" />
|
127 |
-
<p class="description"><?php _e( 'Maximum number of events to show.', 'gce' ); ?></p>
|
128 |
-
<td>
|
129 |
-
</tr>
|
130 |
-
|
131 |
<tr>
|
132 |
<th scope="row"><label for="gce_date_format"><?php _e( 'Date Format', 'gce' ); ?></label></th>
|
133 |
<td>
|
20 |
|
21 |
// Load up all post meta data
|
22 |
$gce_feed_url = get_post_meta( $post->ID, 'gce_feed_url', true );
|
|
|
|
|
|
|
23 |
$gce_date_format = get_post_meta( $post->ID, 'gce_date_format', true );
|
24 |
$gce_time_format = get_post_meta( $post->ID, 'gce_time_format', true );
|
25 |
$gce_cache = get_post_meta( $post->ID, 'gce_cache', true );
|
85 |
</td>
|
86 |
</tr>
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
<tr>
|
89 |
<th scope="row"><label for="gce_date_format"><?php _e( 'Date Format', 'gce' ); ?></label></th>
|
90 |
<td>
|
views/admin/gce-feed-sidebar-help.php
CHANGED
@@ -3,25 +3,25 @@
|
|
3 |
<li>
|
4 |
<div class="dashicons dashicons-arrow-right-alt2"></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 &
|
7 |
</li>
|
8 |
|
9 |
<li>
|
10 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
11 |
<a href="http://wordpress.org/support/plugin/google-calendar-events" target="_blank">
|
12 |
-
<?php _e( 'Community
|
13 |
</li>
|
14 |
|
15 |
<li>
|
16 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
17 |
<a href="http://eepurl.com/0_VsT" target="_blank">
|
18 |
-
<?php _e( 'Get
|
19 |
</li>
|
20 |
|
21 |
<li>
|
22 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
23 |
<a href="http://wordpress.org/support/view/plugin-reviews/google-calendar-events" target="_blank">
|
24 |
-
<?php _e( '
|
25 |
</li>
|
26 |
</ul>
|
27 |
</div>
|
3 |
<li>
|
4 |
<div class="dashicons dashicons-arrow-right-alt2"></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 |
|
9 |
<li>
|
10 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
11 |
<a href="http://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="http://eepurl.com/0_VsT" target="_blank">
|
18 |
+
<?php _e( 'Get notified of new features', 'gce' ); ?></a>
|
19 |
</li>
|
20 |
|
21 |
<li>
|
22 |
<div class="dashicons dashicons-arrow-right-alt2"></div>
|
23 |
<a href="http://wordpress.org/support/view/plugin-reviews/google-calendar-events" target="_blank">
|
24 |
+
<?php _e( 'Rate this plugin', 'gce' ); ?></a>
|
25 |
</li>
|
26 |
</ul>
|
27 |
</div>
|
views/widgets.php
CHANGED
@@ -79,12 +79,10 @@ class GCE_Widget extends WP_Widget {
|
|
79 |
$feed_ids = implode( '-', $feed_ids );
|
80 |
|
81 |
$title_text = ( ! empty( $instance['display_title_text'] ) ? $instance['display_title_text'] : null );
|
82 |
-
$max_events = ( isset( $instance['max_events'] ) ) ? $instance['max_events'] : 0;
|
83 |
$sort_order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
84 |
|
85 |
$args = array(
|
86 |
'title_text' => $title_text,
|
87 |
-
'max_events' => $max_events,
|
88 |
'sort' => $sort_order,
|
89 |
'month' => null,
|
90 |
'year' => null,
|
@@ -122,7 +120,6 @@ class GCE_Widget extends WP_Widget {
|
|
122 |
$instance['title'] = esc_html( $new_instance['title'] );
|
123 |
$instance['id'] = esc_html( $new_instance['id'] );
|
124 |
$instance['display_type'] = esc_html( $new_instance['display_type'] );
|
125 |
-
$instance['max_events'] = absint( $new_instance['max_events'] );
|
126 |
$instance['order'] = ( 'asc' == $new_instance['order'] ) ? 'asc' : 'desc';
|
127 |
$instance['display_title_text'] = wp_filter_kses( $new_instance['display_title_text'] );
|
128 |
|
@@ -148,7 +145,6 @@ class GCE_Widget extends WP_Widget {
|
|
148 |
$title = ( isset( $instance['title'] ) ) ? $instance['title'] : '';
|
149 |
$ids = ( isset( $instance['id'] ) ) ? $instance['id'] : '';
|
150 |
$display_type = ( isset( $instance['display_type'] ) ) ? $instance['display_type'] : 'grid';
|
151 |
-
$max_events = ( isset( $instance['max_events'] ) ) ? $instance['max_events'] : 0;
|
152 |
$order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
153 |
$display_title = ( isset( $instance['display_title'] ) ) ? $instance['display_title'] : true;
|
154 |
$title_text = ( isset( $instance['display_title_text'] ) ) ? $instance['display_title_text'] : 'Events on';
|
@@ -174,11 +170,6 @@ class GCE_Widget extends WP_Widget {
|
|
174 |
</select>
|
175 |
</p>
|
176 |
|
177 |
-
<p>
|
178 |
-
<label for="<?php echo $this->get_field_id( 'max_events' ); ?>"><?php _e( 'Maximum no. events to display. Enter 0 to show all retrieved.' ); ?></label>
|
179 |
-
<input type="text" id="<?php echo $this->get_field_id( 'max_events' ); ?>" name="<?php echo $this->get_field_name( 'max_events' ); ?>" value="<?php echo $max_events; ?>" class="widefat" />
|
180 |
-
</p>
|
181 |
-
|
182 |
<p>
|
183 |
<label for="<?php echo $this->get_field_id( 'order' ); ?>"><?php _e( 'Sort order (only applies to lists):' ); ?></label>
|
184 |
<select id="<?php echo $this->get_field_id( 'order' ); ?>" name="<?php echo $this->get_field_name( 'order' ); ?>" class="widefat">
|
79 |
$feed_ids = implode( '-', $feed_ids );
|
80 |
|
81 |
$title_text = ( ! empty( $instance['display_title_text'] ) ? $instance['display_title_text'] : null );
|
|
|
82 |
$sort_order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
83 |
|
84 |
$args = array(
|
85 |
'title_text' => $title_text,
|
|
|
86 |
'sort' => $sort_order,
|
87 |
'month' => null,
|
88 |
'year' => null,
|
120 |
$instance['title'] = esc_html( $new_instance['title'] );
|
121 |
$instance['id'] = esc_html( $new_instance['id'] );
|
122 |
$instance['display_type'] = esc_html( $new_instance['display_type'] );
|
|
|
123 |
$instance['order'] = ( 'asc' == $new_instance['order'] ) ? 'asc' : 'desc';
|
124 |
$instance['display_title_text'] = wp_filter_kses( $new_instance['display_title_text'] );
|
125 |
|
145 |
$title = ( isset( $instance['title'] ) ) ? $instance['title'] : '';
|
146 |
$ids = ( isset( $instance['id'] ) ) ? $instance['id'] : '';
|
147 |
$display_type = ( isset( $instance['display_type'] ) ) ? $instance['display_type'] : 'grid';
|
|
|
148 |
$order = ( isset( $instance['order'] ) ) ? $instance['order'] : 'asc';
|
149 |
$display_title = ( isset( $instance['display_title'] ) ) ? $instance['display_title'] : true;
|
150 |
$title_text = ( isset( $instance['display_title_text'] ) ) ? $instance['display_title_text'] : 'Events on';
|
170 |
</select>
|
171 |
</p>
|
172 |
|
|
|
|
|
|
|
|
|
|
|
173 |
<p>
|
174 |
<label for="<?php echo $this->get_field_id( 'order' ); ?>"><?php _e( 'Sort order (only applies to lists):' ); ?></label>
|
175 |
<select id="<?php echo $this->get_field_id( 'order' ); ?>" name="<?php echo $this->get_field_name( 'order' ); ?>" class="widefat">
|