Version Description
Added: Ajaxed themes support
Fixed: Next month link issue
Changed: More events dialog
Added: Support/rate us messages
Download this release
Release Info
Developer | webdorado |
Plugin | Event Calendar WD – Responsive Event Calendar plugin |
Version | 1.0.22 |
Comparing to | |
See all releases |
Code changes from version 1.0.21 to 1.0.22
- css/admin/notices.css +54 -0
- css/style.css +2 -6
- ecwd.php +1 -1
- ecwd_admin_class.php +40 -4
- ecwd_class.php +16 -4
- includes/calendar-class.php +3 -3
- includes/ecwd-functions.php +3 -1
- includes/ecwd-notices-class.php +227 -0
- includes/notices.php +32 -0
- js/scripts.js +44 -58
- readme.txt +21 -15
- views/ecwd-venue-content.php +1 -0
- views/single-event.php +1 -1
css/admin/notices.css
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.ecwd-admin-notice {
|
2 |
+
background: #fff;
|
3 |
+
border-top: 4px;
|
4 |
+
display: block;
|
5 |
+
min-height: 68px;
|
6 |
+
padding: 10px 40px 10px 125px;
|
7 |
+
position: relative;
|
8 |
+
}
|
9 |
+
.ecwd-admin-notice a {
|
10 |
+
color: #10738B;
|
11 |
+
}
|
12 |
+
.ecwd-notice-logo {
|
13 |
+
clear: both;
|
14 |
+
content: "";
|
15 |
+
display: block;
|
16 |
+
background-image: url("https://d27sb3x2z8tu4g.cloudfront.net/images/productlogos/CalendarWD.png?1433338742");
|
17 |
+
background-size: 108px 107px;
|
18 |
+
background-repeat: no-repeat;
|
19 |
+
background-position: 0 45%;
|
20 |
+
width: 125px;
|
21 |
+
position: absolute;
|
22 |
+
top: 0;
|
23 |
+
bottom: 0;
|
24 |
+
left: 5px;
|
25 |
+
}
|
26 |
+
.ecwd-admin-notice > .dashicons {
|
27 |
+
color: #424242;
|
28 |
+
position: absolute;
|
29 |
+
right: 20px;
|
30 |
+
top: 40%;
|
31 |
+
}
|
32 |
+
.ecwd-notice-title {
|
33 |
+
font-size: 24px;
|
34 |
+
margin: 0;
|
35 |
+
}
|
36 |
+
.ecwd-notice-body {
|
37 |
+
font-weight: normal;
|
38 |
+
margin: 5px 0;
|
39 |
+
}
|
40 |
+
.ecwd-notice-body:after {
|
41 |
+
clear: both;
|
42 |
+
content: "";
|
43 |
+
display: block;
|
44 |
+
}
|
45 |
+
.ecwd-notice-body li {
|
46 |
+
float: left;
|
47 |
+
margin-right: 20px;
|
48 |
+
}
|
49 |
+
.ecwd-notice-body .dashicons {
|
50 |
+
font-size: 17px;
|
51 |
+
}
|
52 |
+
.ecwd-blue {
|
53 |
+
color: #10738B;
|
54 |
+
}
|
css/style.css
CHANGED
@@ -2154,7 +2154,7 @@ a.ecwd-google-plus{
|
|
2154 |
position: absolute;
|
2155 |
top: 12px;
|
2156 |
font-size: 18px;
|
2157 |
-
|
2158 |
line-height: 19px;
|
2159 |
color: #676767;
|
2160 |
}
|
@@ -2219,11 +2219,7 @@ a.ecwd-google-plus{
|
|
2219 |
background: #fff;
|
2220 |
border: 1px solid #CFD7DE;
|
2221 |
}
|
2222 |
-
|
2223 |
-
opacity:1;
|
2224 |
-
display: block;
|
2225 |
-
pointer-events: auto;
|
2226 |
-
}
|
2227 |
.ecwd-modal .modal-header {
|
2228 |
margin: 0 0 1px 0 !important;
|
2229 |
padding: 0 0 1px 0;
|
2154 |
position: absolute;
|
2155 |
top: 12px;
|
2156 |
font-size: 18px;
|
2157 |
+
right: 13px;
|
2158 |
line-height: 19px;
|
2159 |
color: #676767;
|
2160 |
}
|
2219 |
background: #fff;
|
2220 |
border: 1px solid #CFD7DE;
|
2221 |
}
|
2222 |
+
|
|
|
|
|
|
|
|
|
2223 |
.ecwd-modal .modal-header {
|
2224 |
margin: 0 0 1px 0 !important;
|
2225 |
padding: 0 0 1px 0;
|
ecwd.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Event Calendar WD
|
4 |
* Plugin URI: https://web-dorado.com/products/wordpress-event-calendar-wd.html
|
5 |
* Description: Event Calendar WD is an easy event management and planning tool with advanced features.
|
6 |
-
* Version: 1.0.
|
7 |
* Author: WebDorado
|
8 |
* Author URI: http://web-dorado.com
|
9 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
3 |
* Plugin Name: Event Calendar WD
|
4 |
* Plugin URI: https://web-dorado.com/products/wordpress-event-calendar-wd.html
|
5 |
* Description: Event Calendar WD is an easy event management and planning tool with advanced features.
|
6 |
+
* Version: 1.0.22
|
7 |
* Author: WebDorado
|
8 |
* Author URI: http://web-dorado.com
|
9 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
ecwd_admin_class.php
CHANGED
@@ -6,13 +6,15 @@
|
|
6 |
class ECWD_Admin {
|
7 |
|
8 |
protected static $instance = null;
|
9 |
-
protected $version = '1.0.
|
10 |
protected $ecwd_page = null;
|
|
|
11 |
|
12 |
private function __construct() {
|
13 |
$plugin = ECWD::get_instance();
|
14 |
$this->prefix = $plugin->get_prefix();
|
15 |
$this->version = $plugin->get_version();
|
|
|
16 |
add_filter( 'plugin_action_links_' . plugin_basename( plugin_dir_path( __FILE__ ) . $this->prefix . '.php' ), array(
|
17 |
$this,
|
18 |
'add_action_links'
|
@@ -33,8 +35,12 @@ class ECWD_Admin {
|
|
33 |
}
|
34 |
//add_filter( 'auto_update_plugin', array($this, 'ecwd_update'), 10, 2 );
|
35 |
|
36 |
-
//
|
37 |
add_action( 'admin_notices', array( $this, 'create_logo_to_head' ) );
|
|
|
|
|
|
|
|
|
38 |
}
|
39 |
|
40 |
|
@@ -265,7 +271,12 @@ class ECWD_Admin {
|
|
265 |
}
|
266 |
|
267 |
wp_localize_script( $this->prefix . '-admin-scripts', 'params', $params );
|
268 |
-
wp_localize_script(
|
|
|
|
|
|
|
|
|
|
|
269 |
wp_enqueue_script( $this->prefix . '-admin-scripts' );
|
270 |
|
271 |
}
|
@@ -386,6 +397,31 @@ class ECWD_Admin {
|
|
386 |
}
|
387 |
}
|
388 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
389 |
/**
|
390 |
* Set Web Dorado Logo in admin pages
|
391 |
*/
|
@@ -393,7 +429,7 @@ class ECWD_Admin {
|
|
393 |
global $pagenow, $post;
|
394 |
|
395 |
if ( $this->ecwd_page() ) { ?>
|
396 |
-
<div style="
|
397 |
<a href="https://web-dorado.com/files/fromEventCalendarWD.php" target="_blank"
|
398 |
style="text-decoration:none;box-shadow: none;">
|
399 |
<img src="<?php echo plugins_url( '/assets/pro.png', __FILE__ ); ?>" border="0"
|
6 |
class ECWD_Admin {
|
7 |
|
8 |
protected static $instance = null;
|
9 |
+
protected $version = '1.0.22';
|
10 |
protected $ecwd_page = null;
|
11 |
+
protected $notices = null;
|
12 |
|
13 |
private function __construct() {
|
14 |
$plugin = ECWD::get_instance();
|
15 |
$this->prefix = $plugin->get_prefix();
|
16 |
$this->version = $plugin->get_version();
|
17 |
+
$this->notices = new ECWD_Notices();
|
18 |
add_filter( 'plugin_action_links_' . plugin_basename( plugin_dir_path( __FILE__ ) . $this->prefix . '.php' ), array(
|
19 |
$this,
|
20 |
'add_action_links'
|
35 |
}
|
36 |
//add_filter( 'auto_update_plugin', array($this, 'ecwd_update'), 10, 2 );
|
37 |
|
38 |
+
//Web Dorado Logo
|
39 |
add_action( 'admin_notices', array( $this, 'create_logo_to_head' ) );
|
40 |
+
// Runs the admin notice ignore function incase a dismiss button has been clicked
|
41 |
+
add_action( 'admin_init', array( $this, 'admin_notice_ignore' ) );
|
42 |
+
add_action( 'admin_notices', array($this, 'ecwd_admin_notices') );
|
43 |
+
|
44 |
}
|
45 |
|
46 |
|
271 |
}
|
272 |
|
273 |
wp_localize_script( $this->prefix . '-admin-scripts', 'params', $params );
|
274 |
+
wp_localize_script( ECWD_PLUGIN_PREFIX . '-public', 'ecwd', array(
|
275 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
276 |
+
'ajaxnonce' => wp_create_nonce( ECWD_PLUGIN_PREFIX . '_ajax_nonce' ),
|
277 |
+
'loadingText' => __( 'Loading...', 'ecwd' ),
|
278 |
+
'plugin_url' => ECWD_URL
|
279 |
+
) );
|
280 |
wp_enqueue_script( $this->prefix . '-admin-scripts' );
|
281 |
|
282 |
}
|
397 |
}
|
398 |
}
|
399 |
|
400 |
+
/********ECWD notices************/
|
401 |
+
function ecwd_admin_notices( ) {
|
402 |
+
// Notices filter and run the notices function.
|
403 |
+
|
404 |
+
$admin_notices = apply_filters( 'ecwd_admin_notices', array() );
|
405 |
+
$this->notices->admin_notice( $admin_notices );
|
406 |
+
|
407 |
+
}
|
408 |
+
|
409 |
+
|
410 |
+
|
411 |
+
|
412 |
+
// Ignore function that gets ran at admin init to ensure any messages that were dismissed get marked
|
413 |
+
public function admin_notice_ignore() {
|
414 |
+
$slug = ( isset( $_GET['ecwd_admin_notice_ignore'] ) ) ? $_GET['ecwd_admin_notice_ignore'] : '';
|
415 |
+
if ( isset($_GET['ecwd_admin_notice_ignore']) && current_user_can( 'manage_options' ) ) {
|
416 |
+
$admin_notices_option = get_option( 'ecwd_admin_notice', array() );
|
417 |
+
$admin_notices_option[ $_GET[ 'ecwd_admin_notice_ignore' ] ][ 'dismissed' ] = 1;
|
418 |
+
update_option( 'ecwd_admin_notice', $admin_notices_option );
|
419 |
+
$query_str = remove_query_arg( 'ecwd_admin_notice_ignore' );
|
420 |
+
wp_redirect( $query_str );
|
421 |
+
exit;
|
422 |
+
}
|
423 |
+
}
|
424 |
+
|
425 |
/**
|
426 |
* Set Web Dorado Logo in admin pages
|
427 |
*/
|
429 |
global $pagenow, $post;
|
430 |
|
431 |
if ( $this->ecwd_page() ) { ?>
|
432 |
+
<div style="width: 100%; text-align: right;clear:both;">
|
433 |
<a href="https://web-dorado.com/files/fromEventCalendarWD.php" target="_blank"
|
434 |
style="text-decoration:none;box-shadow: none;">
|
435 |
<img src="<?php echo plugins_url( '/assets/pro.png', __FILE__ ); ?>" border="0"
|
ecwd_class.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
*/
|
7 |
class ECWD {
|
8 |
|
9 |
-
protected $version = '1.0.
|
10 |
protected $plugin_name = 'event-calendar-wd';
|
11 |
protected $prefix = 'ecwd';
|
12 |
protected static $instance = null;
|
@@ -38,7 +38,11 @@ class ECWD {
|
|
38 |
if ( ! defined( 'ECWD_PLUGIN_NAME' ) ) {
|
39 |
define( 'ECWD_PLUGIN_NAME', $this->plugin_name );
|
40 |
}
|
41 |
-
|
|
|
|
|
|
|
|
|
42 |
}
|
43 |
|
44 |
|
@@ -92,9 +96,12 @@ class ECWD {
|
|
92 |
$default_timezone = self::isValidTimezone( @ini_get( 'date.timezone' ) ) ? ini_get( 'date.timezone' ) : 'Europe/Berlin';
|
93 |
$timezone = ( isset( $ecwd_options['time_zone'] ) && self::isValidTimezone( $ecwd_options['time_zone'] ) ) ? $ecwd_options['time_zone'] : $default_timezone;
|
94 |
date_default_timezone_set( $timezone );
|
|
|
|
|
95 |
include_once( 'includes/ecwd-functions.php' );
|
96 |
include_once( 'includes/ecwd-event-class.php' );
|
97 |
include_once( 'includes/ecwd-display-class.php' );
|
|
|
98 |
include_once( 'views/widgets.php' );
|
99 |
}
|
100 |
|
@@ -104,7 +111,7 @@ class ECWD {
|
|
104 |
public function enqueue_scripts() {
|
105 |
global $wp_scripts, $post;
|
106 |
$map_included = false;
|
107 |
-
if($post->post_type == 'ecwd_event'){
|
108 |
if ( isset( $wp_scripts->registered ) && $wp_scripts->registered ) {
|
109 |
foreach ( $wp_scripts->registered as $wp_script ) {
|
110 |
if ( $wp_script->src && ( strpos( $wp_script->src, 'maps.googleapis.com' ) || strpos( $wp_script->src, 'maps.google.com' ) ) !== false ) {
|
@@ -127,7 +134,12 @@ class ECWD {
|
|
127 |
'jquery-ui-draggable',
|
128 |
'masonry'
|
129 |
), $this->version, true );
|
130 |
-
|
|
|
|
|
|
|
|
|
|
|
131 |
}
|
132 |
|
133 |
/*
|
6 |
*/
|
7 |
class ECWD {
|
8 |
|
9 |
+
protected $version = '1.0.20';
|
10 |
protected $plugin_name = 'event-calendar-wd';
|
11 |
protected $prefix = 'ecwd';
|
12 |
protected static $instance = null;
|
38 |
if ( ! defined( 'ECWD_PLUGIN_NAME' ) ) {
|
39 |
define( 'ECWD_PLUGIN_NAME', $this->plugin_name );
|
40 |
}
|
41 |
+
if(! defined( 'ECWD_URL' ) ){
|
42 |
+
define ('ECWD_URL',plugins_url(plugin_basename(dirname(__FILE__))));
|
43 |
+
}if(! defined( 'ECWD_VERSION' ) ){
|
44 |
+
define ('ECWD_VERSION', $this->version);
|
45 |
+
}
|
46 |
}
|
47 |
|
48 |
|
96 |
$default_timezone = self::isValidTimezone( @ini_get( 'date.timezone' ) ) ? ini_get( 'date.timezone' ) : 'Europe/Berlin';
|
97 |
$timezone = ( isset( $ecwd_options['time_zone'] ) && self::isValidTimezone( $ecwd_options['time_zone'] ) ) ? $ecwd_options['time_zone'] : $default_timezone;
|
98 |
date_default_timezone_set( $timezone );
|
99 |
+
include_once('includes/ecwd-notices-class.php');
|
100 |
+
require_once('includes/notices.php');
|
101 |
include_once( 'includes/ecwd-functions.php' );
|
102 |
include_once( 'includes/ecwd-event-class.php' );
|
103 |
include_once( 'includes/ecwd-display-class.php' );
|
104 |
+
|
105 |
include_once( 'views/widgets.php' );
|
106 |
}
|
107 |
|
111 |
public function enqueue_scripts() {
|
112 |
global $wp_scripts, $post;
|
113 |
$map_included = false;
|
114 |
+
if($post->post_type == 'ecwd_event' || $post->post_type == 'ecwd_venue'){
|
115 |
if ( isset( $wp_scripts->registered ) && $wp_scripts->registered ) {
|
116 |
foreach ( $wp_scripts->registered as $wp_script ) {
|
117 |
if ( $wp_script->src && ( strpos( $wp_script->src, 'maps.googleapis.com' ) || strpos( $wp_script->src, 'maps.google.com' ) ) !== false ) {
|
134 |
'jquery-ui-draggable',
|
135 |
'masonry'
|
136 |
), $this->version, true );
|
137 |
+
wp_localize_script( ECWD_PLUGIN_PREFIX . '-public', 'ecwd', array(
|
138 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
139 |
+
'ajaxnonce' => wp_create_nonce( ECWD_PLUGIN_PREFIX . '_ajax_nonce' ),
|
140 |
+
'loadingText' => __( 'Loading...', 'ecwd' ),
|
141 |
+
'plugin_url' => ECWD_URL
|
142 |
+
) );
|
143 |
}
|
144 |
|
145 |
/*
|
includes/calendar-class.php
CHANGED
@@ -742,7 +742,7 @@ class Calendar {
|
|
742 |
global $cal_ID;
|
743 |
$html = '';
|
744 |
|
745 |
-
$next = $this->calcDate( $this->year . '-' . $this->month . '-'
|
746 |
$next_date = '';
|
747 |
$dateparam = $next['year'] . '-' . $next['month'] . '-' . $next['day'];
|
748 |
if ( $this->displaytype == 'day' ) {
|
@@ -1100,10 +1100,10 @@ class Calendar {
|
|
1100 |
|
1101 |
if ( $i > 2 && $this->displaytype !== 'mini' ) {
|
1102 |
$content .= '<li class="ecwd-calendar-more-event">
|
1103 |
-
<span class="ecwd-calendar-event-add"><a href="#more_events_' . $date . '">' . __( 'More events', 'ecwd' ) . '</a></span>
|
1104 |
<div id="more_events_' . $date . '" class="ecwd-modal">
|
1105 |
<div class="ecwd-excluded-events ">
|
1106 |
-
<a href="#
|
1107 |
<div class="modal-header">
|
1108 |
<h4 class="modal-title">' . date( $this->dateformat, strtotime( $date ) ) . '</h4>
|
1109 |
</div>
|
742 |
global $cal_ID;
|
743 |
$html = '';
|
744 |
|
745 |
+
$next = $this->calcDate( $this->year . '-' . $this->month . '-1', '+ 1', 'month' );
|
746 |
$next_date = '';
|
747 |
$dateparam = $next['year'] . '-' . $next['month'] . '-' . $next['day'];
|
748 |
if ( $this->displaytype == 'day' ) {
|
1100 |
|
1101 |
if ( $i > 2 && $this->displaytype !== 'mini' ) {
|
1102 |
$content .= '<li class="ecwd-calendar-more-event">
|
1103 |
+
<span class="ecwd-calendar-event-add"><a href="#" class="more_events_link" div-id="more_events_' . $date . '">' . __( 'More events', 'ecwd' ) . '</a></span>
|
1104 |
<div id="more_events_' . $date . '" class="ecwd-modal">
|
1105 |
<div class="ecwd-excluded-events ">
|
1106 |
+
<a href="#" title="Close" class="ecwd-more-events-close"><i class="fa fa-times"></i></a>
|
1107 |
<div class="modal-header">
|
1108 |
<h4 class="modal-title">' . date( $this->dateformat, strtotime( $date ) ) . '</h4>
|
1109 |
</div>
|
includes/ecwd-functions.php
CHANGED
@@ -5,7 +5,8 @@ function ecwd_print_calendar( $calendar_ids, $display = 'mini', $args = array(),
|
|
5 |
wp_localize_script( ECWD_PLUGIN_PREFIX . '-public', 'ecwd', array(
|
6 |
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
7 |
'ajaxnonce' => wp_create_nonce( ECWD_PLUGIN_PREFIX . '_ajax_nonce' ),
|
8 |
-
'loadingText' => __( 'Loading...', 'ecwd' )
|
|
|
9 |
) );
|
10 |
|
11 |
$defaults = array(
|
@@ -115,6 +116,7 @@ function ecwd_print_calendar( $calendar_ids, $display = 'mini', $args = array(),
|
|
115 |
|
116 |
$markup .= '</div>';
|
117 |
}
|
|
|
118 |
|
119 |
return $markup;
|
120 |
}
|
5 |
wp_localize_script( ECWD_PLUGIN_PREFIX . '-public', 'ecwd', array(
|
6 |
'ajaxurl' => admin_url( 'admin-ajax.php' ),
|
7 |
'ajaxnonce' => wp_create_nonce( ECWD_PLUGIN_PREFIX . '_ajax_nonce' ),
|
8 |
+
'loadingText' => __( 'Loading...', 'ecwd' ),
|
9 |
+
'plugin_url' => ECWD_URL
|
10 |
) );
|
11 |
|
12 |
$defaults = array(
|
116 |
|
117 |
$markup .= '</div>';
|
118 |
}
|
119 |
+
$markup .= '<script id="ecwd_script_handler" type="text/javascript">if(typeof ecwd_js_init_call=="object"){ecwd_js_init_call = new ecwd_js_init();}</script>';
|
120 |
|
121 |
return $markup;
|
122 |
}
|
includes/ecwd-notices-class.php
ADDED
@@ -0,0 +1,227 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Created by PhpStorm.
|
4 |
+
* User: lusinda
|
5 |
+
* Date: 8/28/15
|
6 |
+
* Time: 10:48 AM
|
7 |
+
*/
|
8 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
+
exit;
|
10 |
+
}
|
11 |
+
|
12 |
+
/**
|
13 |
+
* ECWD_Notices Class
|
14 |
+
*
|
15 |
+
*/
|
16 |
+
class ECWD_Notices {
|
17 |
+
static $instance;
|
18 |
+
|
19 |
+
public static function instance() {
|
20 |
+
if ( ! isset( self::$instance ) ) {
|
21 |
+
self::$instance = new ECWD_Notices();
|
22 |
+
}
|
23 |
+
|
24 |
+
return self::$instance;
|
25 |
+
}
|
26 |
+
|
27 |
+
public $notice_spam = 0;
|
28 |
+
public $notice_spam_max = 1;
|
29 |
+
|
30 |
+
// Basic actions to run
|
31 |
+
public function __construct() {
|
32 |
+
|
33 |
+
// Runs the admin notice ignore function incase a dismiss button has been clicked
|
34 |
+
add_action( 'admin_init', array( $this, 'admin_notice_ignore' ) );
|
35 |
+
|
36 |
+
// Runs the admin notice temp ignore function incase a temp dismiss link has been clicked
|
37 |
+
add_action( 'admin_init', array( $this, 'admin_notice_temp_ignore' ) );
|
38 |
+
|
39 |
+
}
|
40 |
+
|
41 |
+
// Checks to ensure notices aren't disabled and the user has the correct permissions.
|
42 |
+
public function ecwd_admin_notice() {
|
43 |
+
|
44 |
+
$ecwd_settings = get_option( 'ecwd_admin_notice' );
|
45 |
+
if ( ! isset( $ecwd_settings['disable_admin_notices'] ) || ( isset( $ecwd_settings['disable_admin_notices'] ) && $ecwd_settings['disable_admin_notices'] == 0 ) ) {
|
46 |
+
if ( current_user_can( 'manage_options' ) ) {
|
47 |
+
return true;
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
return false;
|
52 |
+
|
53 |
+
}
|
54 |
+
|
55 |
+
// Primary notice function that can be called from an outside function sending necessary variables
|
56 |
+
public function admin_notice( $admin_notices ) {
|
57 |
+
|
58 |
+
// Check options
|
59 |
+
if ( ! $this->ecwd_admin_notice() ) {
|
60 |
+
return false;
|
61 |
+
}
|
62 |
+
|
63 |
+
foreach ( $admin_notices as $slug => $admin_notice ) {
|
64 |
+
// Call for spam protection
|
65 |
+
if ( $this->anti_notice_spam() ) {
|
66 |
+
return false;
|
67 |
+
}
|
68 |
+
|
69 |
+
// Check for proper page to display on
|
70 |
+
if ( isset( $admin_notices[ $slug ]['pages'] ) && is_array( $admin_notices[ $slug ]['pages'] ) ) {
|
71 |
+
if ( ! $this->admin_notice_pages( $admin_notices[ $slug ]['pages'] ) ) {
|
72 |
+
return false;
|
73 |
+
}
|
74 |
+
}
|
75 |
+
// Check for required fields
|
76 |
+
if ( ! $this->required_fields( $admin_notices[ $slug ] ) ) {
|
77 |
+
// Get the current date then set start date to either passed value or current date value and add interval
|
78 |
+
$current_date = current_time( "n/j/Y" );
|
79 |
+
$start = ( isset( $admin_notices[ $slug ]['start'] ) ? $admin_notices[ $slug ]['start'] : $current_date );
|
80 |
+
$start = date( "n/j/Y", strtotime( $start ) );
|
81 |
+
$date_array = explode( '/', $start );
|
82 |
+
$interval = ( isset( $admin_notices[ $slug ]['int'] ) ? $admin_notices[ $slug ]['int'] : 0 );
|
83 |
+
$date_array[1] += $interval;
|
84 |
+
$start = date( "n/j/Y", mktime( 0, 0, 0, $date_array[0], $date_array[1], $date_array[2] ) );
|
85 |
+
|
86 |
+
// This is the main notices storage option
|
87 |
+
$admin_notices_option = get_option( 'ecwd_admin_notice', array() );
|
88 |
+
// Check if the message is already stored and if so just grab the key otherwise store the message and its associated date information
|
89 |
+
if ( ! array_key_exists( $slug, $admin_notices_option ) ) {
|
90 |
+
$admin_notices_option[ $slug ]['start'] = $start;
|
91 |
+
$admin_notices_option[ $slug ]['int'] = $interval;
|
92 |
+
update_option( 'ecwd_admin_notice', $admin_notices_option );
|
93 |
+
}
|
94 |
+
|
95 |
+
// Sanity check to ensure we have accurate information
|
96 |
+
// New date information will not overwrite old date information
|
97 |
+
$admin_display_check = ( isset( $admin_notices_option[ $slug ]['dismissed'] ) ? $admin_notices_option[ $slug ]['dismissed'] : 0 );
|
98 |
+
|
99 |
+
$admin_display_start = ( isset( $admin_notices_option[ $slug ]['start'] ) ? $admin_notices_option[ $slug ]['start'] : $start );
|
100 |
+
$admin_display_interval = ( isset( $admin_notices_option[ $slug ]['int'] ) ? $admin_notices_option[ $slug ]['int'] : $interval );
|
101 |
+
$admin_display_msg = ( isset( $admin_notices[ $slug ]['msg'] ) ? $admin_notices[ $slug ]['msg'] : '' );
|
102 |
+
$admin_display_title = ( isset( $admin_notices[ $slug ]['title'] ) ? $admin_notices[ $slug ]['title'] : '' );
|
103 |
+
$admin_display_link = ( isset( $admin_notices[ $slug ]['link'] ) ? $admin_notices[ $slug ]['link'] : '' );
|
104 |
+
$output_css = false;
|
105 |
+
|
106 |
+
// Ensure the notice hasn't been hidden and that the current date is after the start date
|
107 |
+
if ($admin_display_check == 0 && strtotime( $admin_display_start ) <= strtotime( $current_date )) {
|
108 |
+
|
109 |
+
// Get remaining query string
|
110 |
+
$query_str = esc_url( add_query_arg( 'ecwd_admin_notice_ignore', $slug ) );
|
111 |
+
|
112 |
+
// Admin notice display output
|
113 |
+
echo '<div class="update-nag ecwd-admin-notice">';
|
114 |
+
echo '<div class="ecwd-notice-logo"></div>';
|
115 |
+
echo ' <p class="ecwd-notice-title">';
|
116 |
+
echo $admin_display_title;
|
117 |
+
echo ' </p>';
|
118 |
+
echo ' <p class="ecwd-notice-body">';
|
119 |
+
echo $admin_display_msg;
|
120 |
+
echo ' </p>';
|
121 |
+
echo '<ul class="ecwd-notice-body ecwd-blue">
|
122 |
+
' . $admin_display_link . '
|
123 |
+
</ul>';
|
124 |
+
echo '<a href="' . $query_str . '" class="dashicons dashicons-dismiss"></a>';
|
125 |
+
echo '</div>';
|
126 |
+
|
127 |
+
$this->notice_spam += 1;
|
128 |
+
$output_css = true;
|
129 |
+
}
|
130 |
+
if ( $output_css ) {
|
131 |
+
wp_enqueue_style( 'ecwd-admin-notices', ECWD_URL .'/css/admin/notices.css?ecwd_ver=' . ECWD_VERSION );
|
132 |
+
}
|
133 |
+
}
|
134 |
+
}
|
135 |
+
}
|
136 |
+
|
137 |
+
// Spam protection check
|
138 |
+
public function anti_notice_spam() {
|
139 |
+
|
140 |
+
if ( $this->notice_spam >= $this->notice_spam_max ) {
|
141 |
+
return true;
|
142 |
+
}
|
143 |
+
|
144 |
+
return false;
|
145 |
+
}
|
146 |
+
|
147 |
+
// Ignore function that gets ran at admin init to ensure any messages that were dismissed get marked
|
148 |
+
public function admin_notice_ignore() {
|
149 |
+
|
150 |
+
// If user clicks to ignore the notice, update the option to not show it again
|
151 |
+
if ( isset( $_GET['ecwd_admin_notice_ignore'] ) ) {
|
152 |
+
|
153 |
+
$admin_notices_option = get_option( 'ecwd_admin_notice', array() );
|
154 |
+
$admin_notices_option[ $_GET['ecwd_admin_notice_ignore'] ]['dismissed'] = 1;
|
155 |
+
update_option( 'ecwd_admin_notice', $admin_notices_option );
|
156 |
+
$query_str = remove_query_arg( 'ecwd_admin_notice_ignore' );
|
157 |
+
wp_redirect( $query_str );
|
158 |
+
exit;
|
159 |
+
}
|
160 |
+
}
|
161 |
+
|
162 |
+
// Temp Ignore function that gets ran at admin init to ensure any messages that were temp dismissed get their start date changed
|
163 |
+
public function admin_notice_temp_ignore() {
|
164 |
+
|
165 |
+
// If user clicks to temp ignore the notice, update the option to change the start date - default interval of 14 days
|
166 |
+
if ( isset( $_GET['ecwd_admin_notice_temp_ignore'] ) ) {
|
167 |
+
|
168 |
+
$admin_notices_option = get_option( 'ecwd_admin_notice', array() );
|
169 |
+
|
170 |
+
$current_date = current_time( "n/j/Y" );
|
171 |
+
$date_array = explode( '/', $current_date );
|
172 |
+
$interval = ( isset( $_GET['ecwd_int'] ) ? $_GET['ecwd_int'] : 14 );
|
173 |
+
$date_array[1] += $interval;
|
174 |
+
$new_start = date( "n/j/Y", mktime( 0, 0, 0, $date_array[0], $date_array[1], $date_array[2] ) );
|
175 |
+
|
176 |
+
$admin_notices_option[ $_GET['ecwd_admin_notice_temp_ignore'] ]['start'] = $new_start;
|
177 |
+
$admin_notices_option[ $_GET['ecwd_admin_notice_temp_ignore'] ]['dismissed'] = 0;
|
178 |
+
update_option( 'ecwd_admin_notice', $admin_notices_option );
|
179 |
+
$query_str = remove_query_arg( array( 'ecwd_admin_notice_temp_ignore', 'ecwd_int' ) );
|
180 |
+
wp_redirect( $query_str );
|
181 |
+
exit;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
|
185 |
+
public function admin_notice_pages( $pages ) {
|
186 |
+
|
187 |
+
foreach ( $pages as $key => $page ) {
|
188 |
+
if ( is_array( $page ) ) {
|
189 |
+
if ( isset( $_GET['page'] ) && $_GET['page'] == $page[0] && isset( $_GET['tab'] ) && $_GET['tab'] == $page[1] ) {
|
190 |
+
return true;
|
191 |
+
}
|
192 |
+
} else {
|
193 |
+
if ( $page == 'all' ) {
|
194 |
+
return true;
|
195 |
+
}
|
196 |
+
if ( get_current_screen()->id === $page ) {
|
197 |
+
return true;
|
198 |
+
}
|
199 |
+
if ( isset( $_GET['page'] ) && $_GET['page'] == $page ) {
|
200 |
+
return true;
|
201 |
+
}
|
202 |
+
}
|
203 |
+
|
204 |
+
return false;
|
205 |
+
}
|
206 |
+
}
|
207 |
+
|
208 |
+
// Required fields check
|
209 |
+
public function required_fields( $fields ) {
|
210 |
+
if ( ! isset( $fields['msg'] ) || ( isset( $fields['msg'] ) && empty( $fields['msg'] ) ) ) {
|
211 |
+
return true;
|
212 |
+
}
|
213 |
+
|
214 |
+
if ( ! isset( $fields['title'] ) || ( isset( $fields['title'] ) && empty( $fields['title'] ) ) ) {
|
215 |
+
return true;
|
216 |
+
}
|
217 |
+
|
218 |
+
return false;
|
219 |
+
}
|
220 |
+
|
221 |
+
// Special parameters function that is to be used in any extension of this class
|
222 |
+
public function special_parameters( $admin_notices ) {
|
223 |
+
// Intentionally left blank
|
224 |
+
}
|
225 |
+
|
226 |
+
}
|
227 |
+
|
includes/notices.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Created by PhpStorm.
|
4 |
+
* User: lusinda
|
5 |
+
* Date: 8/27/15
|
6 |
+
* Time: 7:05 PM
|
7 |
+
*/
|
8 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
9 |
+
|
10 |
+
|
11 |
+
|
12 |
+
function ecwd_admin_notices( $notices ) {
|
13 |
+
|
14 |
+
$two_week_review_ignore = add_query_arg( array( 'ecwd_admin_notice_ignore' => 'two_week_review' ) );
|
15 |
+
$two_week_review_temp = add_query_arg( array( 'ecwd_admin_notice_temp_ignore' => 'two_week_review', 'int' => 14 ) );
|
16 |
+
$notices['two_week_review'] = array(
|
17 |
+
'title' => __( 'Leave A Review?', 'ecwd' ),
|
18 |
+
'msg' => __( 'We hope you\'ve enjoyed using Event Calendar WD! Would you consider leaving us a review on WordPress.org?', 'ecwd' ),
|
19 |
+
'link' => '<li><span class="dashicons dashicons-external"></span><a href="http://wordpress.org/support/view/plugin-reviews/event-calendar-wd?filter=5" target="_blank">' . __( 'Sure! I\'d love to!', 'ecwd' ) . '</a></li>
|
20 |
+
<li> <span class="dashicons dashicons-smiley"></span><a href="' . $two_week_review_ignore . '"> ' . __( 'I\'ve already left a review', 'ecwd' ) . '</a></li>
|
21 |
+
<li><span class="dashicons dashicons-calendar-alt"></span><a href="' . $two_week_review_temp . '">' . __( 'Maybe Later' ,'ecwd' ) . '</a></li>
|
22 |
+
<li><span class="dashicons dashicons-dismiss"></span><a href="' . $two_week_review_ignore . '">' . __( 'Never show again' ,'ecwd' ) . '</a></li>',
|
23 |
+
|
24 |
+
'int' => 14
|
25 |
+
);
|
26 |
+
|
27 |
+
|
28 |
+
return $notices;
|
29 |
+
}
|
30 |
+
|
31 |
+
add_filter( 'ecwd_admin_notices', 'ecwd_admin_notices' );
|
32 |
+
|
js/scripts.js
CHANGED
@@ -4,15 +4,19 @@
|
|
4 |
* Public JS functions
|
5 |
*/
|
6 |
|
7 |
-
|
|
|
|
|
|
|
8 |
(function ($){
|
9 |
-
|
|
|
10 |
if(jQuery('#ecwd-calendar-main-css').length == 0){
|
11 |
jQuery("<link/>", {
|
12 |
id: 'ecwd-calendar-main-css',
|
13 |
rel: "stylesheet",
|
14 |
type: "text/css",
|
15 |
-
href:
|
16 |
}).appendTo("head");
|
17 |
}
|
18 |
var cwidth = jQuery(".calendar_main .ecwd_calendar").width();
|
@@ -35,14 +39,12 @@
|
|
35 |
doMasonry();
|
36 |
}, 1);
|
37 |
|
38 |
-
|
39 |
-
showMap();
|
40 |
-
}
|
41 |
jQuery('.ecwd_reset_filters').click(function () {
|
42 |
jQuery(this).closest('.ecwd_filters').find('input:checkbox').attr('checked', false);
|
43 |
});
|
44 |
|
45 |
-
jQuery('
|
46 |
var days = jQuery('input[name="ecwd_weekdays[]"]:checked').map(function () {
|
47 |
return this.value;
|
48 |
}).get();
|
@@ -107,26 +109,20 @@
|
|
107 |
ecwd_nonce: ecwd.ajaxnonce
|
108 |
}, function (data) {
|
109 |
$(main_div).find('div.ecwd_calendar').replaceWith(data);
|
110 |
-
|
111 |
-
showFullCalendarEventOnHover();
|
112 |
-
upcomingEventsSlider();
|
113 |
-
showWidgetEventDesc();
|
114 |
-
calendarFullResponsive();
|
115 |
-
show_filters(main_div);
|
116 |
-
showFilterSliderArrow();
|
117 |
-
createSearchForm();
|
118 |
-
if ($('.ecwd_map_div').length > 0) {
|
119 |
-
showMap();
|
120 |
-
}
|
121 |
-
if ($('.ecwd-poster-board').length > 0) {
|
122 |
-
doMasonry();
|
123 |
-
}
|
124 |
-
|
125 |
});
|
126 |
e.stopPropagation();
|
127 |
});
|
128 |
|
129 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
function createSearchForm() {
|
131 |
var scinpt = document.getElementById("ecwd-search-submit");
|
132 |
if (scinpt !== null) {
|
@@ -194,22 +190,6 @@
|
|
194 |
ecwd_nonce: ecwd.ajaxnonce
|
195 |
}, function (data) {
|
196 |
$(main_div).find('div.ecwd_calendar').replaceWith(data);
|
197 |
-
showMiniCalendarEventOnHover();
|
198 |
-
showFullCalendarEventOnHover();
|
199 |
-
upcomingEventsSlider();
|
200 |
-
showWidgetEventDesc();
|
201 |
-
calendarFullResponsive();
|
202 |
-
show_filters(main_div);
|
203 |
-
showFilterSliderArrow();
|
204 |
-
createSearchForm();
|
205 |
-
if ($('.ecwd_map_div').length > 0) {
|
206 |
-
showMap();
|
207 |
-
}
|
208 |
-
if ($('.ecwd-poster-board').length > 0) {
|
209 |
-
doMasonry();
|
210 |
-
}
|
211 |
-
|
212 |
-
|
213 |
});
|
214 |
jQuery('.ecwd-search-submit').blur();
|
215 |
}
|
@@ -219,7 +199,7 @@
|
|
219 |
|
220 |
var ulEvent, day;
|
221 |
var ulEventFull, dayFull;
|
222 |
-
jQuery('
|
223 |
dayFull = jQuery(this).attr('data-date').split('-');
|
224 |
dayFull = dayFull[2];
|
225 |
ulEventFull = jQuery(this).find('ul.events');
|
@@ -281,20 +261,8 @@
|
|
281 |
jQuery('.ecwd-show-map-span').click(function () {
|
282 |
jQuery('.ecwd-show-map').show();
|
283 |
});
|
284 |
-
|
285 |
-
|
286 |
-
jQuery(window).resize(function () {
|
287 |
-
jQuery(".ecwd-poster-board").masonry("reload");
|
288 |
-
view_click = 0;
|
289 |
-
cwidth = jQuery(".ecwd_calendar").width();
|
290 |
-
jQuery('.ecwd_calendar').find('.ecwd-events-day-details').html('');
|
291 |
-
upcomingEventsSlider();
|
292 |
-
calendarFullResponsive();
|
293 |
-
show_filters();
|
294 |
-
showFilterSliderArrow();
|
295 |
-
|
296 |
-
});
|
297 |
-
|
298 |
function doMasonry() {
|
299 |
var $container = jQuery('.ecwd-poster-board');
|
300 |
if($container.length && jQuery('.ecwd-poster-board').find('.ecwd-poster-item').length>0) {
|
@@ -631,7 +599,13 @@
|
|
631 |
|
632 |
}
|
633 |
|
634 |
-
function
|
|
|
|
|
|
|
|
|
|
|
|
|
635 |
var maps = [];
|
636 |
jQuery(".ecwd_map_div").each(function (k, v) {
|
637 |
maps[k] = this;
|
@@ -694,7 +668,19 @@
|
|
694 |
});
|
695 |
|
696 |
});
|
697 |
-
|
698 |
}
|
699 |
-
|
700 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
* Public JS functions
|
5 |
*/
|
6 |
|
7 |
+
if(typeof ecwd_js_init_call !="object")
|
8 |
+
var ecwd_js_init_call;
|
9 |
+
if(typeof ecwd_js_init !="function")
|
10 |
+
var ecwd_js_init;
|
11 |
(function ($){
|
12 |
+
ecwd_js_init = function () {
|
13 |
+
ecwd_eventsOff();
|
14 |
if(jQuery('#ecwd-calendar-main-css').length == 0){
|
15 |
jQuery("<link/>", {
|
16 |
id: 'ecwd-calendar-main-css',
|
17 |
rel: "stylesheet",
|
18 |
type: "text/css",
|
19 |
+
href: ecwd.plugin_url+'/css/calendar.css?ver=1'
|
20 |
}).appendTo("head");
|
21 |
}
|
22 |
var cwidth = jQuery(".calendar_main .ecwd_calendar").width();
|
39 |
doMasonry();
|
40 |
}, 1);
|
41 |
|
42 |
+
|
|
|
|
|
43 |
jQuery('.ecwd_reset_filters').click(function () {
|
44 |
jQuery(this).closest('.ecwd_filters').find('input:checkbox').attr('checked', false);
|
45 |
});
|
46 |
|
47 |
+
jQuery('.ecwd_calendar_prev_next .next, .ecwd_calendar_prev_next .previous, .ecwd_calendar .type, .cpage, .current-month a, .ecwd_filter, .ecwd_reset_filters').on('click', function (e) {
|
48 |
var days = jQuery('input[name="ecwd_weekdays[]"]:checked').map(function () {
|
49 |
return this.value;
|
50 |
}).get();
|
109 |
ecwd_nonce: ecwd.ajaxnonce
|
110 |
}, function (data) {
|
111 |
$(main_div).find('div.ecwd_calendar').replaceWith(data);
|
112 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
});
|
114 |
e.stopPropagation();
|
115 |
});
|
116 |
|
117 |
+
jQuery('.ecwd_calendar .more_events_link').on('click',function(){
|
118 |
+
jQuery('.ecwd_calendar #'+jQuery(this).attr('div-id')).show().css({'opacity':'1','pointer-events': 'auto'});
|
119 |
+
return false;
|
120 |
+
});
|
121 |
+
jQuery('.ecwd_calendar .ecwd-more-events-close .fa').on('click',function(){
|
122 |
+
jQuery(this).closest('.ecwd-modal').hide().css({'opacity':'0','pointer-events': 'none'});
|
123 |
+
return false;
|
124 |
+
});
|
125 |
+
|
126 |
function createSearchForm() {
|
127 |
var scinpt = document.getElementById("ecwd-search-submit");
|
128 |
if (scinpt !== null) {
|
190 |
ecwd_nonce: ecwd.ajaxnonce
|
191 |
}, function (data) {
|
192 |
$(main_div).find('div.ecwd_calendar').replaceWith(data);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
});
|
194 |
jQuery('.ecwd-search-submit').blur();
|
195 |
}
|
199 |
|
200 |
var ulEvent, day;
|
201 |
var ulEventFull, dayFull;
|
202 |
+
jQuery('div.ecwd_calendar .has-events').on('click', function (e) {
|
203 |
dayFull = jQuery(this).attr('data-date').split('-');
|
204 |
dayFull = dayFull[2];
|
205 |
ulEventFull = jQuery(this).find('ul.events');
|
261 |
jQuery('.ecwd-show-map-span').click(function () {
|
262 |
jQuery('.ecwd-show-map').show();
|
263 |
});
|
264 |
+
|
265 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
266 |
function doMasonry() {
|
267 |
var $container = jQuery('.ecwd-poster-board');
|
268 |
if($container.length && jQuery('.ecwd-poster-board').find('.ecwd-poster-item').length>0) {
|
599 |
|
600 |
}
|
601 |
|
602 |
+
this.showMap = function () {
|
603 |
+
if (typeof google == 'undefined' || typeof google.maps == "undefined") {
|
604 |
+
var script = document.createElement('script');
|
605 |
+
script.type = 'text/javascript';
|
606 |
+
script.src = 'https://maps.googleapis.com/maps/api/js?v=3.exp&libraries=places&callback=ecwd_js_init_call.showMap';
|
607 |
+
document.body.appendChild(script);
|
608 |
+
}else{
|
609 |
var maps = [];
|
610 |
jQuery(".ecwd_map_div").each(function (k, v) {
|
611 |
maps[k] = this;
|
668 |
});
|
669 |
|
670 |
});
|
671 |
+
}
|
672 |
}
|
673 |
+
if (jQuery('.ecwd_map_div').length > 0) {
|
674 |
+
this.showMap();
|
675 |
+
}
|
676 |
+
}
|
677 |
+
ecwd_js_init_call = new ecwd_js_init();
|
678 |
+
}(jQuery));
|
679 |
+
function ecwd_eventsOff(){
|
680 |
+
jQuery(".calendar_main").find("*").off();
|
681 |
+
jQuery(".calendar_main").children().off();
|
682 |
+
}
|
683 |
+
|
684 |
+
jQuery(window).resize(function () {
|
685 |
+
ecwd_js_init_call = new ecwd_js_init();
|
686 |
+
});
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://web-dorado.com/products/wordpress-event-calendar-wd.html
|
|
4 |
Tags: calendar, calendars, event, event calendar, event manager, events calendar, calendar widget, event registration, event management,events, agenda, holiday calendar , scheduling, free calendar, Calender, upcoming events , event widget , event list, calendar localization, Organizer, editorial calendar, Interactive Calendar, news calendar, meeting , appointment, event tracking, event organizer, upcoming events widget, event page, event bookings, recurring, recurring events, conference, date, dates, schedule, times, venue, AJAX, responsive, shortcode, seminar, summit
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 4.3
|
7 |
-
Stable tag: 1.0.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -130,14 +130,20 @@ After downloading the ZIP file of the Event Calendar WD plugin,
|
|
130 |
|
131 |
== Changelog ==
|
132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
= 1.0.21 =
|
134 |
-
Fixed: JS error in widgets page
|
135 |
|
136 |
= 1.0.20 =
|
137 |
-
Fixed: Show event url issue
|
138 |
-
Added: "noindex, nofollow" to calendar links
|
139 |
-
Added: Open pop in new tab option
|
140 |
-
Added: Japanese support
|
141 |
|
142 |
= 1.0.19 =
|
143 |
Minor bug fixed
|
@@ -157,7 +163,7 @@ Added: Show the repeat rate in event page option
|
|
157 |
Added: Show AM/PM option
|
158 |
|
159 |
= 1.0.14 =
|
160 |
-
Fixed: Conflict with Avada theme
|
161 |
Added: Date to events link
|
162 |
|
163 |
= 1.0.13 =
|
@@ -167,21 +173,21 @@ Changed: Calendar Add-ons page
|
|
167 |
Changed: Calendar Add-ons page
|
168 |
|
169 |
= 1.0.10 =
|
170 |
-
Added: Organizers and venues archive page order option
|
171 |
-
Added: Show categories and tags in event page option
|
172 |
Fixed: Featured image sizes in widget
|
173 |
|
174 |
= 1.0.9 =
|
175 |
-
Fixed: Show google maps conflict with other plugins
|
176 |
-
Fixed: Geolocation bug
|
177 |
Fixed: Save organizer featured image issue
|
178 |
|
179 |
= 1.0.8 =
|
180 |
-
Changed: Event page
|
181 |
-
Added: Portuguese language
|
182 |
|
183 |
= 1.0.7 =
|
184 |
-
New: Related events slider
|
185 |
New: Enable/disable rewrite rule option
|
186 |
|
187 |
= 1.0.6 =
|
@@ -189,7 +195,7 @@ Changed: Removed Add Venue link
|
|
189 |
Fixed: Delete event from calendar page issue
|
190 |
|
191 |
= 1.0.5 =
|
192 |
-
New: Events Filters in backend
|
193 |
Fixed: Bug in shortcode
|
194 |
|
195 |
= 1.0.4 =
|
4 |
Tags: calendar, calendars, event, event calendar, event manager, events calendar, calendar widget, event registration, event management,events, agenda, holiday calendar , scheduling, free calendar, Calender, upcoming events , event widget , event list, calendar localization, Organizer, editorial calendar, Interactive Calendar, news calendar, meeting , appointment, event tracking, event organizer, upcoming events widget, event page, event bookings, recurring, recurring events, conference, date, dates, schedule, times, venue, AJAX, responsive, shortcode, seminar, summit
|
5 |
Requires at least: 3.9
|
6 |
Tested up to: 4.3
|
7 |
+
Stable tag: 1.0.22
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
130 |
|
131 |
== Changelog ==
|
132 |
|
133 |
+
= 1.0.22 =
|
134 |
+
Added: Ajaxed themes support
|
135 |
+
Fixed: Next month link issue
|
136 |
+
Changed: More events dialog
|
137 |
+
Added: Support/rate us messages
|
138 |
+
|
139 |
= 1.0.21 =
|
140 |
+
Fixed: JS error in widgets page
|
141 |
|
142 |
= 1.0.20 =
|
143 |
+
Fixed: Show event url issue
|
144 |
+
Added: "noindex, nofollow" to calendar links
|
145 |
+
Added: Open pop in new tab option
|
146 |
+
Added: Japanese support
|
147 |
|
148 |
= 1.0.19 =
|
149 |
Minor bug fixed
|
163 |
Added: Show AM/PM option
|
164 |
|
165 |
= 1.0.14 =
|
166 |
+
Fixed: Conflict with Avada theme
|
167 |
Added: Date to events link
|
168 |
|
169 |
= 1.0.13 =
|
173 |
Changed: Calendar Add-ons page
|
174 |
|
175 |
= 1.0.10 =
|
176 |
+
Added: Organizers and venues archive page order option
|
177 |
+
Added: Show categories and tags in event page option
|
178 |
Fixed: Featured image sizes in widget
|
179 |
|
180 |
= 1.0.9 =
|
181 |
+
Fixed: Show google maps conflict with other plugins
|
182 |
+
Fixed: Geolocation bug
|
183 |
Fixed: Save organizer featured image issue
|
184 |
|
185 |
= 1.0.8 =
|
186 |
+
Changed: Event page
|
187 |
+
Added: Portuguese language
|
188 |
|
189 |
= 1.0.7 =
|
190 |
+
New: Related events slider
|
191 |
New: Enable/disable rewrite rule option
|
192 |
|
193 |
= 1.0.6 =
|
195 |
Fixed: Delete event from calendar page issue
|
196 |
|
197 |
= 1.0.5 =
|
198 |
+
New: Events Filters in backend
|
199 |
Fixed: Bug in shortcode
|
200 |
|
201 |
= 1.0.4 =
|
views/ecwd-venue-content.php
CHANGED
@@ -199,3 +199,4 @@ echo $content;
|
|
199 |
<?php } ?>
|
200 |
|
201 |
</div>
|
|
199 |
<?php } ?>
|
200 |
|
201 |
</div>
|
202 |
+
<script id="ecwd_script_handler" type="text/javascript">if(typeof ecwd_js_init_call=="object"){ecwd_js_init_call = new ecwd_js_init();}</script>
|
views/single-event.php
CHANGED
@@ -551,5 +551,5 @@ get_header();
|
|
551 |
<?php endwhile; ?>
|
552 |
|
553 |
</div>
|
554 |
-
|
555 |
<?php get_footer(); ?>
|
551 |
<?php endwhile; ?>
|
552 |
|
553 |
</div>
|
554 |
+
<script id="ecwd_script_handler" type="text/javascript">if(typeof ecwd_js_init_call=="object"){ecwd_js_init_call = new ecwd_js_init();}</script>
|
555 |
<?php get_footer(); ?>
|