version 3.3.5

This commit is contained in:
magepeopleteam 2020-10-26 11:41:46 +00:00
parent 73118a49d2
commit 0ce3316c94
27 changed files with 619 additions and 277 deletions

View File

@ -282,7 +282,6 @@ div.mep_event_list a{border: none;text-decoration: none !important;box-shadow:
.mep_event_list_item {border: 1px solid #ddd;padding: 10px;margin: 10px 0;} .mep_event_list_item {border: 1px solid #ddd;padding: 10px;margin: 10px 0;}
.mep_event_list_item:hover {border-color: #ffbe30;} .mep_event_list_item:hover {border-color: #ffbe30;}
.mep_list_thumb {width: 40%;position: relative;} .mep_list_thumb {width: 40%;position: relative;}
.mep_list_thumb img{min-height: 160px;}
.mep-event-excerpt {margin: 5px 0;} .mep-event-excerpt {margin: 5px 0;}
.mep_list_event_details {width:60% ;margin: 0 0 0 7px;} .mep_list_event_details {width:60% ;margin: 0 0 0 7px;}
.mep_list_event_details p{white-space: nowrap;font-size: 15px;font-weight: 500;overflow: hidden;} .mep_list_event_details p{white-space: nowrap;font-size: 15px;font-weight: 500;overflow: hidden;}
@ -347,10 +346,7 @@ button.single_add_to_cart_button.button.alt.btn-mep-event-cart { cursor: pointer
color: #000; color: #000;
text-decoration: none; text-decoration: none;
} }
.owl-carousel .owl-item .mep_list_thumb img {
min-height: 160px;
max-height: 200px;
}
.mep_event_list button.owl-prev { .mep_event_list button.owl-prev {
@ -390,11 +386,13 @@ button.single_add_to_cart_button.button.alt.btn-mep-event-cart { cursor: pointer
background:#f2f2f2; background:#f2f2f2;
} }
.mep_event_minimal_list .mep_list_thumb { .mep_event_minimal_list .mep_list_thumb {
width: 6%; width: 52px;
position: relative; position: relative;
order:2;
} }
.mep_event_minimal_list .mep_list_event_details { .mep_event_minimal_list .mep_list_event_details {
width: 93%; width: calc(100% - 60px);
order:1;
} }
.mep_event_minimal_list .mep-ev-start-date { .mep_event_minimal_list .mep-ev-start-date {
top: -3px; top: -3px;
@ -405,8 +403,7 @@ button.single_add_to_cart_button.button.alt.btn-mep-event-cart { cursor: pointer
} }
.mep_event_minimal_list .mep_more_date_btn { .mep_event_minimal_list .mep_more_date_btn {
padding: 2px 5px; padding: 2px 5px;
bottom: -10px; margin:10px 0 0 0;
left: -20px;
width: 233px; width: 233px;
position: relative; position: relative;
} }
@ -416,8 +413,7 @@ button.single_add_to_cart_button.button.alt.btn-mep-event-cart { cursor: pointer
color:#000; color:#000;
} }
span.mep_minimal_list_location { span.mep_minimal_list_location {
display: inline-block; display: block;
margin-left: 20px;
} }
span.mep_minimal_list_date, span.mep_minimal_list_location { span.mep_minimal_list_date, span.mep_minimal_list_location {
color: #505050; color: #505050;
@ -431,8 +427,9 @@ span.mep_minimal_list_date, span.mep_minimal_list_location {
/* Native Style */ /* Native Style */
.mep_event_native_list { div.mep_event_native_list {
display: block; display: -webkit-flex;
display:flex;
width: 100%; width: 100%;
} }
.mep_event_native_list h2 { .mep_event_native_list h2 {
@ -441,20 +438,17 @@ span.mep_minimal_list_date, span.mep_minimal_list_location {
} }
.mep_event_native_list .mep_list_thumb img, .owl-carousel .owl-item .mep_event_native_list .mep_list_thumb img { .mep_event_native_list .mep_list_thumb img, .owl-carousel .owl-item .mep_event_native_list .mep_list_thumb img {
border-radius: 100%; border-radius: 100%;
height: auto; height: 80px;
width: auto; width:80px;
min-height: 90px;
border: 3px solid #ddd; border: 3px solid #ddd;
padding: 1px; padding: 1px;
} }
.mep_event_native_list .mep_list_thumb { .mep_event_native_list .mep_list_thumb {
width: 11%; width: 90px;
}
.mep_event_native_list .mep-list-header {
min-height: 90px;
} }
.mep_event_native_list .mep-list-header::before { .mep_event_native_list .mep-list-header::before {
border-left: 2px solid; border-left: 2px solid;
} }
@ -464,8 +458,6 @@ span.mep_minimal_list_date, span.mep_minimal_list_location {
} }
.mep_event_native_list .mep_more_date_btn { .mep_event_native_list .mep_more_date_btn {
padding: 2px 5px; padding: 2px 5px;
bottom: -10px;
left: -20px;
width: 233px; width: 233px;
position: relative; position: relative;
} }
@ -474,12 +466,8 @@ span.mep_minimal_list_date, span.mep_minimal_list_location {
}.mep_event_minimal_listh3.mep_list_date { }.mep_event_minimal_listh3.mep_list_date {
color:#000; color:#000;
} }
span.mep_minimal_list_location {
display: inline-block;
margin-left: 20px;
}
.mep_event_native_list .mep_list_event_details { .mep_event_native_list .mep_list_event_details {
width: 80%; width: calc(100% - 90px);
} }
/* Timeline Style */ /* Timeline Style */
@ -795,6 +783,27 @@ span.mep_single_date_btn {
cursor: pointer; cursor: pointer;
} }
.mep-default-feature-content ul {
margin-left: 15px!important;
}
/******Style added by sumon*******/
.mep_list_thumb,
.mep_list_event_details{min-height:100px;}
div.one_column{display:-webkit-flex;display:flex;width:100%;margin: 0 0 18px 0;}
div.three_column{width:calc(33.33% - 18px);margin: 0 15px 15px 0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-justify-content: space-between;justify-content: space-between;}
div.mep_event_minimal_list .mep_list_thumb,
div.mep_event_minimal_list .mep_list_event_details{min-height:auto;}
div.mep_event_minimal_list{display:-webkit-flex;display:flex;}
.mep-list-header{padding: 0 0 7px 20px;}
div.mep_event_native_list .mep_list_thumb,
div.mep_event_native_list .mep_list_event_details{min-height:auto;}
@media only screen and (max-width: 650px){
.mep_list_thumb,
.mep_list_event_details{width:100%;min-height:100px;}
div.one_column{-webkit-flex-direction:column;flex-direction:column;}
}
/******Style added by sumon*******/
/******Responsive*******/ /******Responsive*******/
@media only screen and (max-width: 1199px) { @media only screen and (max-width: 1199px) {
/********Default Theme***********/ /********Default Theme***********/
@ -890,16 +899,11 @@ span.mep_single_date_btn {
.mage_grid_box{margin: 0;} .mage_grid_box{margin: 0;}
.mep-events-wrapper input.extra-qty-box{width: 30px;} .mep-events-wrapper input.extra-qty-box{width: 30px;}
.mep-events-wrapper .mage_input_group{max-width: 90px;} .mep-events-wrapper .mage_input_group{max-width: 90px;}
.mep_event_minimal_list .mep_list_event_details {padding-left: 38px;}
.mep_event_list_item .mep-list-header:before, .mep_event_grid_item .mep-list-header:before { border-color: transparent!important;} .mep_event_list_item .mep-list-header:before, .mep_event_grid_item .mep-list-header:before { border-color: transparent!important;}
.mep_event_native_list .mep_list_thumb img { width: 150px; height: 150px;margin: 0 auto;}
.mep_event_native_list .mep_list_thumb {text-align: center;}
.mep_event_native_list .mep-list-header {padding: 0;text-align: center;}
.mep_event_native_list .mep_more_date_btn { bottom: -10px;left: 0;width: 100%;position: relative;}
.owl-carousel .owl-item .mep_list_thumb img {}
.mep_event_native_list .mep_list_thumb img, .owl-carousel .owl-item .mep_event_native_list .mep_list_thumb img {min-height: 150px;max-height: 150px; width: 150px; height: 150px;margin: 0 auto;}
.mep_event_minimal_list .mep-ev-start-date {top: -5px;} .mep_event_minimal_list .mep-ev-start-date {top: -5px;}
span.mep_minimal_list_location{margin-left:0;display:block;}
} }
@media only screen and (max-width: 500px) { @media only screen and (max-width: 500px) {
@ -934,21 +938,23 @@ span.mep_single_date_btn {
.bristol .mep-default-sidrbar-calender-btn{margin: 0;padding: 20px 0;border-top: 1px solid #ddd;} .bristol .mep-default-sidrbar-calender-btn{margin: 0;padding: 20px 0;border-top: 1px solid #ddd;}
.bristol ul#mep_add_calender_links{width: 200px;} .bristol ul#mep_add_calender_links{width: 200px;}
.mep_event_minimal_list .mep_list_event_details {padding-left: 38px;}
.mep_event_list_item .mep-list-header:before, .mep_event_grid_item .mep-list-header:before { border-color: transparent!important;} .mep_event_list_item .mep-list-header:before, .mep_event_grid_item .mep-list-header:before { border-color: transparent!important;}
.mep_event_native_list .mep_list_thumb img { width: 150px; height: 150px;margin: 0 auto;} .mep_event_native_list .mep_list_thumb {}
.mep_event_native_list .mep_list_thumb {text-align: center;} .mep_event_native_list .mep-list-header {padding: 0;}
.mep_event_native_list .mep-list-header {padding: 0;text-align: center;} .mep_event_native_list .mep_more_date_btn { width: 100%;position: relative;}
.mep_event_native_list .mep_more_date_btn { bottom: -10px;left: 0;width: 100%;position: relative;}
.owl-carousel .owl-item .mep_list_thumb img {}
.mep_event_native_list .mep_list_thumb img, .owl-carousel .owl-item .mep_event_native_list .mep_list_thumb img {min-height: 150px;max-height: 150px; width: 150px; height: 150px;margin: 0 auto;}
.mep_event_minimal_list .mep-ev-start-date {top: -5px;} .mep_event_minimal_list .mep-ev-start-date {top: -5px;}
} }
div.mep_event_list div.mage_grid_box{-webkit-flex-wrap: wrap;flex-wrap: wrap;} div.mep_event_list div.mage_grid_box{-webkit-flex-wrap: wrap;flex-wrap: wrap;}
div.one_column{width:100%;margin: 0 0 18px 0;}
div.two_column{width:calc(50% - 18px);margin: 0 15px 15px 0;} div.two_column{width:calc(50% - 18px);margin: 0 15px 15px 0;}
div.three_column{width:calc(33.33% - 18px);margin: 0 15px 15px 0;}
div.four_column{width:calc(25% - 18px);margin: 0 15px 15px 0;} div.four_column{width:calc(25% - 18px);margin: 0 15px 15px 0;}
div.item_hover_effect{position:absolute;left:0;top:0;right:0;bottom:0;background-color:#0009;display:none;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;}
.mep-event-list-loop:hover div.item_hover_effect{display: -webkit-flex;display: flex;}
div.item_hover_effect a{font-size:22px;font-weight:500;color:#fff;padding:15px 30px;border-radius:5px;background-color:#346B80;transition: 250ms ease-in-out;border:1px solid #FFF;}
div.item_hover_effect a:hover{color:#346B80;background-color:#fff;border:1px solid #346B80;}
@media only screen and (max-width: 800px) { @media only screen and (max-width: 800px) {
div.two_column{width:calc(50% - 15px);margin: 0 15px 15px 0;} div.two_column{width:calc(50% - 15px);margin: 0 15px 15px 0;}
div.three_column{width:calc(50% - 15px);margin: 0 15px 15px 0;} div.three_column{width:calc(50% - 15px);margin: 0 15px 15px 0;}

View File

@ -74,8 +74,9 @@ function mep_event_enqueue_scripts()
wp_enqueue_style('mep-event-style', plugin_dir_url(__DIR__) . 'css/style.css', array()); wp_enqueue_style('mep-event-style', plugin_dir_url(__DIR__) . 'css/style.css', array());
wp_enqueue_style('mep-event-timeline-min-style', plugin_dir_url(__DIR__) . 'css/timeline.min.css', array('mep-event-style')); wp_enqueue_style('mep-event-timeline-min-style', plugin_dir_url(__DIR__) . 'css/timeline.min.css', array('mep-event-style'));
wp_enqueue_style('font-awesome-css-cdn-5.2.0', "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.2.0/css/all.min.css", null, 1);
wp_enqueue_style('font-awesome-css-cdn', "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css", null, 1); wp_enqueue_style('font-awesome-css-cdn', "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css", null, 1);
wp_enqueue_style('font-awesome-css-cdn-5.2.0', "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.2.0/css/all.min.css", null, 1);
wp_enqueue_style('mep-calendar-min-style', plugin_dir_url(__DIR__) . 'css/calendar.min.css', array()); wp_enqueue_style('mep-calendar-min-style', plugin_dir_url(__DIR__) . 'css/calendar.min.css', array());
wp_enqueue_script('mep-moment-js', plugin_dir_url(__DIR__) . 'js/moment.js', array(), 1, true); wp_enqueue_script('mep-moment-js', plugin_dir_url(__DIR__) . 'js/moment.js', array(), 1, true);
wp_enqueue_script('mep-calendar-scripts', plugin_dir_url(__DIR__) . 'js/calendar.min.js', array('jquery', 'mep-moment-js'), 1, false); wp_enqueue_script('mep-calendar-scripts', plugin_dir_url(__DIR__) . 'js/calendar.min.js', array('jquery', 'mep-moment-js'), 1, false);

View File

@ -111,7 +111,7 @@ $hide_date_status = mep_get_option('mep_hide_date_from_order_page', 'general_se
$ticket_type_arr = $cart_item['event_ticket_info']; $ticket_type_arr = $cart_item['event_ticket_info'];
$event_extra_service = $cart_item['event_extra_service']; $event_extra_service = $cart_item['event_extra_service'];
$event_recurring_date = $cart_item['event_recurring_date']; $event_recurring_date = $cart_item['event_recurring_date'];
$event_label = mep_get_option('mep_event_label', 'general_setting_sec', 'Events');
$recurring = get_post_meta($eid, 'mep_enable_recurring', true) ? get_post_meta($eid, 'mep_enable_recurring', true) : 'no'; $recurring = get_post_meta($eid, 'mep_enable_recurring', true) ? get_post_meta($eid, 'mep_enable_recurring', true) : 'no';
@ -124,7 +124,7 @@ $hide_date_status = mep_get_option('mep_hide_date_from_order_page', 'general_se
foreach ($ticket_type_arr as $_event_recurring_date) { foreach ($ticket_type_arr as $_event_recurring_date) {
if($hide_date_status == 'no'){ if($hide_date_status == 'no'){
?> ?>
<li><?php _e('Event Date', 'mage-eventpress'); ?>: <?php echo get_mep_datetime($_event_recurring_date['event_date'],'date-text'); ?></li> <li><?php _e("$event_label Date", 'mage-eventpress'); ?>: <?php echo get_mep_datetime($_event_recurring_date['event_date'],'date-text'); ?></li>
<?php <?php
} }
} }
@ -142,19 +142,19 @@ $hide_date_status = mep_get_option('mep_hide_date_from_order_page', 'general_se
} else { } else {
if($hide_date_status == 'no'){ if($hide_date_status == 'no'){
?> ?>
<li><?php _e('Event Date', 'mage-eventpress'); ?>: <?php echo get_mep_datetime($cart_item['event_cart_display_date'],'date-time-text'); ?></li> <li><?php _e("$event_label Date", 'mage-eventpress'); ?>: <?php echo get_mep_datetime($cart_item['event_cart_display_date'],'date-time-text'); ?></li>
<?php <?php
} }
} }
} }
if($hide_location_status == 'no'){ if($hide_location_status == 'no'){
?> ?>
<li><?php _e('Event Location', 'mage-eventpress'); ?>: <?php echo $cart_item['event_cart_location']; ?></li> <li><?php _e("$event_label Location", 'mage-eventpress'); ?>: <?php echo $cart_item['event_cart_location']; ?></li>
<?php <?php
} }
if (is_array($ticket_type_arr) && sizeof($ticket_type_arr) > 0) { if (is_array($ticket_type_arr) && sizeof($ticket_type_arr) > 0) {
// echo $eid; // echo $eid;
echo mep_cart_display_ticket_type_list($ticket_type_arr, $eid); echo mep_cart_display_ticket_type_list($ticket_type_arr, $eid);
} }
if (is_array($event_extra_service) && sizeof($event_extra_service) > 0) { if (is_array($event_extra_service) && sizeof($event_extra_service) > 0) {
foreach ($event_extra_service as $extra_service) { foreach ($event_extra_service as $extra_service) {
@ -180,24 +180,32 @@ function mep_checkout_validation($posted)
foreach ($items as $item => $values) { foreach ($items as $item => $values) {
$event_id = array_key_exists('event_id', $values) ? $values['event_id'] : 0; // $values['event_id']; $event_id = array_key_exists('event_id', $values) ? $values['event_id'] : 0; // $values['event_id'];
if (get_post_type($event_id) == 'mep_events') { if (get_post_type($event_id) == 'mep_events') {
$recurring = get_post_meta($event_id, 'mep_enable_recurring', true) ? get_post_meta($event_id, 'mep_enable_recurring', true) : 'no'; $recurring = get_post_meta($event_id, 'mep_enable_recurring', true) ? get_post_meta($event_id, 'mep_enable_recurring', true) : 'no';
$total_seat = apply_filters('mep_event_total_seat_counts', mep_event_total_seat($event_id, 'total'), $event_id); $total_seat = apply_filters('mep_event_total_seat_counts', mep_event_total_seat($event_id, 'total'), $event_id);
$total_resv = apply_filters('mep_event_total_resv_seat_count', mep_event_total_seat($event_id, 'resv'), $event_id); $total_resv = apply_filters('mep_event_total_resv_seat_count', mep_event_total_seat($event_id, 'resv'), $event_id);
$total_sold = mep_ticket_sold($event_id); // $total_sold = mep_ticket_sold($event_id);
$total_left = $total_seat - ($total_sold + $total_resv);
if($recurring == 'no'){
$event_validate_info = $values['event_validate_info'] ? $values['event_validate_info'] : array(); $ticket_arr = $values['event_ticket_info'];
$ee = 0;
if (is_array($event_validate_info) && sizeof($event_validate_info) > 0) { foreach($ticket_arr as $ticket){
foreach ($event_validate_info as $inf) {
$ee = $ee + $inf['validation_ticket_qty']; $event_name = get_the_title($event_id);
} $type = $ticket['ticket_name'];
$event_date = $ticket['event_date'];
$ticket_qty = $ticket['ticket_qty'];
$event_date_txt = get_mep_datetime($ticket['event_date'],'date-time-text');
$total_sold = mep_ticket_type_sold($event_id,$type,$event_date);
$available_seat = $total_seat - ($total_resv + $total_sold);
}
if($ticket_qty > $available_seat){
wc_add_notice("Sorry, $type not availabe. Total available $type is $available_seat of $event_name on $event_date_txt but you select $ticket_qty . Please Try Again", 'error');
} }
if ($ee > $total_left) {
$event = get_the_title($event_id);
wc_add_notice(__("Sorry, Seats are not available in <b>$event</b>, Available Seats <b>$total_left</b> but you selected <b>$ee</b>", 'mage-eventpress'), 'error');
}
}
} }
} }
} }
@ -221,7 +229,7 @@ function mep_add_custom_fields_text_to_order_items($item, $cart_item_key, $value
$form_position = mep_get_option('mep_user_form_position', 'general_attendee_sec', 'details_page'); $form_position = mep_get_option('mep_user_form_position', 'general_attendee_sec', 'details_page');
$event_user_info = $form_position == 'details_page' ? $values['event_user_info'] : mep_save_attendee_info_into_cart($eid); $event_user_info = $form_position == 'details_page' ? $values['event_user_info'] : mep_save_attendee_info_into_cart($eid);
$recurring = get_post_meta($eid, 'mep_enable_recurring', true) ? get_post_meta($eid, 'mep_enable_recurring', true) : 'no'; $recurring = get_post_meta($eid, 'mep_enable_recurring', true) ? get_post_meta($eid, 'mep_enable_recurring', true) : 'no';
$event_label = mep_get_option('mep_event_label', 'general_setting_sec', 'Events');
if ($recurring == 'yes') { if ($recurring == 'yes') {
if (is_array($ticket_type_arr) && sizeof($ticket_type_arr) > 0) { if (is_array($ticket_type_arr) && sizeof($ticket_type_arr) > 0) {
foreach ($ticket_type_arr as $_event_recurring_date) { foreach ($ticket_type_arr as $_event_recurring_date) {

View File

@ -343,7 +343,7 @@ function mep_attendee_create($type,$order_id,$event_id,$_user_info = array()){
$phone = isset($order_meta['_billing_phone'][0]) ? $order_meta['_billing_phone'][0] : ''; $phone = isset($order_meta['_billing_phone'][0]) ? $order_meta['_billing_phone'][0] : '';
$ticket_type = stripslashes($_user_info['ticket_name']); $ticket_type = stripslashes($_user_info['ticket_name']);
$event_date = $_user_info['event_date']; $event_date = $_user_info['event_date'];
$ticket_qty = $_user_info['ticket_qty']; $ticket_qty = $_user_info['ticket_qty'];
}elseif($type == 'user_form'){ }elseif($type == 'user_form'){
@ -470,6 +470,51 @@ if (!function_exists('mep_attendee_extra_service_create')) {
function mep_check_attendee_exist_before_create($order_id,$event_id){
$args = array(
'post_type' => 'mep_events_attendees',
'posts_per_page' => -1,
'meta_query' => array(
'relation' => 'AND',
array(
'relation' => 'AND',
array(
'key' => 'ea_event_id',
'value' => $event_id,
'compare' => '='
),
array(
'key' => 'ea_order_id',
'value' => $order_id,
'compare' => '='
),
array(
'key' => 'ea_order_status',
'value' => 'pending',
'compare' => '='
)
)
)
);
$loop = new WP_Query($args);
return $loop->post_count;
}
// add_action('admin_init','ttttt');
function ttttt(){
echo mep_check_attendee_exist_before_create(832,408);
die();
}
add_action('woocommerce_checkout_order_processed', 'mep_event_booking_management', 10); add_action('woocommerce_checkout_order_processed', 'mep_event_booking_management', 10);
if (!function_exists('mep_event_booking_management')) { if (!function_exists('mep_event_booking_management')) {
function mep_event_booking_management( $order_id) { function mep_event_booking_management( $order_id) {
@ -500,7 +545,7 @@ if (!function_exists('mep_attendee_extra_service_create')) {
$service_info_arr = wc_get_order_item_meta($item_id,'_event_service_info',true); $service_info_arr = wc_get_order_item_meta($item_id,'_event_service_info',true);
$event_ticket_info_arr = wc_get_order_item_meta($item_id,'_event_ticket_info',true); $event_ticket_info_arr = wc_get_order_item_meta($item_id,'_event_ticket_info',true);
$item_quantity = 0; $item_quantity = 0;
$check_before_create = mep_check_attendee_exist_before_create($order_id,$event_id);
foreach ( $event_ticket_info_arr as $field ) { foreach ( $event_ticket_info_arr as $field ) {
if($field['ticket_qty']>0){ if($field['ticket_qty']>0){
@ -509,12 +554,22 @@ if (!function_exists('mep_attendee_extra_service_create')) {
} }
if(is_array($user_info_arr) & sizeof($user_info_arr) > 0){ if(is_array($user_info_arr) & sizeof($user_info_arr) > 0){
foreach ($user_info_arr as $_user_info) { foreach ($user_info_arr as $_user_info) {
mep_attendee_create('user_form',$order_id,$event_id,$_user_info); if($check_before_create == 0){
mep_attendee_create('user_form',$order_id,$event_id,$_user_info);
}else{
mep_delete_attandee_of_an_order($order_id,$event_id);
mep_attendee_create('user_form',$order_id,$event_id,$_user_info);
}
} }
}else{ }else{
foreach($event_ticket_info_arr as $tinfo){ foreach($event_ticket_info_arr as $tinfo){
for ($x = 1; $x <= $tinfo['ticket_qty']; $x++) { for ($x = 1; $x <= $tinfo['ticket_qty']; $x++) {
if($check_before_create == 0){
mep_attendee_create('billing',$order_id,$event_id,$tinfo); mep_attendee_create('billing',$order_id,$event_id,$tinfo);
}else{
mep_delete_attandee_of_an_order($order_id,$event_id);
mep_attendee_create('billing',$order_id,$event_id,$tinfo);
}
} }
} }
} }
@ -531,7 +586,7 @@ if (!function_exists('mep_attendee_extra_service_create')) {
$event_ticket_info_arr = wc_get_order_item_meta($item_id,'_event_ticket_info',true); $event_ticket_info_arr = wc_get_order_item_meta($item_id,'_event_ticket_info',true);
$_event_extra_service = wc_get_order_item_meta($item_id,'_event_extra_service',true); $_event_extra_service = wc_get_order_item_meta($item_id,'_event_extra_service',true);
$item_quantity = 0; $item_quantity = 0;
$check_before_create = mep_check_attendee_exist_before_create($order_id,$event_id);
mep_attendee_extra_service_create($order_id,$event_id,$_event_extra_service); mep_attendee_extra_service_create($order_id,$event_id,$_event_extra_service);
foreach ( $event_ticket_info_arr as $field ) { foreach ( $event_ticket_info_arr as $field ) {
if($field['ticket_qty']>0){ if($field['ticket_qty']>0){
@ -540,12 +595,22 @@ if (!function_exists('mep_attendee_extra_service_create')) {
} }
if(is_array($user_info_arr) & sizeof($user_info_arr) > 0){ if(is_array($user_info_arr) & sizeof($user_info_arr) > 0){
foreach ($user_info_arr as $_user_info) { foreach ($user_info_arr as $_user_info) {
if($check_before_create == 0){
mep_attendee_create('user_form',$order_id,$event_id,$_user_info); mep_attendee_create('user_form',$order_id,$event_id,$_user_info);
}else{
mep_delete_attandee_of_an_order($order_id,$event_id);
mep_attendee_create('user_form',$order_id,$event_id,$_user_info);
}
} }
}else{ }else{
foreach($event_ticket_info_arr as $tinfo){ foreach($event_ticket_info_arr as $tinfo){
for ($x = 1; $x <= $tinfo['ticket_qty']; $x++) { for ($x = 1; $x <= $tinfo['ticket_qty']; $x++) {
if($check_before_create == 0){
mep_attendee_create('billing',$order_id,$event_id,$tinfo); mep_attendee_create('billing',$order_id,$event_id,$tinfo);
}else{
mep_delete_attandee_of_an_order($order_id,$event_id);
mep_attendee_create('billing',$order_id,$event_id,$tinfo);
}
} }
} }
} }
@ -559,6 +624,37 @@ if (!function_exists('mep_attendee_extra_service_create')) {
} }
function mep_delete_attandee_of_an_order($order_id,$event_id){
$args = array (
'post_type' => array( 'mep_events_attendees' ),
'posts_per_page' => -1,
'meta_query' => array(
array(
'key' => 'ea_order_id',
'value' => $order_id,
'compare' => '='
),
array(
'key' => 'ea_event_id',
'value' => $event_id,
'compare' => '='
)
)
);
$loop = new WP_Query($args);
foreach ($loop->posts as $ticket) {
$post_id = $ticket->ID;
wp_delete_post($post_id, true);
}
}
if (!function_exists('change_attandee_order_status')) { if (!function_exists('change_attandee_order_status')) {
function change_attandee_order_status($order_id,$set_status,$post_status,$qr_status=null){ function change_attandee_order_status($order_id,$set_status,$post_status,$qr_status=null){
@ -578,9 +674,7 @@ if (!function_exists('change_attandee_order_status')) {
$tid = array(); $tid = array();
foreach ($loop->posts as $ticket) { foreach ($loop->posts as $ticket) {
$post_id = $ticket->ID; $post_id = $ticket->ID;
update_post_meta($post_id, 'ea_order_status', $qr_status); update_post_meta($post_id, 'ea_order_status', $qr_status);
$current_post = get_post( $post_id, 'ARRAY_A' ); $current_post = get_post( $post_id, 'ARRAY_A' );
$current_post['post_status'] = $set_status; $current_post['post_status'] = $set_status;
wp_update_post($current_post); wp_update_post($current_post);
@ -733,7 +827,7 @@ if (!function_exists('change_wc_event_product_status')) {
change_extra_service_status($order_id,'publish','publish','pending'); change_extra_service_status($order_id,'publish','publish','pending');
} }
if($order->has_status( 'on-hold' )) { if($order->has_status( 'on-hold' )) {
change_attandee_order_status($order_id,'publish','trash','on-hold'); change_attandee_order_status($order_id,'publish','trash','on-hold');
change_attandee_order_status($order_id,'publish','publish','on-hold'); change_attandee_order_status($order_id,'publish','publish','on-hold');
} }
if($order->has_status( 'completed' ) ) { if($order->has_status( 'completed' ) ) {
@ -743,6 +837,7 @@ if (!function_exists('change_wc_event_product_status')) {
} }
change_attandee_order_status($order_id,'publish','trash','completed'); change_attandee_order_status($order_id,'publish','trash','completed');
change_attandee_order_status($order_id,'publish','publish','completed'); change_attandee_order_status($order_id,'publish','publish','completed');
change_extra_service_status($order_id,'publish','trash','completed'); change_extra_service_status($order_id,'publish','trash','completed');
@ -1385,10 +1480,10 @@ if (!function_exists('mep_get_event_city')) {
$org_arr = get_the_terms( $id, 'mep_org' ); $org_arr = get_the_terms( $id, 'mep_org' );
if(is_array($org_arr) && sizeof($org_arr) > 0 ){ if(is_array($org_arr) && sizeof($org_arr) > 0 ){
$org_id = $org_arr[0]->term_id; $org_id = $org_arr[0]->term_id;
echo "<span>".mep_ev_venue($id).', '.get_term_meta( $org_id, 'org_city', true )."</span>"; echo "<span>".mep_ev_venue($id).' '.get_term_meta( $org_id, 'org_city', true )."</span>";
} }
}else{ }else{
echo "<span>".mep_ev_venue($id).', '.$event_meta['mep_city'][0]."</span>"; echo "<span>".mep_ev_venue($id).' '.$event_meta['mep_city'][0]."</span>";
} }
} }
} }
@ -1884,12 +1979,12 @@ if (!function_exists('mep_reset_event_booking')) {
} }
if (!function_exists('mep_get_term_as_class')) { if (!function_exists('mep_get_term_as_class')) {
function mep_get_term_as_class($post_id,$taxonomy){ function mep_get_term_as_class($post_id,$taxonomy,$unq_id=''){
$tt = get_the_terms($post_id,$taxonomy); $tt = get_the_terms($post_id,$taxonomy) ? get_the_terms($post_id,$taxonomy) : [];
if($tt){ if(is_array($tt) && sizeof($tt) > 0){
$t_class = array(); $t_class = array();
foreach($tt as $tclass){ foreach($tt as $tclass){
$t_class[] = 'mage-'.$tclass->term_id; $t_class[] = $unq_id.'mage-'.$tclass->term_id;
} }
$main_class = implode(' ',$t_class); $main_class = implode(' ',$t_class);
return $main_class; return $main_class;
@ -2069,6 +2164,8 @@ if (!function_exists('mep_ticket_sold')) {
} }
if (!function_exists('mep_event_total_seat')) { if (!function_exists('mep_event_total_seat')) {
function mep_event_total_seat($event_id,$type){ function mep_event_total_seat($event_id,$type){
$mep_event_ticket_type = get_post_meta($event_id, 'mep_event_ticket_type', true); $mep_event_ticket_type = get_post_meta($event_id, 'mep_event_ticket_type', true);
@ -3119,9 +3216,14 @@ function mep_get_price_including_tax( $event, $price, $args = array() ) {
$_product = get_post_meta($event, 'link_wc_product', true) ? get_post_meta($event, 'link_wc_product', true) : $event; $_product = get_post_meta($event, 'link_wc_product', true) ? get_post_meta($event, 'link_wc_product', true) : $event;
// $price = '' !== $args['price'] ? max( 0.0, (float) $args['price'] ) : $product->get_price(); // $price = '' !== $args['price'] ? max( 0.0, (float) $args['price'] ) : $product->get_price();
$qty = '' !== $args['qty'] ? max( 0.0, (float) $args['qty'] ) : 1; $qty = '' !== $args['qty'] ? max( 0.0, (float) $args['qty'] ) : 1;
$product = wc_get_product( $_product ); $product = wc_get_product( $_product );
$tax_with_price = get_option('woocommerce_tax_display_shop');
if ( '' === $price ) { if ( '' === $price ) {
return ''; return '';
} elseif ( empty( $qty ) ) { } elseif ( empty( $qty ) ) {
@ -3138,30 +3240,30 @@ function mep_get_price_including_tax( $event, $price, $args = array() ) {
if ( ! wc_prices_include_tax() ) { if ( ! wc_prices_include_tax() ) {
// echo get_option( 'woocommerce_prices_include_tax' );
$tax_rates = WC_Tax::get_rates( $product->get_tax_class() ); $tax_rates = WC_Tax::get_rates( $product->get_tax_class() );
$taxes = WC_Tax::calc_tax( $line_price, $tax_rates, false ); $taxes = WC_Tax::calc_tax( $line_price, $tax_rates, false );
// print_r($tax_rates);
if ( 'yes' === get_option( 'woocommerce_tax_round_at_subtotal' ) ) { if ( 'yes' === get_option( 'woocommerce_tax_round_at_subtotal' ) ) {
$taxes_total = array_sum( $taxes );
$taxes_total = array_sum( $taxes );
} else { } else {
$taxes_total = array_sum( array_map( 'wc_round_tax_total', $taxes ) );
$taxes_total = array_sum( array_map( 'wc_round_tax_total', $taxes ) );
} }
// $return_price = round( $line_price, wc_get_price_decimals() ); $return_price = $tax_with_price == 'excl' ? round( $line_price, wc_get_price_decimals() ) : round( $line_price + $taxes_total, wc_get_price_decimals() );
$return_price = round( $line_price + $taxes_total, wc_get_price_decimals() );
} else { } else {
// print_r($product);
$tax_rates = WC_Tax::get_rates( $product->get_tax_class() ); $tax_rates = WC_Tax::get_rates( $product->get_tax_class() );
$base_tax_rates = WC_Tax::get_base_tax_rates( $product->get_tax_class( 'unfiltered' ) ); $base_tax_rates = WC_Tax::get_base_tax_rates( $product->get_tax_class( 'unfiltered' ) );
// print_r($base_tax_rates);
/** /**
* If the customer is excempt from VAT, remove the taxes here. * If the customer is excempt from VAT, remove the taxes here.
* Either remove the base or the user taxes depending on woocommerce_adjust_non_base_location_prices setting. * Either remove the base or the user taxes depending on woocommerce_adjust_non_base_location_prices setting.
@ -3192,16 +3294,59 @@ function mep_get_price_including_tax( $event, $price, $args = array() ) {
} else { } else {
$base_taxes_total = array_sum( array_map( 'wc_round_tax_total', $base_taxes ) ); $base_taxes_total = array_sum( array_map( 'wc_round_tax_total', $base_taxes ) );
$modded_taxes_total = array_sum( array_map( 'wc_round_tax_total', $modded_taxes ) ); $modded_taxes_total = array_sum( array_map( 'wc_round_tax_total', $modded_taxes ) );
} }
// $return_price = round( $line_price - $base_taxes_total , wc_get_price_decimals() );
$return_price = round( $line_price - $base_taxes_total + $modded_taxes_total, wc_get_price_decimals() ); $return_price = $tax_with_price == 'excl' ? round( $line_price - $base_taxes_total , wc_get_price_decimals() ) : round( $line_price - $base_taxes_total + $modded_taxes_total, wc_get_price_decimals() );
} }
} }
} }
return apply_filters( 'woocommerce_get_price_including_tax', $return_price, $qty, $product ); // return 0;
return apply_filters( 'woocommerce_get_price_including_tax', $return_price , $qty, $product );
} }
function mep_check_ticket_type_availaility_before_checkout($event_id,$type,$date){
//echo $date;
$args = array(
'post_type' => 'mep_events_attendees',
'posts_per_page' => -1,
'meta_query' => array(
'relation' => 'AND',
array(
'relation' => 'AND',
array(
'key' => 'ea_event_id',
'value' => $event_id,
'compare' => '='
),
array(
'key' => 'ea_ticket_type',
'value' => $type,
'compare' => '='
),
array(
'key' => 'ea_event_date',
'value' => $date,
'compare' => '='
)
),array(
'relation' => 'OR',
array(
'key' => 'ea_order_status',
'value' => 'processing',
'compare' => '='
),
array(
'key' => 'ea_order_status',
'value' => 'completed',
'compare' => '='
)
)
)
);
$loop = new WP_Query($args);
$count = $loop->post_count;
return $count;
}

View File

@ -127,6 +127,7 @@ function mep_event_list($atts, $content = null)
$flex_column = $column; $flex_column = $column;
$mage_div_count = 0; $mage_div_count = 0;
$event_expire_on = mep_get_option('mep_event_expire_on_datetimes', 'general_setting_sec', 'event_start_datetime'); $event_expire_on = mep_get_option('mep_event_expire_on_datetimes', 'general_setting_sec', 'event_start_datetime');
$unq_id = 'abr'.uniqid();
ob_start(); ob_start();
?> ?>
<div class='mep_event_list'> <div class='mep_event_list'>
@ -134,16 +135,16 @@ function mep_event_list($atts, $content = null)
/** /**
* This is the hook where category filter lists are fired from inc/template-parts/event_list_tax_name_list.php File * This is the hook where category filter lists are fired from inc/template-parts/event_list_tax_name_list.php File
*/ */
do_action('mep_event_list_cat_names',$cat); do_action('mep_event_list_cat_names',$cat,$unq_id);
} }
if ($org_f == 'yes') { if ($org_f == 'yes') {
/** /**
* This is the hook where Organization filter lists are fired from inc/template-parts/event_list_tax_name_list.php File * This is the hook where Organization filter lists are fired from inc/template-parts/event_list_tax_name_list.php File
*/ */
do_action('mep_event_list_org_names',$org); do_action('mep_event_list_org_names',$org,$unq_id);
} ?> } ?>
<div class="mep_event_list_sec"> <div class="mep_event_list_secxx" id='mep_event_list_<?php echo $unq_id; ?>'>
<?php <?php
/** /**
* The Main Query function mep_event_query is locet in inc/mep_query.php File * The Main Query function mep_event_query is locet in inc/mep_query.php File
@ -170,7 +171,9 @@ function mep_event_list($atts, $content = null)
/** /**
* This is the hook where Event Loop List fired from inc/template-parts/event_loop_list.php File * This is the hook where Event Loop List fired from inc/template-parts/event_loop_list.php File
*/ */
do_action('mep_event_list_shortcode', get_the_id(), $columnNumber, $style);
do_action('mep_event_list_shortcode', get_the_id(), $columnNumber, $style,$unq_id);
} }
wp_reset_postdata(); wp_reset_postdata();
echo $time_line_div_end; echo $time_line_div_end;
@ -187,8 +190,11 @@ function mep_event_list($atts, $content = null)
</div> </div>
<script> <script>
jQuery(document).ready(function() { jQuery(document).ready(function() {
var containerEl = document.querySelector('.mep_event_list_sec'); var containerEl = document.querySelector('#mep_event_list_<?php echo $unq_id; ?>');
var mixer = mixitup(containerEl); var mixer = mixitup(containerEl);
<?php if ($pagination == 'carousal') { ?> <?php if ($pagination == 'carousal') { ?>
jQuery('#mep-carousel<?php echo $cid; ?>').owlCarousel({ jQuery('#mep-carousel<?php echo $cid; ?>').owlCarousel({
autoplay: <?php echo mep_get_option('mep_autoplay_carousal', 'carousel_setting_sec', 'true'); ?>, autoplay: <?php echo mep_get_option('mep_autoplay_carousal', 'carousel_setting_sec', 'true'); ?>,

View File

@ -19,6 +19,12 @@ function mep_user_custom_styles()
?> ?>
<style> <style>
div.item_hover_effect a{
background-color:<?php echo $base_color; ?>;
}
div.item_hover_effect a:hover{
color:<?php echo $base_color; ?>;background-color:#fff;border:1px solid <?php echo $base_color; ?>;
}
.mep-default-sidrbar-events-schedule ul li i, .mep-ev-start-date, h3.mep_list_date i, .mep-list-footer ul li i, .df-ico i, .mep-default-sidrbar-meta i, .mep-default-sidrbar-address ul li i, .mep-default-sidrbar-social ul li a, .mep-tem3-title-sec, button.mep-cat-control, .pagination-sec a { .mep-default-sidrbar-events-schedule ul li i, .mep-ev-start-date, h3.mep_list_date i, .mep-list-footer ul li i, .df-ico i, .mep-default-sidrbar-meta i, .mep-default-sidrbar-address ul li i, .mep-default-sidrbar-social ul li a, .mep-tem3-title-sec, button.mep-cat-control, .pagination-sec a {
background: <?php echo $base_color; ?>; background: <?php echo $base_color; ?>;
} }

View File

@ -3,9 +3,9 @@ if (!defined('ABSPATH')) {
die; die;
} // Cannot access pages directly. } // Cannot access pages directly.
add_action('mep_event_list_cat_names', 'mep_display_event_cat_name_in_list'); add_action('mep_event_list_cat_names', 'mep_display_event_cat_name_in_list',10,2);
if (!function_exists('mep_display_event_cat_name_in_list')) { if (!function_exists('mep_display_event_cat_name_in_list')) {
function mep_display_event_cat_name_in_list($cat) function mep_display_event_cat_name_in_list($cat,$unq_id='')
{ {
ob_start(); ob_start();
?> ?>
@ -24,7 +24,7 @@ if (!function_exists('mep_display_event_cat_name_in_list')) {
<div class="mep-event-cat-controls"> <div class="mep-event-cat-controls">
<button type="button" class="mep-cat-control" data-filter="all"><?php _e('All', 'mage-eventpress'); ?></button> <button type="button" class="mep-cat-control" data-filter="all"><?php _e('All', 'mage-eventpress'); ?></button>
<?php foreach ($terms as $_terms) { ?> <?php foreach ($terms as $_terms) { ?>
<button type="button" class="mep-cat-control" data-filter=".<?php echo 'mage-' . $_terms->term_id; ?>"><?php echo $_terms->name; ?></button> <button type="button" class="mep-cat-control" data-filter=".<?php echo $unq_id.'mage-' . $_terms->term_id; ?>"><?php echo $_terms->name; ?></button>
<?php } ?> <?php } ?>
</div> </div>
</div> </div>
@ -38,9 +38,9 @@ if (!function_exists('mep_display_event_cat_name_in_list')) {
add_action('mep_event_list_org_names', 'mep_display_event_org_name_in_list'); add_action('mep_event_list_org_names', 'mep_display_event_org_name_in_list',10,2);
if (!function_exists('mep_display_event_org_name_in_list')) { if (!function_exists('mep_display_event_org_name_in_list')) {
function mep_display_event_org_name_in_list($org) function mep_display_event_org_name_in_list($org,$unq_id='')
{ {
ob_start(); ob_start();
?> ?>

View File

@ -3,10 +3,11 @@ if (!defined('ABSPATH')) {
die; die;
} // Cannot access pages directly. } // Cannot access pages directly.
add_action('mep_event_list_shortcode', 'mep_display_event_loop_list', 10, 3); add_action('mep_event_list_shortcode', 'mep_display_event_loop_list', 10, 4);
if (!function_exists('mep_display_event_loop_list')) { if (!function_exists('mep_display_event_loop_list')) {
function mep_display_event_loop_list($event_id, $columnNumber, $style) function mep_display_event_loop_list($event_id, $columnNumber, $style, $unq_id ='')
{ {
$now = current_time('Y-m-d H:i:s'); $now = current_time('Y-m-d H:i:s');
$show_price = mep_get_option('mep_event_price_show', 'general_setting_sec', 'yes'); $show_price = mep_get_option('mep_event_price_show', 'general_setting_sec', 'yes');
$show_price_label = mep_get_option('event-price-label', 'general_setting_sec', 'Price Starts from:'); $show_price_label = mep_get_option('event-price-label', 'general_setting_sec', 'Price Starts from:');
@ -16,8 +17,8 @@ if (!function_exists('mep_display_event_loop_list')) {
$newformat = date_i18n('Y-m-d H:i:s', $time); $newformat = date_i18n('Y-m-d H:i:s', $time);
$tt = get_the_terms($event_id, 'mep_cat'); $tt = get_the_terms($event_id, 'mep_cat');
$torg = get_the_terms($event_id, 'mep_org'); $torg = get_the_terms($event_id, 'mep_org');
$org_class = mep_get_term_as_class($event_id, 'mep_org'); $org_class = mep_get_term_as_class($event_id, 'mep_org',$unq_id);
$cat_class = mep_get_term_as_class($event_id, 'mep_cat'); $cat_class = mep_get_term_as_class($event_id, 'mep_cat',$unq_id);
$event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array(); $event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array();
$available_seat = mep_get_total_available_seat($event_id, $event_meta); $available_seat = mep_get_total_available_seat($event_id, $event_meta);
$hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no'); $hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no');
@ -32,6 +33,6 @@ if (!function_exists('mep_display_event_loop_list')) {
</div> </div>
<?php <?php
$content = ob_get_clean(); $content = ob_get_clean();
echo apply_filters('mage_event_loop_list_shortcode', $content, $event_id, $style); echo apply_filters('mage_event_loop_list_shortcode', $content, $event_id, $style, $unq_id);
} }
} }

View File

@ -6,9 +6,9 @@ if (!defined('ABSPATH')) {
/** /**
* This is the templates of the event minimal list shortcode * This is the templates of the event minimal list shortcode
*/ */
add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_minimal_style', 10, 3); add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_minimal_style', 10, 4);
if (!function_exists('mep_event_loop_minimal_style')) { if (!function_exists('mep_event_loop_minimal_style')) {
function mep_event_loop_minimal_style($content, $event_id, $style) function mep_event_loop_minimal_style($content, $event_id, $style,$unq_id='')
{ {
if ($style == 'minimal') { if ($style == 'minimal') {
@ -21,8 +21,8 @@ if (!function_exists('mep_event_loop_minimal_style')) {
$newformat = date_i18n('Y-m-d H:i:s', $time); $newformat = date_i18n('Y-m-d H:i:s', $time);
$tt = get_the_terms($event_id, 'mep_cat'); $tt = get_the_terms($event_id, 'mep_cat');
$torg = get_the_terms($event_id, 'mep_org'); $torg = get_the_terms($event_id, 'mep_org');
$org_class = mep_get_term_as_class($event_id, 'mep_org'); $org_class = mep_get_term_as_class($event_id, 'mep_org', $unq_id);
$cat_class = mep_get_term_as_class($event_id, 'mep_cat'); $cat_class = mep_get_term_as_class($event_id, 'mep_cat', $unq_id);
$event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array(); $event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array();
$available_seat = mep_get_total_available_seat($event_id, $event_meta); $available_seat = mep_get_total_available_seat($event_id, $event_meta);
$hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no'); $hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no');

View File

@ -7,12 +7,11 @@ if (!defined('ABSPATH')) {
* This is the templates of the event native list shortcode * This is the templates of the event native list shortcode
*/ */
add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_native_style', 10, 3); add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_native_style', 10, 4);
if (!function_exists('mep_event_loop_native_style')) { if (!function_exists('mep_event_loop_native_style')) {
function mep_event_loop_native_style($content, $event_id, $style) function mep_event_loop_native_style($content, $event_id, $style, $unq_id='')
{ {
if ($style == 'native') { if ($style == 'native') {
$now = current_time('Y-m-d H:i:s'); $now = current_time('Y-m-d H:i:s');
$show_price = mep_get_option('mep_event_price_show', 'general_setting_sec', 'yes'); $show_price = mep_get_option('mep_event_price_show', 'general_setting_sec', 'yes');
$show_price_label = mep_get_option('event-price-label', 'general_setting_sec', 'Price Starts from:'); $show_price_label = mep_get_option('event-price-label', 'general_setting_sec', 'Price Starts from:');
@ -22,8 +21,8 @@ if (!function_exists('mep_event_loop_native_style')) {
$newformat = date_i18n('Y-m-d H:i:s', $time); $newformat = date_i18n('Y-m-d H:i:s', $time);
$tt = get_the_terms($event_id, 'mep_cat'); $tt = get_the_terms($event_id, 'mep_cat');
$torg = get_the_terms($event_id, 'mep_org'); $torg = get_the_terms($event_id, 'mep_org');
$org_class = mep_get_term_as_class($event_id, 'mep_org'); $org_class = mep_get_term_as_class($event_id, 'mep_org', $unq_id);
$cat_class = mep_get_term_as_class($event_id, 'mep_cat'); $cat_class = mep_get_term_as_class($event_id, 'mep_cat', $unq_id);
$event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array(); $event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array();
$available_seat = mep_get_total_available_seat($event_id, $event_meta); $available_seat = mep_get_total_available_seat($event_id, $event_meta);
$hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no'); $hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no');

View File

@ -7,9 +7,9 @@ if (!defined('ABSPATH')) {
* This is the templates of the event timeline view shortcode * This is the templates of the event timeline view shortcode
*/ */
add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_title_style', 10, 3); add_filter('mage_event_loop_list_shortcode', 'mep_event_loop_title_style', 10, 4);
if (!function_exists('mep_event_loop_title_style')) { if (!function_exists('mep_event_loop_title_style')) {
function mep_event_loop_title_style($content, $event_id, $style) function mep_event_loop_title_style($content, $event_id, $style, $unq_id='')
{ {
if ($style == 'title') { if ($style == 'title') {
@ -22,8 +22,8 @@ if (!function_exists('mep_event_loop_title_style')) {
$newformat = date_i18n('Y-m-d H:i:s', $time); $newformat = date_i18n('Y-m-d H:i:s', $time);
$tt = get_the_terms($event_id, 'mep_cat'); $tt = get_the_terms($event_id, 'mep_cat');
$torg = get_the_terms($event_id, 'mep_org'); $torg = get_the_terms($event_id, 'mep_org');
$org_class = mep_get_term_as_class($event_id, 'mep_org'); $org_class = mep_get_term_as_class($event_id, 'mep_org', $unq_id);
$cat_class = mep_get_term_as_class($event_id, 'mep_cat'); $cat_class = mep_get_term_as_class($event_id, 'mep_cat', $unq_id);
$event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array(); $event_multidate = array_key_exists('mep_event_more_date', $event_meta) ? maybe_unserialize($event_meta['mep_event_more_date'][0]) : array();
$available_seat = mep_get_total_available_seat($event_id, $event_meta); $available_seat = mep_get_total_available_seat($event_id, $event_meta);
$hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no'); $hide_org_list = mep_get_option('mep_event_hide_organizer_list', 'general_setting_sec', 'no');

View File

@ -51,6 +51,6 @@ if (!function_exists('mep_event_ticket_type_loop_list_html')) {
<?php <?php
$loop_list = ob_get_clean(); $loop_list = ob_get_clean();
echo apply_filters('mep_event_ticket_type_loop', $loop_list, $post_id); echo apply_filters('mep_event_ticket_type_loop', $loop_list, $post_id);
} }
} }

View File

@ -10,6 +10,7 @@ if (!function_exists('mep_ev_social_share')) {
global $post; global $post;
ob_start(); ob_start();
$post_id = $post->ID; $post_id = $post->ID;
$event_label = mep_get_option('mep_event_label', 'general_setting_sec', 'Events');
require(mep_template_file_path('single/share_btn.php')); require(mep_template_file_path('single/share_btn.php'));
$content = ob_get_clean(); $content = ob_get_clean();
echo apply_filters('mage_event_single_social_share', $content, $post->ID); echo apply_filters('mage_event_single_social_share', $content, $post->ID);

View File

@ -13,7 +13,7 @@ class Client {
* *
* @var string * @var string
*/ */
public $version = '1.1.11'; public $version = '1.2.0';
/** /**
* Hash identifier of the plugin * Hash identifier of the plugin

View File

@ -674,45 +674,45 @@ class Insights {
$reasons = array( $reasons = array(
array( array(
'id' => 'could-not-understand', 'id' => 'could-not-understand',
'text' => $this->client->__trans( "I couldn't understand how to make it work" ), 'text' => $this->client->__trans( "Couldn't understand" ),
'type' => 'textarea', 'placeholder' => $this->client->__trans( 'Would you like us to assist you?' ),
'placeholder' => $this->client->__trans( 'Would you like us to assist you?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 23 23"><g fill="none"><g fill="#3B86FF"><path d="M11.5 0C17.9 0 23 5.1 23 11.5 23 17.9 17.9 23 11.5 23 10.6 23 9.6 22.9 8.8 22.7L8.8 22.6C9.3 22.5 9.7 22.3 10 21.9 10.3 21.6 10.4 21.3 10.4 20.9 10.8 21 11.1 21 11.5 21 16.7 21 21 16.7 21 11.5 21 6.3 16.7 2 11.5 2 6.3 2 2 6.3 2 11.5 2 13 2.3 14.3 2.9 15.6 2.7 16 2.4 16.3 2.2 16.8L2.1 17.1 2.1 17.3C2 17.5 2 17.7 2 18 0.7 16.1 0 13.9 0 11.5 0 5.1 5.1 0 11.5 0ZM6 13.6C6 13.7 6.1 13.8 6.1 13.9 6.3 14.5 6.2 15.7 6.1 16.4 6.1 16.6 6 16.9 6 17.1 6 17.1 6.1 17.1 6.1 17.1 7.1 16.9 8.2 16 9.3 15.5 9.8 15.2 10.4 15 10.9 15 11.2 15 11.4 15 11.6 15.2 11.9 15.4 12.1 16 11.6 16.4 11.5 16.5 11.3 16.6 11.1 16.7 10.5 17 9.9 17.4 9.3 17.7 9 17.9 9 18.1 9.1 18.5 9.2 18.9 9.3 19.4 9.3 19.8 9.4 20.3 9.3 20.8 9 21.2 8.8 21.5 8.5 21.6 8.1 21.7 7.9 21.8 7.6 21.9 7.3 21.9L6.5 22C6.3 22 6 21.9 5.8 21.9 5 21.8 4.4 21.5 3.9 20.9 3.3 20.4 3.1 19.6 3 18.8L3 18.5C3 18.2 3 17.9 3.1 17.7L3.1 17.6C3.2 17.1 3.5 16.7 3.7 16.3 4 15.9 4.2 15.4 4.3 15 4.4 14.6 4.4 14.5 4.6 14.2 4.6 13.9 4.7 13.7 4.9 13.6 5.2 13.2 5.7 13.2 6 13.6ZM11.7 11.2C13.1 11.2 14.3 11.7 15.2 12.9 15.3 13 15.4 13.1 15.4 13.2 15.4 13.4 15.3 13.8 15.2 13.8 15 13.9 14.9 13.8 14.8 13.7 14.6 13.5 14.4 13.2 14.1 13.1 13.5 12.6 12.8 12.3 12 12.2 10.7 12.1 9.5 12.3 8.4 12.8 8.3 12.8 8.2 12.8 8.1 12.8 7.9 12.8 7.8 12.4 7.8 12.2 7.7 12.1 7.8 11.9 8 11.8 8.4 11.7 8.8 11.5 9.2 11.4 10 11.2 10.9 11.1 11.7 11.2ZM16.3 5.9C17.3 5.9 18 6.6 18 7.6 18 8.5 17.3 9.3 16.3 9.3 15.4 9.3 14.7 8.5 14.7 7.6 14.7 6.6 15.4 5.9 16.3 5.9ZM8.3 5C9.2 5 9.9 5.8 9.9 6.7 9.9 7.7 9.2 8.4 8.2 8.4 7.3 8.4 6.6 7.7 6.6 6.7 6.6 5.8 7.3 5 8.3 5Z"/></g></g></svg>'
), ),
array( array(
'id' => 'found-better-plugin', 'id' => 'found-better-plugin',
'text' => $this->client->__trans( 'I found a better plugin' ), 'text' => $this->client->__trans( 'Found a better plugin' ),
'type' => 'text', 'placeholder' => $this->client->__trans( 'Which plugin?' ),
'placeholder' => $this->client->__trans( 'Which plugin?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 23 23"><g fill="none"><g fill="#3B86FF"><path d="M17.1 14L22.4 19.3C23.2 20.2 23.2 21.5 22.4 22.4 21.5 23.2 20.2 23.2 19.3 22.4L19.3 22.4 14 17.1C15.3 16.3 16.3 15.3 17.1 14L17.1 14ZM8.6 0C13.4 0 17.3 3.9 17.3 8.6 17.3 13.4 13.4 17.2 8.6 17.2 3.9 17.2 0 13.4 0 8.6 0 3.9 3.9 0 8.6 0ZM8.6 2.2C5.1 2.2 2.2 5.1 2.2 8.6 2.2 12.2 5.1 15.1 8.6 15.1 12.2 15.1 15.1 12.2 15.1 8.6 15.1 5.1 12.2 2.2 8.6 2.2ZM8.6 3.6L8.6 5C6.6 5 5 6.6 5 8.6L5 8.6 3.6 8.6C3.6 5.9 5.9 3.6 8.6 3.6L8.6 3.6Z"/></g></g></svg>',
), ),
array( array(
'id' => 'not-have-that-feature', 'id' => 'not-have-that-feature',
'text' => $this->client->__trans( "The plugin is great, but I need specific feature that you don't support" ), 'text' => $this->client->__trans( "Missing a specific feature" ),
'type' => 'textarea', 'placeholder' => $this->client->__trans( 'Could you tell us more about that feature?' ),
'placeholder' => $this->client->__trans( 'Could you tell us more about that feature?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="17" viewBox="0 0 24 17"><g fill="none"><g fill="#3B86FF"><path d="M19.4 0C19.7 0.6 19.8 1.3 19.8 2 19.8 3.2 19.4 4.4 18.5 5.3 17.6 6.2 16.5 6.7 15.2 6.7 15.2 6.7 15.2 6.7 15.2 6.7 14 6.7 12.9 6.2 12 5.3 11.2 4.4 10.7 3.3 10.7 2 10.7 1.3 10.8 0.6 11.1 0L7.6 0 7 0 6.5 0 6.5 5.7C6.3 5.6 5.9 5.3 5.6 5.1 5 4.6 4.3 4.3 3.5 4.3 3.5 4.3 3.5 4.3 3.4 4.3 1.6 4.4 0 5.9 0 7.9 0 8.6 0.2 9.2 0.5 9.7 1.1 10.8 2.2 11.5 3.5 11.5 4.3 11.5 5 11.2 5.6 10.8 6 10.5 6.3 10.3 6.5 10.2L6.5 10.2 6.5 17 6.5 17 7 17 7.6 17 22.5 17C23.3 17 24 16.3 24 15.5L24 0 19.4 0Z"/></g></g></svg>',
), ),
array( array(
'id' => 'is-not-working', 'id' => 'is-not-working',
'text' => $this->client->__trans( 'The plugin is not working' ), 'text' => $this->client->__trans( 'Not working' ),
'type' => 'textarea', 'placeholder' => $this->client->__trans( 'Could you tell us a bit more whats not working?' ),
'placeholder' => $this->client->__trans( 'Could you tell us a bit more whats not working?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 23 23"><g fill="none"><g fill="#3B86FF"><path d="M11.5 0C17.9 0 23 5.1 23 11.5 23 17.9 17.9 23 11.5 23 5.1 23 0 17.9 0 11.5 0 5.1 5.1 0 11.5 0ZM11.8 14.4C11.2 14.4 10.7 14.8 10.7 15.4 10.7 16 11.2 16.4 11.8 16.4 12.4 16.4 12.8 16 12.8 15.4 12.8 14.8 12.4 14.4 11.8 14.4ZM12 7C10.1 7 9.1 8.1 9 9.6L10.5 9.6C10.5 8.8 11.1 8.3 11.9 8.3 12.7 8.3 13.2 8.8 13.2 9.5 13.2 10.1 13 10.4 12.2 10.9 11.3 11.4 10.9 12 11 12.9L11 13.4 12.5 13.4 12.5 13C12.5 12.4 12.7 12.1 13.5 11.6 14.4 11.1 14.9 10.4 14.9 9.4 14.9 8 13.7 7 12 7Z"/></g></g></svg>',
), ),
array( array(
'id' => 'looking-for-other', 'id' => 'looking-for-other',
'text' => $this->client->__trans( "It's not what I was looking for" ), 'text' => $this->client->__trans( "Not what I was looking" ),
'type' => '', 'placeholder' => $this->client->__trans( 'Could you tell us a bit more?' ),
'placeholder' => '' 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="17" viewBox="0 0 24 17"><g fill="none"><g fill="#3B86FF"><path d="M23.5 9C23.5 9 23.5 8.9 23.5 8.9 23.5 8.9 23.5 8.9 23.5 8.9 23.4 8.6 23.2 8.3 23 8 22.2 6.5 20.6 3.7 19.8 2.6 18.8 1.3 17.7 0 16.1 0 15.7 0 15.3 0.1 14.9 0.2 13.8 0.6 12.6 1.2 12.3 2.7L11.7 2.7C11.4 1.2 10.2 0.6 9.1 0.2 8.7 0.1 8.3 0 7.9 0 6.3 0 5.2 1.3 4.2 2.6 3.4 3.7 1.8 6.5 1 8 0.8 8.3 0.6 8.6 0.5 8.9 0.5 8.9 0.5 8.9 0.5 8.9 0.5 8.9 0.5 9 0.5 9 0.2 9.7 0 10.5 0 11.3 0 14.4 2.5 17 5.5 17 7.3 17 8.8 16.1 9.8 14.8L14.2 14.8C15.2 16.1 16.7 17 18.5 17 21.5 17 24 14.4 24 11.3 24 10.5 23.8 9.7 23.5 9ZM5.5 15C3.6 15 2 13.2 2 11 2 8.8 3.6 7 5.5 7 7.4 7 9 8.8 9 11 9 13.2 7.4 15 5.5 15ZM18.5 15C16.6 15 15 13.2 15 11 15 8.8 16.6 7 18.5 7 20.4 7 22 8.8 22 11 22 13.2 20.4 15 18.5 15Z"/></g></g></svg>',
), ),
array( array(
'id' => 'did-not-work-as-expected', 'id' => 'did-not-work-as-expected',
'text' => $this->client->__trans( "The plugin didn't work as expected" ), 'text' => $this->client->__trans( "Didn't work as expected" ),
'type' => 'textarea', 'placeholder' => $this->client->__trans( 'What did you expect?' ),
'placeholder' => $this->client->__trans( 'What did you expect?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 23 23"><g fill="none"><g fill="#3B86FF"><path d="M11.5 0C17.9 0 23 5.1 23 11.5 23 17.9 17.9 23 11.5 23 5.1 23 0 17.9 0 11.5 0 5.1 5.1 0 11.5 0ZM11.5 2C6.3 2 2 6.3 2 11.5 2 16.7 6.3 21 11.5 21 16.7 21 21 16.7 21 11.5 21 6.3 16.7 2 11.5 2ZM12.5 12.9L12.7 5 10.2 5 10.5 12.9 12.5 12.9ZM11.5 17.4C12.4 17.4 13 16.8 13 15.9 13 15 12.4 14.4 11.5 14.4 10.6 14.4 10 15 10 15.9 10 16.8 10.6 17.4 11.5 17.4Z"/></g></g></svg>',
), ),
array( array(
'id' => 'other', 'id' => 'other',
'text' => $this->client->__trans( 'Other' ), 'text' => $this->client->__trans( 'Others' ),
'type' => 'textarea', 'placeholder' => $this->client->__trans( 'Could you tell us a bit more?' ),
'placeholder' => $this->client->__trans( 'Could you tell us a bit more?' ) 'icon' => '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="23" viewBox="0 0 24 6"><g fill="none"><g fill="#3B86FF"><path d="M3 0C4.7 0 6 1.3 6 3 6 4.7 4.7 6 3 6 1.3 6 0 4.7 0 3 0 1.3 1.3 0 3 0ZM12 0C13.7 0 15 1.3 15 3 15 4.7 13.7 6 12 6 10.3 6 9 4.7 9 3 9 1.3 10.3 0 12 0ZM21 0C22.7 0 24 1.3 24 3 24 4.7 22.7 6 21 6 19.3 6 18 4.7 18 3 18 1.3 19.3 0 21 0Z"/></g></g></svg>',
), ),
); );
@ -751,23 +751,43 @@ class Insights {
return; return;
} }
$this->deactivation_modal_styles();
$reasons = $this->get_uninstall_reasons(); $reasons = $this->get_uninstall_reasons();
$custom_reasons = apply_filters( 'appsero_custom_deactivation_reasons', [] );
?> ?>
<div class="wd-dr-modal" id="<?php echo $this->client->slug; ?>-wd-dr-modal"> <div class="wd-dr-modal" id="<?php echo $this->client->slug; ?>-wd-dr-modal">
<div class="wd-dr-modal-wrap"> <div class="wd-dr-modal-wrap">
<div class="wd-dr-modal-header"> <div class="wd-dr-modal-header">
<h3><?php $this->client->_etrans( 'If you have a moment, please let us know why you are deactivating:' ); ?></h3> <h3><?php $this->client->_etrans( 'Goodbyes are always hard. If you have a moment, please let us know how we can improve.' ); ?></h3>
</div> </div>
<div class="wd-dr-modal-body"> <div class="wd-dr-modal-body">
<ul class="reasons"> <ul class="wd-de-reasons">
<?php foreach ($reasons as $reason) { ?> <?php foreach ( $reasons as $reason ) { ?>
<li data-type="<?php echo esc_attr( $reason['type'] ); ?>" data-placeholder="<?php echo esc_attr( $reason['placeholder'] ); ?>"> <li data-placeholder="<?php echo esc_attr( $reason['placeholder'] ); ?>">
<label><input type="radio" name="selected-reason" value="<?php echo $reason['id']; ?>"> <?php echo $reason['text']; ?></label> <label>
<input type="radio" name="selected-reason" value="<?php echo $reason['id']; ?>">
<div class="wd-de-reason-icon"><?php echo $reason['icon']; ?></div>
<div class="wd-de-reason-text"><?php echo $reason['text']; ?></div>
</label>
</li> </li>
<?php } ?> <?php } ?>
</ul> </ul>
<?php if ( $custom_reasons && is_array( $custom_reasons ) ) : ?>
<ul class="wd-de-reasons wd-de-others-reasons">
<?php foreach ( $custom_reasons as $reason ) { ?>
<li data-placeholder="<?php echo esc_attr( $reason['placeholder'] ); ?>" data-customreason="true">
<label>
<input type="radio" name="selected-reason" value="<?php echo $reason['id']; ?>">
<div class="wd-de-reason-icon"><?php echo $reason['icon']; ?></div>
<div class="wd-de-reason-text"><?php echo $reason['text']; ?></div>
</label>
</li>
<?php } ?>
</ul>
<?php endif; ?>
<div class="wd-dr-modal-reason-input"><textarea></textarea></div>
<p class="wd-dr-modal-reasons-bottom"> <p class="wd-dr-modal-reasons-bottom">
<?php <?php
echo sprintf( echo sprintf(
@ -780,70 +800,20 @@ class Insights {
</div> </div>
<div class="wd-dr-modal-footer"> <div class="wd-dr-modal-footer">
<a href="#" class="dont-bother-me"><?php $this->client->_etrans( "I rather wouldn't say" ); ?></a> <a href="#" class="dont-bother-me wd-dr-button-secondary"><?php $this->client->_etrans( "Skip & Deactivate" ); ?></a>
<button class="button-secondary"><?php $this->client->_etrans( 'Submit & Deactivate' ); ?></button> <button class="wd-dr-button-secondary wd-dr-cancel-modal"><?php $this->client->_etrans( 'Cancel' ); ?></button>
<button class="button-primary"><?php $this->client->_etrans( 'Cancel' ); ?></button> <button class="wd-dr-submit-modal"><?php $this->client->_etrans( 'Submit & Deactivate' ); ?></button>
</div> </div>
</div> </div>
</div> </div>
<style type="text/css">
.wd-dr-modal {
position: fixed;
z-index: 99999;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0,0,0,0.5);
display: none;
}
.wd-dr-modal.modal-active {
display: block;
}
.wd-dr-modal-wrap {
width: 475px;
position: relative;
margin: 10% auto;
background: #fff;
}
.wd-dr-modal-header {
border-bottom: 1px solid #eee;
padding: 8px 20px;
}
.wd-dr-modal-header h3 {
line-height: 150%;
margin: 0;
}
.wd-dr-modal-body {
padding: 5px 20px 20px 20px;
}
.wd-dr-modal-body .reason-input {
margin-top: 5px;
margin-left: 20px;
}
.wd-dr-modal-footer {
border-top: 1px solid #eee;
padding: 12px 20px;
text-align: right;
}
.wd-dr-modal-reasons-bottom {
margin: 15px 0 0 0;
}
</style>
<script type="text/javascript"> <script type="text/javascript">
(function($) { (function($) {
$(function() { $(function() {
var modal = $( '#<?php echo $this->client->slug; ?>-wd-dr-modal' ); var modal = $( '#<?php echo $this->client->slug; ?>-wd-dr-modal' );
var deactivateLink = ''; var deactivateLink = '';
// Open modal
$( '#the-list' ).on('click', 'a.<?php echo $this->client->slug; ?>-deactivate-link', function(e) { $( '#the-list' ).on('click', 'a.<?php echo $this->client->slug; ?>-deactivate-link', function(e) {
e.preventDefault(); e.preventDefault();
@ -852,28 +822,41 @@ class Insights {
modal.find('a.dont-bother-me').attr('href', deactivateLink).css('float', 'left'); modal.find('a.dont-bother-me').attr('href', deactivateLink).css('float', 'left');
}); });
modal.on('click', 'button.button-primary', function(e) { // Close modal; Cancel
modal.on('click', 'button.wd-dr-cancel-modal', function(e) {
e.preventDefault(); e.preventDefault();
modal.removeClass('modal-active'); modal.removeClass('modal-active');
}); });
// Reason change
modal.on('click', 'input[type="radio"]', function () { modal.on('click', 'input[type="radio"]', function () {
var parent = $(this).parents('li:first'); var parent = $(this).parents('li');
var isCustomReason = parent.data('customreason');
var inputValue = $(this).val();
modal.find('.reason-input').remove(); if ( isCustomReason ) {
$('ul.wd-de-reasons.wd-de-others-reasons li').removeClass('wd-de-reason-selected');
} else {
$('ul.wd-de-reasons li').removeClass('wd-de-reason-selected');
var inputType = parent.data('type'), if ( "other" != inputValue ) {
inputPlaceholder = parent.data('placeholder'), $('ul.wd-de-reasons.wd-de-others-reasons').css('display', 'none');
reasonInputHtml = '<div class="reason-input">' + ( ( 'text' === inputType ) ? '<input type="text" size="40" />' : '<textarea rows="5" cols="45"></textarea>' ) + '</div>'; }
if ( inputType !== '' ) {
parent.append( $(reasonInputHtml) );
parent.find('input, textarea').attr('placeholder', inputPlaceholder).focus();
} }
// Show if has custom reasons
if ( "other" == inputValue ) {
$('ul.wd-de-reasons.wd-de-others-reasons').css('display', 'flex');
}
parent.addClass('wd-de-reason-selected');
$('.wd-dr-modal-reason-input').show();
$('.wd-dr-modal-reason-input textarea').attr('placeholder', parent.data('placeholder')).focus();
}); });
modal.on('click', 'button.button-secondary', function(e) { // Submit response
modal.on('click', 'button.wd-dr-submit-modal', function(e) {
e.preventDefault(); e.preventDefault();
var button = $(this); var button = $(this);
@ -883,9 +866,7 @@ class Insights {
} }
var $radio = $( 'input[type="radio"]:checked', modal ); var $radio = $( 'input[type="radio"]:checked', modal );
var $input = $('.wd-dr-modal-reason-input textarea');
var $selected_reason = $radio.parents('li:first'),
$input = $selected_reason.find('textarea, input[type="text"]');
$.ajax({ $.ajax({
url: ajaxurl, url: ajaxurl,
@ -981,4 +962,167 @@ class Insights {
$this->client->send_request( $data, 'tracking-skipped' ); $this->client->send_request( $data, 'tracking-skipped' );
} }
/**
* Deactivation modal styles
*/
private function deactivation_modal_styles() {
?>
<style type="text/css">
.wd-dr-modal {
position: fixed;
z-index: 99999;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: rgba(0,0,0,0.5);
display: none;
box-sizing: border-box;
overflow: scroll;
}
.wd-dr-modal * {
box-sizing: border-box;
}
.wd-dr-modal.modal-active {
display: block;
}
.wd-dr-modal-wrap {
max-width: 870px;
width: 100%;
position: relative;
margin: 10% auto;
background: #fff;
}
.wd-dr-modal-header {
border-bottom: 1px solid #E8E8E8;
padding: 20px 20px 18px 20px;
}
.wd-dr-modal-header h3 {
line-height: 1.8;
margin: 0;
color: #4A5568;
}
.wd-dr-modal-body {
padding: 5px 20px 20px 20px;
}
.wd-dr-modal-body .reason-input {
margin-top: 5px;
margin-left: 20px;
}
.wd-dr-modal-footer {
border-top: 1px solid #E8E8E8;
padding: 20px;
text-align: right;
}
.wd-dr-modal-reasons-bottom {
margin: 0;
}
ul.wd-de-reasons {
display: flex;
margin: 0 -5px 0 -5px;
padding: 15px 0 20px 0;
}
ul.wd-de-reasons.wd-de-others-reasons {
padding-top: 0;
display: none;
}
ul.wd-de-reasons li {
padding: 0 5px;
margin: 0;
width: 14.26%;
}
ul.wd-de-reasons label {
position: relative;
border: 1px solid #E8E8E8;
border-radius: 4px;
display: block;
text-align: center;
height: 100%;
padding: 15px 3px 8px 3px;
}
ul.wd-de-reasons label:after {
width: 0;
height: 0;
border-left: 8px solid transparent;
border-right: 8px solid transparent;
border-top: 10px solid #3B86FF;
position: absolute;
left: 50%;
top: 100%;
margin-left: -8px;
}
ul.wd-de-reasons label input[type="radio"] {
position: absolute;
left: 0;
right: 0;
visibility: hidden;
}
.wd-de-reason-text {
color: #4A5568;
font-size: 13px;
}
.wd-de-reason-icon {
margin-bottom: 7px;
}
ul.wd-de-reasons li.wd-de-reason-selected label {
background-color: #3B86FF;
border-color: #3B86FF;
}
li.wd-de-reason-selected .wd-de-reason-icon svg,
li.wd-de-reason-selected .wd-de-reason-icon svg g {
fill: #fff;
}
li.wd-de-reason-selected .wd-de-reason-text {
color: #fff;
}
ul.wd-de-reasons li.wd-de-reason-selected label:after {
content: "";
}
.wd-dr-modal-reason-input {
margin-bottom: 15px;
display: none;
}
.wd-dr-modal-reason-input textarea {
background: #FAFAFA;
border: 1px solid #287EB8;
border-radius: 4px;
width: 100%;
height: 100px;
color: #524242;
font-size: 13px;
line-height: 1.4;
padding: 11px 15px;
resize: none;
}
.wd-dr-modal-reason-input textarea:focus {
outline: 0 none;
box-shadow: 0 0 0;
}
.wd-dr-button-secondary, .wd-dr-button-secondary:hover {
border: 1px solid #EBEBEB;
border-radius: 3px;
font-size: 13px;
line-height: 1.5;
color: #718096;
padding: 5px 12px;
cursor: pointer;
background-color: transparent;
text-decoration: none;
}
.wd-dr-submit-modal, .wd-dr-submit-modal:hover {
border: 1px solid #3B86FF;
background-color: #3B86FF;
border-radius: 3px;
font-size: 13px;
line-height: 1.5;
color: #fff;
padding: 5px 12px;
cursor: pointer;
margin-left: 4px;
}
</style>
<?php
}
} }

View File

@ -70,18 +70,18 @@ class Updater {
return $transient_data; return $transient_data;
} }
$version_info = $this->get_cached_version_info(); $version_info = $this->get_version_info();
if ( false === $version_info ) {
$version_info = $this->get_project_latest_version();
$this->set_cached_version_info( $version_info );
}
if ( false !== $version_info && is_object( $version_info ) && isset( $version_info->new_version ) ) { if ( false !== $version_info && is_object( $version_info ) && isset( $version_info->new_version ) ) {
unset( $version_info->sections );
// If new version available then set to `response`
if ( version_compare( $this->client->project_version, $version_info->new_version, '<' ) ) { if ( version_compare( $this->client->project_version, $version_info->new_version, '<' ) ) {
unset( $version_info->sections );
$transient_data->response[ $this->client->basename ] = $version_info; $transient_data->response[ $this->client->basename ] = $version_info;
} else {
// If new version is not available then set to `no_update`
$transient_data->no_update[ $this->client->basename ] = $version_info;
} }
$transient_data->last_checked = time(); $transient_data->last_checked = time();
@ -97,6 +97,12 @@ class Updater {
* @return Object or Boolean * @return Object or Boolean
*/ */
private function get_cached_version_info() { private function get_cached_version_info() {
global $pagenow;
// If updater page then fetch from API now
if ( 'update-core.php' == $pagenow ) {
return false; // Force to fetch data
}
$value = get_transient( $this->cache_key ); $value = get_transient( $this->cache_key );
@ -196,14 +202,7 @@ class Updater {
return $data; return $data;
} }
$version_info = $this->get_cached_version_info(); return $this->get_version_info();
if ( false === $version_info ) {
$version_info = $this->get_project_latest_version();
$this->set_cached_version_info( $version_info );
}
return $version_info;
} }
/** /**
@ -224,17 +223,16 @@ class Updater {
return $transient_data; return $transient_data;
} }
$version_info = $this->get_cached_version_info(); $version_info = $this->get_version_info();
if ( false === $version_info ) {
$version_info = $this->get_project_latest_version();
$this->set_cached_version_info( $version_info );
}
if ( false !== $version_info && is_object( $version_info ) && isset( $version_info->new_version ) ) { if ( false !== $version_info && is_object( $version_info ) && isset( $version_info->new_version ) ) {
// If new version available then set to `response`
if ( version_compare( $this->client->project_version, $version_info->new_version, '<' ) ) { if ( version_compare( $this->client->project_version, $version_info->new_version, '<' ) ) {
$transient_data->response[ $this->client->slug ] = (array) $version_info; $transient_data->response[ $this->client->slug ] = (array) $version_info;
} else {
// If new version is not available then set to `no_update`
$transient_data->no_update[ $this->client->slug ] = (array) $version_info;
} }
$transient_data->last_checked = time(); $transient_data->last_checked = time();
@ -244,4 +242,18 @@ class Updater {
return $transient_data; return $transient_data;
} }
/**
* Get version information
*/
private function get_version_info() {
$version_info = $this->get_cached_version_info();
if ( false === $version_info ) {
$version_info = $this->get_project_latest_version();
$this->set_cached_version_info( $version_info );
}
return $version_info;
}
} }

View File

@ -616,3 +616,14 @@ Code Optimized & Improved
Bug Fixed Bug Fixed
20 Sept 2020* 20 Sept 2020*
= 3.3.5 =
* Update Release:
Tax Pricing issue fixed
CSS DEsign issue fixed
Duplicate booking issue fixed
New Hooks added
Code Optimized & Improved
Bug Fixed
26 Oct 2020*

View File

@ -1,4 +1,4 @@
<div class='mep-event-list-loop <?php echo $columnNumber; ?> mep_event_<?php echo $style; ?>_item mix <?php if ($tt) { echo $org_class; } ?> <?php if ($torg) { echo $cat_class; } ?>'> <div class='mep-event-list-loop <?php echo $columnNumber; ?> mep_event_<?php echo $style; ?>_item mix <?php echo $org_class.' '.$cat_class; ?>'>
<?php do_action('mep_event_list_loop_header', $event_id); ?> <?php do_action('mep_event_list_loop_header', $event_id); ?>
<div class="mep_list_thumb"> <div class="mep_list_thumb">
<a href="<?php echo get_the_permalink($event_id); ?>"><?php echo get_the_post_thumbnail($event_id, 'full'); ?></a> <a href="<?php echo get_the_permalink($event_id); ?>"><?php echo get_the_post_thumbnail($event_id, 'full'); ?></a>
@ -100,4 +100,7 @@
</a> </a>
<?php do_action('mep_event_list_loop_footer', $event_id); ?> <?php do_action('mep_event_list_loop_footer', $event_id); ?>
</div> </div>
<div class="item_hover_effect">
<a href="<?php echo get_the_permalink($event_id); ?>"><?php echo __('Book Now', 'mage-eventpress'); ?></a>
</div>
</div> </div>

View File

@ -1,4 +1,4 @@
<div class='mep-event-list-loop mep_event_list_item mep_event_minimal_list mix <?php if ($tt) { echo $org_class; } ?> <?php if ($torg) { echo $cat_class; } ?>'> <div class='mep-event-list-loop mep_event_list_item mep_event_minimal_list mix <?php echo $org_class.' '.$cat_class; ?>'>
<?php do_action('mep_event_minimal_list_loop_header',$event_id); ?> <?php do_action('mep_event_minimal_list_loop_header',$event_id); ?>
<div class="mep_list_thumb"> <div class="mep_list_thumb">
<a href="<?php echo get_the_permalink($event_id); ?>"></a> <a href="<?php echo get_the_permalink($event_id); ?>"></a>

View File

@ -1,4 +1,4 @@
<div class='mep-event-list-loop mep_event_list_item mep_event_native_list mix <?php if ($tt) { echo $org_class; } ?> <?php if ($torg) { echo $cat_class; } ?>'> <div class='mep-event-list-loop mep_event_list_item mep_event_native_list mix <?php echo $org_class.' '.$cat_class; ?>'>
<?php do_action('mep_event_minimal_list_loop_header',$event_id); ?> <?php do_action('mep_event_minimal_list_loop_header',$event_id); ?>
<div class="mep_list_thumb"> <div class="mep_list_thumb">
<a href="<?php echo get_the_permalink($event_id); ?>"><?php echo get_the_post_thumbnail($event_id,'full'); ?></a> <a href="<?php echo get_the_permalink($event_id); ?>"><?php echo get_the_post_thumbnail($event_id,'full'); ?></a>

View File

@ -1 +1 @@
<div class='mep_event_title_list_item'><a href='<?php the_permalink(); ?>'><?php the_title(); ?></a></div> <div class='mep_event_title_list_item mix <?php echo $org_class.' '.$cat_class; ?>'><a href='<?php the_permalink(); ?>'><?php the_title(); ?></a></div>

View File

@ -1,5 +1,5 @@
<ul> <ul>
<?php if($venue){ ?> <li><i class="fa fa-arrow-circle-right"></i> <?php do_action('mep_event_location_venue'); ?> <?php if($venue){ ?> <li><i class="fa fa-arrow-circle-right"></i> <span><?php do_action('mep_event_location_venue'); ?></span>
</li> <?php } ?> </li> <?php } ?>
<?php if($street){ ?><li><i class="fa fa-arrow-circle-right"></i> <?php do_action('mep_event_location_street'); ?> <?php if($street){ ?><li><i class="fa fa-arrow-circle-right"></i> <?php do_action('mep_event_location_street'); ?>
</li><?php } ?> </li><?php } ?>

View File

@ -1,9 +1,9 @@
<div class="mep-event-meta"> <div class="mep-event-meta">
<?php _e(mep_get_label($post_id, 'mep_share_text', 'Share This Event:'), 'mage-eventpress'); ?> <?php _e(mep_get_label($post_id, 'mep_share_text', "Share This $event_label:"), 'mage-eventpress'); ?>
<ul class='mep-social-share'> <ul class='mep-social-share'>
<?php do_action('mep_before_social_share_list',get_the_id()); ?> <?php do_action('mep_before_social_share_list',get_the_id()); ?>
<li> <a data-toggle="tooltip" title="" class="facebook" onclick="window.open('https://www.facebook.com/sharer.php?u=<?php the_permalink(); ?>','Facebook','width=600,height=300,left='+(screen.availWidth/2-300)+',top='+(screen.availHeight/2-150)+''); return false;" href="http://www.facebook.com/sharer.php?u=<?php the_permalink(); ?>" data-original-title="Share on Facebook"><i class="fa fa-facebook"></i></a></li> <li> <a data-toggle="tooltip" title="" class="facebook" onclick="window.open('https://www.facebook.com/sharer.php?u=<?php the_permalink(); ?>','Facebook','width=600,height=300,left='+(screen.availWidth/2-300)+',top='+(screen.availHeight/2-150)+''); return false;" href="http://www.facebook.com/sharer.php?u=<?php the_permalink(); ?>" data-original-title="Share on Facebook"><i class="fab fa-facebook-f"></i></a></li>
<li><a data-toggle="tooltip" title="" class="twitter" onclick="window.open('https://twitter.com/share?url=<?php the_permalink(); ?>&amp;text=<?php the_title(); ?>','Twitter share','width=600,height=300,left='+(screen.availWidth/2-300)+',top='+(screen.availHeight/2-150)+''); return false;" href="http://twitter.com/share?url=<?php the_permalink(); ?>&amp;text=<?php the_title(); ?>" data-original-title="Twittet it"><i class="fa fa-twitter"></i></a></li> <li><a data-toggle="tooltip" title="" class="twitter" onclick="window.open('https://twitter.com/share?url=<?php the_permalink(); ?>&amp;text=<?php the_title(); ?>','Twitter share','width=600,height=300,left='+(screen.availWidth/2-300)+',top='+(screen.availHeight/2-150)+''); return false;" href="http://twitter.com/share?url=<?php the_permalink(); ?>&amp;text=<?php the_title(); ?>" data-original-title="Twittet it"><i class="fab fa-twitter"></i></a></li>
<?php do_action('mep_after_social_share_list',get_the_id()); ?> <?php do_action('mep_after_social_share_list',get_the_id()); ?>
</ul> </ul>
</div> </div>

View File

@ -1,6 +1,5 @@
<tr> <tr>
<td align="Left"><?php echo $field['option_name_t']; ?> <td align="Left"><?php echo $field['option_name_t']; ?>
<?php if ($mep_available_seat == 'on') { ?><div class="xtra-item-left"><?php echo max($total_ticket_left, 0); ?> <?php if ($mep_available_seat == 'on') { ?><div class="xtra-item-left"><?php echo max($total_ticket_left, 0); ?>
<?php echo mep_get_option('mep_left_text', 'label_setting_sec') ? mep_get_option('mep_left_text', 'label_setting_sec') : _e('Left:', 'mage-eventpress'); ?> <?php echo mep_get_option('mep_left_text', 'label_setting_sec') ? mep_get_option('mep_left_text', 'label_setting_sec') : _e('Left:', 'mage-eventpress'); ?>
@ -35,11 +34,10 @@
} else { } else {
?> ?>
<input id="eventpxtp_<?php echo $count; ?>" type="hidden" class='extra-qty-box etp' name='option_qty[]' data-price='0' value='0' min="0" max="0"> <input id="eventpxtp_<?php echo $count; ?>" type="hidden" class='extra-qty-box etp' name='option_qty[]' data-price='0' value='0' min="0" max="0">
<?php <?php echo mep_get_option('mep_no_seat_available_text', 'label_setting_sec') ? mep_get_option('mep_no_seat_available_text', 'label_setting_sec') : _e('No Seat Availables', 'mage-eventpress');
_e('No Seat Available', 'mage-eventpress');
} }
$ticket_name = mep_remove_apostopie($field['option_name_t']); $ticket_name = mep_remove_apostopie($field['option_name_t']);
do_action('mep_after_ticket_type_qty', $post_id, $ticket_name, $field, $default_quantity,$start_date); do_action('mep_after_ticket_type_qty', $post_id, $ticket_name, $field, $default_quantity,$start_date);
?> ?>
</td> </td>
<td class="ticket-price"><span class="tkt-pric"> <td class="ticket-price"><span class="tkt-pric">

View File

@ -53,7 +53,7 @@ $speaker_status = mep_get_option('mep_enable_speaker_list', 'general
<?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e('Event Location:', 'mage-eventpress'); ?> <?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e('Event Location:', 'mage-eventpress'); ?>
</h3> </h3>
<p><?php do_action('mep_event_location_venue'); ?> <p><?php do_action('mep_event_location_venue'); ?>
, <?php do_action('mep_event_location_city'); ?> </p> <?php //do_action('mep_event_location_city'); ?> </p>
</div> </div>
</div> </div>
<?php } ?> <?php } ?>

View File

@ -16,6 +16,7 @@ $hide_schedule_details = mep_get_option( 'mep_event_hide_event_schedule_detail
$hide_share_details = mep_get_option( 'mep_event_hide_share_this_details', 'general_setting_sec', 'no'); $hide_share_details = mep_get_option( 'mep_event_hide_share_this_details', 'general_setting_sec', 'no');
$hide_calendar_details = mep_get_option( 'mep_event_hide_calendar_details', 'general_setting_sec', 'no'); $hide_calendar_details = mep_get_option( 'mep_event_hide_calendar_details', 'general_setting_sec', 'no');
$speaker_status = mep_get_option('mep_enable_speaker_list', 'general_setting_sec', 'no'); $speaker_status = mep_get_option('mep_enable_speaker_list', 'general_setting_sec', 'no');
$event_label = mep_get_option('mep_event_label', 'general_setting_sec', 'Events');
?> ?>
<div class="mep-default-theme bristol"> <div class="mep-default-theme bristol">
<div class="mep-default-feature-image"> <div class="mep-default-feature-image">
@ -39,7 +40,7 @@ $speaker_status = mep_get_option('mep_enable_speaker_list', 'general
<div class="df-ico"><i class="fa fa-map-marker"></i></div> <div class="df-ico"><i class="fa fa-map-marker"></i></div>
<div class='df-dtl'> <div class='df-dtl'>
<h3> <h3>
<?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e('Event Location:', 'mage-eventpress'); ?> <?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e("$event_label Location:", 'mage-eventpress'); ?>
</h3> </h3>
<p><?php do_action('mep_event_location_venue'); ?> <p><?php do_action('mep_event_location_venue'); ?>
, <?php do_action('mep_event_location_city'); ?> </p> , <?php do_action('mep_event_location_city'); ?> </p>
@ -84,12 +85,12 @@ $speaker_status = mep_get_option('mep_enable_speaker_list', 'general
<?php do_action('mep_add_to_cart',get_the_id()) ?> <?php do_action('mep_add_to_cart',get_the_id()) ?>
</div> </div>
<div class="mep-default-feature-content"> <div class="mep-default-feature-content">
<h4 class="mep-cart-table-title"><?php _e('About The Event', 'mage-eventpress'); ?></h4> <h4 class="mep-cart-table-title"><?php _e("About The $event_label", 'mage-eventpress'); ?></h4>
<?php do_action('mep_event_details'); ?> <?php do_action('mep_event_details'); ?>
</div> </div>
<div class="mep-default-sidrbar-map"> <div class="mep-default-sidrbar-map">
<h4 class="mep-cart-table-title"> <h4 class="mep-cart-table-title">
<?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e('Event Location:', 'mage-eventpress'); ?> <?php echo mep_get_option('mep_event_location_text', 'label_setting_sec') ? mep_get_option('mep_event_location_text', 'label_setting_sec') : _e("$event_label Location:", 'mage-eventpress'); ?>
</h4> </h4>
<?php do_action('mep_event_map',get_the_id()); ?> <?php do_action('mep_event_map',get_the_id()); ?>
</div> </div>

View File

@ -3,7 +3,7 @@
* Plugin Name: Woocommerce Events Manager * Plugin Name: Woocommerce Events Manager
* Plugin URI: http://mage-people.com * Plugin URI: http://mage-people.com
* Description: A Complete Event Solution for WordPress by MagePeople.. * Description: A Complete Event Solution for WordPress by MagePeople..
* Version: 3.3.4 * Version: 3.3.5
* Author: MagePeople Team * Author: MagePeople Team
* Author URI: http://www.mage-people.com/ * Author URI: http://www.mage-people.com/
* Text Domain: mage-eventpress * Text Domain: mage-eventpress