prefix . "apt_settings"; $staff_table = $wpdb->prefix . "apt_staff"; if ( isset( $_REQUEST['status'], $_REQUEST['id'] ) ) { $status = sanitize_text_field( $_REQUEST['status'] ); $id = sanitize_text_field( $_REQUEST['id'] ); $wpdb->update( $wpdb->prefix . 'apt_appointments', array( 'status' => $status ), array( 'id' => $id ) ); $wpdb->show_errors(); $wpdb->print_error(); } if ( isset( $_REQUEST['service_name'] ) && isset( $_POST['appoint_form_nonce'] ) ) { if ( ! wp_verify_nonce( $_POST['appoint_form_nonce'], 'appoint_form_nonce' ) ) { die(); } $provider_name = "1"; $service_name = sanitize_text_field( $_REQUEST['service_name'] ); $start_period = sanitize_text_field( $_REQUEST['start_period'] ); $end_period = sanitize_text_field( $_REQUEST['end_period'] ); $a_customer = sanitize_text_field( $_REQUEST['a_customer'] ); $contact_no = sanitize_text_field( $_REQUEST['contact_no'] ); $status = sanitize_text_field( $_REQUEST['status'] ); $payment_status = sanitize_text_field( $_REQUEST['p_status'] ); $newDate = sanitize_text_field( $_REQUEST['ap_datepicker'] ); $ap_datepicker = date( "Y-m-d", strtotime( $newDate ) ); $customer_email = sanitize_text_field( $_REQUEST['customer_email'] ); $s_price = sanitize_text_field( $_REQUEST['s_price'] ); $staff_details = $wpdb->get_col( "SELECT staff_email from $staff_table where id='$provider_name'" ); $staff_email = $staff_details[0]; $staff_name_details = $wpdb->get_col( "SELECT staff_member_name from $staff_table where id='$provider_name'" ); $staff_member_name = $staff_name_details[0]; $settings_payment_currency = $wpdb->get_col( "SELECT currency from $settings_table" ); $payment_currency = $settings_payment_currency[0]; $wpdb->insert( $wpdb->prefix . 'apt_appointments', array( 'client_name' => $a_customer, 'staff_member' => $provider_name, 'service_type' => $service_name, 'contact' => $contact_no, 'booking_date' => $ap_datepicker, 'start_time' => $start_period, 'end_time' => $end_period, 'status' => $status, 'payment_status' => $payment_status, 'client_email' => $customer_email, 'staff_email' => $staff_email, 'appt_booked_by' => 'by_admin', 'repeat_appointment' => 'Non', 're_days' => '1', 're_weeks' => '1', 're_months' => '1', ) ); $wpdb->show_errors(); $wpdb->print_error(); $wpdb->insert( $wpdb->prefix . 'apt_payment', array( 'payment_type' => 'Cash', 'customer' => $a_customer, 'customer_email' => $customer_email, 'staff' => $staff_member_name, 'appointment_date' => $ap_datepicker, 'service' => $service_name, 'amount' => $s_price . ' ' . $payment_currency, 'status' => $payment_status, ) ); } //single delete if ( isset( $_REQUEST['appoint_id'] ) ) { $del = sanitize_text_field( $_REQUEST['appoint_id'] ); $wpdb->delete( $wpdb->prefix . 'apt_appointments', array( 'id' => $del ) ); } // multi delete if ( isset( $_REQUEST['multi_appoint_id'] ) ) { echo $id_array = sanitize_text_field( $_REQUEST['multi_appoint_id'] ); $arr = explode( ',', $id_array ); echo $id_count = count( $arr ); for ( $i = 0; $i <= $id_count; $i ++ ) { $del = $arr[ $i ]; $wpdb->delete( $wpdb->prefix . 'apt_appointments', array( 'id' => $del ) ); $wpdb->show_errors(); $wpdb->print_error(); } } //update appointment if ( isset( $_REQUEST['u_service_name'] ) && isset( $_POST['update_appoint_form_nonce'] ) ) { if ( ! wp_verify_nonce( $_POST['update_appoint_form_nonce'], 'update_appoint_form_nonce' ) ) { die(); } $id = sanitize_text_field( $_REQUEST['id_appoint'] ); $u_provider_name = "1"; $u_service_name = sanitize_text_field( $_REQUEST['u_service_name'] ); $u_start_period = sanitize_text_field( $_REQUEST['u_start_period'] ); $u_end_period = sanitize_text_field( $_REQUEST['u_end_period'] ); $u_a_customer = sanitize_text_field( $_REQUEST['u_a_customer'] ); $u_contact_no = sanitize_text_field( $_REQUEST['u_contact_no'] ); $u_status = sanitize_text_field( $_REQUEST['u_status'] ); $u_payment_status = sanitize_text_field( $_REQUEST['u_payment_status'] ); $u_newDate = sanitize_text_field( $_REQUEST['u_datepicker'] ); $u_datepicker = date( "Y-m-d", strtotime( $u_newDate ) ); $wpdb->update( $wpdb->prefix . 'apt_appointments', array( 'client_name' => $u_a_customer, 'staff_member' => $u_provider_name, 'service_type' => $u_service_name, 'contact' => $u_contact_no, 'booking_date' => $u_datepicker, 'start_time' => $u_start_period, 'end_time' => $u_end_period, 'status' => $u_status, 'payment_status' => $u_payment_status, ), array( 'id' => $id ) ); $wpdb->show_errors(); $wpdb->print_error(); } if ( isset( $_REQUEST['apt_client_email'] ) ) { $client_email = sanitize_text_field( $_REQUEST['apt_client_email'] ); $staff_email = sanitize_text_field( $_REQUEST['apt_staff_email'] ); $status = sanitize_text_field( $_REQUEST['status'] ); $client_name = sanitize_text_field( $_REQUEST['apt_client_name'] ); $apt_start_time = sanitize_text_field( $_REQUEST['apt_time'] ); $ap_booking_end_time = sanitize_text_field( $_REQUEST['apt_end_time'] ); $apt_date = sanitize_text_field( $_REQUEST['apt_date'] ); $service_name = sanitize_text_field( $_REQUEST['apt_service_name'] ); $staff_name = sanitize_text_field( $_REQUEST['apt_staff_name'] ); $admin_info = get_userdata( 1 ); $first_name = $admin_info->first_name; $last_name = $admin_info->last_name; if ( ! empty( $first_name ) && ! empty( $last_name ) ) { $admin_user_login = $admin_info->first_name . " " . $admin_info->last_name; } else { $admin_user_login = $admin_info->user_login; } $site_url = get_site_url(); $blog_name = get_bloginfo(); $time_format = get_option( 'time_format' ); $temp_ap_start_time = strtotime( $apt_start_time ); $appt_start_time = date( $time_format, $temp_ap_start_time ); $temp_ap_end_time = strtotime( $ap_booking_end_time ); $appt_end_time = date( $time_format, $temp_ap_end_time ); $appointment_time = $appt_start_time . "-" . $appt_end_time; $date_format = get_option( 'date_format' ); $appoint_date = date( $date_format, strtotime( $apt_date ) ); $notification_enable = $email_settings['enable']; $notification_emailtype = $email_settings['emailtype']; if ( $notification_enable == "yes" ) { //PHP MAIL if ( $notification_emailtype == "phpmail" ) { $notification_admin_php_email = $email_settings['phpemail']; if ( $status == "pending" ) { $notification_client_pending = $email_settings['send_notification_client_pending']; if ( $notification_admin_php_email !== "" ) { if ( $notification_client_pending == "yes" ) { //CLIENT PENDING $temp_notification_subject_client_pending = $email_settings['subject_notification_client_pending']; $notification_subject_client_pending = strtr( $temp_notification_subject_client_pending, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_client_pending = $email_settings['body_notification_client_pending']; $notification_body_client_pending = strtr( $temp_notification_body_client_pending, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_client_pending !== "" && $notification_body_client_pending !== "" ) { $to_client_email_pending = $client_email; $subject_client_pending = $notification_subject_client_pending; $body_client_pending = $notification_body_client_pending; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_client_pending = mail( $to_client_email_pending, $subject_client_pending, $body_client_pending, $header ); } } //ADMIN PENDING $notification_admin_pending = $email_settings['send_notification_admin_pending']; if ( $notification_admin_pending == "yes" ) { $temp_notification_subject_admin_pending = $email_settings['subject_admin_pending']; $notification_subject_admin_pending = strtr( $temp_notification_subject_admin_pending, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_admin_pending = $email_settings['admin_body_pending']; $notification_body_admin_pending = strtr( $temp_notification_body_admin_pending, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_admin_pending !== "" && $notification_body_admin_pending !== "" ) { $to_admin_email_pending = $notification_admin_php_email; $subject_admin_pending = $notification_subject_admin_pending; $body_admin_pending = $notification_body_admin_pending; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_admin_pending = mail( $to_admin_email_pending, $subject_admin_pending, $body_admin_pending, $header ); } } } } if ( $status == "approved" ) { $notification_client_approved = $email_settings['send_notification_client_approval']; if ( $notification_admin_php_email !== "" ) { if ( $notification_client_approved == "yes" ) { //CLIENT APPROVED $temp_notification_subject_client_approved = $email_settings['subject_notification_client_approval']; $notification_subject_client_approved = strtr( $temp_notification_subject_client_approved, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_client_approved = $email_settings['body_notification_client_approval']; $notification_body_client_approved = strtr( $temp_notification_body_client_approved, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_client_approved !== "" && $notification_body_client_approved !== "" ) { $to_client_email_approved = $client_email; $subject_client_approved = $notification_subject_client_approved; $body_client_approved = $notification_body_client_approved; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_client_approved = mail( $to_client_email_approved, $subject_client_approved, $body_client_approved, $header ); } } //ADMIN APPROVED $notification_admin_approved = $email_settings['send_notification_admin_approved']; if ( $notification_admin_approved == "yes" ) { $temp_notification_subject_admin_approved = $email_settings['subject_admin_approved']; $notification_subject_admin_approved = strtr( $temp_notification_subject_admin_approved, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_admin_approved = $email_settings['admin_body_approved']; $notification_body_admin_approved = strtr( $temp_notification_body_admin_approved, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_admin_approved !== "" && $notification_body_admin_approved !== "" ) { $to_admin_email_approved = $notification_admin_php_email; $subject_admin_approved = $notification_subject_admin_approved; $body_admin_pending = $notification_body_admin_approved; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_admin_approved = mail( $to_admin_email_approved, $subject_admin_approved, $body_admin_pending, $header ); } } } } if ( $status == "cancel" ) { $notification_client_cancel = $email_settings['send_notification_client_cancel']; if ( $notification_admin_php_email !== "" ) { if ( $notification_client_cancel == "yes" ) { //CLIENT CANCEL $temp_notification_subject_client_cancel = $email_settings['subject_notification_client_cancel']; $notification_subject_client_cancel = strtr( $temp_notification_subject_client_cancel, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_client_cancel = $email_settings['body_notification_client_cancel']; $notification_body_client_cancel = strtr( $temp_notification_body_client_cancel, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_client_cancel !== "" && $notification_body_client_cancel !== "" ) { $to_client_email_cancel = $client_email; $subject_client_cancel = $notification_subject_client_cancel; $body_client_cancel = $notification_body_client_cancel; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_client_cancel = mail( $to_client_email_cancel, $subject_client_cancel, $body_client_cancel, $header ); } } //ADMIN CANCEL $notification_admin_cancelled = $email_settings['send_notification_admin_cancelled']; if ( $notification_admin_cancelled == "yes" ) { $temp_notification_subject_admin_cancel = $email_settings['subject_admin_cancelled']; $notification_subject_admin_cancelled = strtr( $temp_notification_subject_admin_cancel, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); $temp_notification_body_admin_cancel = $email_settings['admin_body_cancelled']; $notification_body_admin_cancelled = strtr( $temp_notification_body_admin_cancel, array( '[SERVICE_NAME]' => $service_name, '[APPOINTMENT_DATE]' => $appoint_date, '[APPOINTMENT_TIME]' => $appointment_time, '[CLIENT_NAME]' => $client_name, '[CLIENT_EMAIL]' => $client_email, '[BLOG_NAME]' => $blog_name, '[ADMIN_NAME]' => $admin_user_login, '[APPOINTMENT_STATUS]' => $status, '[SITE_URL]' => $site_url ) ); if ( $notification_subject_admin_cancelled !== "" && $notification_body_admin_cancelled !== "" ) { $to_admin_email_cancel = $notification_admin_php_email; $subject_admin_cancel = $notification_subject_admin_cancelled; $body_admin_cancel = $notification_body_admin_cancelled; $from_admin_email = $notification_admin_php_email; $header = "From: $admin_user_login <$from_admin_email>" . "\r\n"; $mail_check_admin_cancel = mail( $to_admin_email_cancel, $subject_admin_cancel, $body_admin_cancel, $header ); } } } } } } } $appointment_staff_details = $wpdb->get_results( "SELECT * from $wpdb->prefix" . "apt_staff" ); $appointment_service_details = $wpdb->get_results( "SELECT * from $wpdb->prefix" . "apt_services" ); $appointment_client_details = $wpdb->get_results( "SELECT * from $wpdb->prefix" . "apt_clients" ); ?>