PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.4.9
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.4.9
4.4.9 4.4.8 4.4.7 4.4.6 4.4.5 4.4.4 4.4.3 4.4.2 4.4.1 4.4.0 4.3.9.1 4.3.9 4.3.8 4.3.7 4.1.6.9 4.1.6.9.1 4.1.6.9.2 4.1.6.9.3 4.1.6.9.4 4.1.7 4.1.7.1 4.1.7.2 4.1.7.3 4.1.7.3.1 4.1.7.3.2 All 140 releases
← All changes | inc/curds/class-lp-order-curd.php +39 -23 4.3.7 → 4.4.9 View file →
@@ -30,9 +30,9 @@
30 30 if ( ! $order instanceof LP_Order ) {
31 31 return false;
32 32 }
33 33
34 - $order->set_order_date( time() );
34 + //$order->set_order_date( time() );
35 35 $order->set_order_key( learn_press_generate_order_key() );
36 36 $status = $this->format_status_save_db( $order );
37 37 $lp_time = new LP_Datetime( time() );
38 38
@@ -78,16 +78,33 @@
78 78 if ( ! $order instanceof LP_Order ) {
79 79 return false;
80 80 }
81 81
82 + $post = get_post( $order->get_id() );
82 83 $status = $this->format_status_save_db( $order );
83 84 $post_data = array(
84 - //'post_title' => $order->get_order_number(),
85 - 'post_date' => $order->get_order_date( 'edit' )->toSql(),
86 - 'post_date_gmt' => $order->get_order_date( 'edit' )->toSql( false ),
87 - 'post_status' => $status,
88 - //'post_parent' => $order->get_parent_id(),
85 + 'post_status' => $status,
89 86 );
87 +
88 + // For case edit Order on Backend.
89 + if ( isset( $_POST['order-date'] ) ) {
90 + // Data time submit edit order will is local time
91 + $order_date = LP_Request::get_param( 'order-date' );
92 + $order_hour = LP_Request::get_param( 'order-hour', '00' );
93 + $order_min = LP_Request::get_param( 'order-minute', '00' );
94 + $date_time_local = $order_date . ' ' . $order_hour . ':' . $order_min . ':00';
95 +
96 + // Date GMT
97 + $lpDateTimeLocal = new LP_Datetime( $date_time_local );
98 + $date_time_gmt = $lpDateTimeLocal->to_gmt_string( $lpDateTimeLocal );
99 + $post_data['post_date'] = $date_time_local;
100 + $post_data['post_date_gmt'] = $date_time_gmt;
101 + } elseif ( $post->post_status === 'auto-draft'
102 + && $post->post_date_gmt === '0000-00-00 00:00:00' ) {
103 + $date_time_gmt = get_gmt_from_date( $post->post_date );
104 + $post_data['post_date_gmt'] = $date_time_gmt;
105 + }
106 +
90 107 $post_data = apply_filters( 'learn-press/order/update-data', $post_data, $order->get_id() );
91 108
92 109 /**
93 110 * When updating this object, to prevent infinite loops, use $wpdb
@@ -494,25 +511,24 @@
494 511 } else {
495 512 $users = 0;
496 513 }
497 514
498 - $order->set_data_via_methods(
499 - array(
500 - 'user_id' => $users,
501 - 'order_date' => new LP_Datetime( $post->post_date ),
502 - 'date_modified' => new LP_Datetime( $post->post_modified ),
503 - 'status' => str_replace( 'lp-', '', $post->post_status ),
504 - 'parent_id' => $post->post_parent,
505 - 'created_via' => get_post_meta( $post->ID, '_created_via', true ),
506 - 'total' => get_post_meta( $post->ID, '_order_total', true ),
507 - 'subtotal' => get_post_meta( $post->ID, '_order_subtotal', true ),
508 - 'order_key' => get_post_meta( $post->ID, '_order_key', true ),
509 - 'user_ip_address' => get_post_meta( $post->ID, '_user_ip_address', true ),
510 - 'user_agent' => get_post_meta( $post->ID, '_user_agent', true ),
511 - 'checkout_email' => get_post_meta( $post->ID, '_checkout_email', true ),
512 - 'currency' => get_post_meta( $post->ID, '_order_currency', true ),
513 - )
514 - );
515 + $lpDateTimeGmt = new LP_Datetime( $post->post_date_gmt );
516 + $date_local = $lpDateTimeGmt->toSql( true );
517 + $order->set_order_date( new LP_Datetime( $date_local ) );
518 +
519 + $order->set_user_id( $users );
520 + $order->set_date_modified( new LP_Datetime( $post->post_modified ) );
521 + $order->set_status( str_replace( 'lp-', '', $post->post_status ) );
522 + $order->set_parent_id( $post->post_parent );
523 + $order->set_created_via( get_post_meta( $post->ID, '_created_via', true ) );
524 + $order->set_total( get_post_meta( $post->ID, '_order_total', true ) );
525 + $order->set_subtotal( get_post_meta( $post->ID, '_order_subtotal', true ) );
526 + $order->set_order_key( get_post_meta( $post->ID, '_order_key', true ) );
527 + $order->set_user_ip_address( get_post_meta( $post->ID, '_user_ip_address', true ) );
528 + $order->set_user_agent( get_post_meta( $post->ID, '_user_agent', true ) );
529 + $order->set_checkout_email( get_post_meta( $post->ID, '_checkout_email', true ) );
530 + $order->set_currency( get_post_meta( $post->ID, '_order_currency', true ) );
515 531 $order->set_data( 'order_subtotal', get_post_meta( $post->ID, '_order_subtotal', true ) );
516 532 $order->set_data( 'order_total', get_post_meta( $post->ID, '_order_total', true ) );
517 533 $order->set_data( 'payment_method', get_post_meta( $post->ID, '_payment_method', true ) );
518 534 $order->set_data( 'payment_method_title', get_post_meta( $post->ID, '_payment_method_title', true ) );