| @@ -3,11 +3,14 @@ | ||
| 3 | 3 | * Admin view for displaying details of an order. |
| 4 | 4 | * |
| 5 | 5 | * @author ThimPress (Nhamdv) |
| 6 | 6 | * @package LearnPress/Admin/Views |
| 7 | - * @version 4.0.4 | |
| 7 | + * @version 4.0.5 | |
| 8 | 8 | */ |
| 9 | 9 | |
| 10 | +use LearnPress\Helpers\LPDateTime; | |
| 11 | +use LearnPress\Models\OrderPostModel; | |
| 12 | + | |
| 10 | 13 | if ( isset( $order_items ) ) { |
| 11 | 14 | $currency_symbol = learn_press_get_currency_symbol( $order_items->currency ); |
| 12 | 15 | } else { |
| 13 | 16 | $currency_symbol = learn_press_get_currency_symbol(); |
| @@ -16,12 +19,24 @@ | ||
| 16 | 19 | if ( ! isset( $order ) || ! ( $order instanceof LP_Order ) ) { |
| 17 | 20 | return; |
| 18 | 21 | } |
| 19 | 22 | |
| 20 | -$post = $order->get_post(); | |
| 21 | -$method_title = $order->get_payment_method_title(); | |
| 22 | -$user_ip = $order->get_user_ip_address(); | |
| 23 | -$user_ids = $order->get_user_id(); | |
| 23 | +$post = $order->get_post(); | |
| 24 | +$method_title = $order->get_payment_method_title(); | |
| 25 | +$user_ip = $order->get_user_ip_address(); | |
| 26 | +$user_ids = $order->get_user_id(); | |
| 27 | +$oderPostModel = OrderPostModel::find_by_id( $post->ID, true ); | |
| 28 | +if ( ! $oderPostModel ) { | |
| 29 | + return; | |
| 30 | +} | |
| 31 | + | |
| 32 | +// Check create new Order Manual by WP | |
| 33 | +if ( $oderPostModel->post_date_gmt === '0000-00-00 00:00:00' ) { | |
| 34 | + $convert_post_date_gmt = get_gmt_from_date( $oderPostModel->post_date ); | |
| 35 | + $oderPostModel->post_date_gmt = $convert_post_date_gmt; | |
| 36 | +} | |
| 37 | + | |
| 38 | +$lpDateTime = new LPDateTime( $oderPostModel->post_date_gmt ); | |
| 24 | 39 | ?> |
| 25 | 40 | |
| 26 | 41 | <div id="learn-press-order" class="order-details"> |
| 27 | 42 | <div class="order-data"> |
| @@ -48,37 +63,37 @@ | ||
| 48 | 63 | |
| 49 | 64 | <?php learn_press_touch_time( true, 1 ); ?> |
| 50 | 65 | |
| 51 | 66 | <input type="date" class="order-date" name="order-date" |
| 52 | - value="<?php echo esc_attr( $order->get_order_date( 'd' ) ); ?>"> | |
| 67 | + value="<?php echo esc_attr( $lpDateTime->format( 'Y-m-d', 'gmt_to_local' ) ); ?>"> | |
| 53 | 68 | @ |
| 54 | 69 | <input type="number" class="order-hour" name="order-hour" min="0" max="23" |
| 55 | - value="<?php echo esc_attr( $order->get_order_date( 'h' ) ); ?>"> | |
| 70 | + value="<?php echo esc_attr( $lpDateTime->format( 'H', 'gmt_to_local' ) ); ?>"> | |
| 56 | 71 | : |
| 57 | 72 | <input type="number" class="order-minute" name="order-minute" min="0" max="59" |
| 58 | - value="<?php echo esc_attr( $order->get_order_date( 'm' ) ); ?>"> | |
| 73 | + value="<?php echo esc_attr( $lpDateTime->format( 'i', 'gmt_to_local' ) ); ?>"> | |
| 59 | 74 | |
| 60 | - <!-- Hidden fields for date only for default save post of Wordpress --> | |
| 61 | - <input type="hidden" name="aa" value="<?php echo gmdate( 'Y', $order->get_order_date( 'timestamp' ) ); ?>"> | |
| 62 | - <input type="hidden" name="mm" value="<?php echo gmdate( 'm', $order->get_order_date( 'timestamp' ) ); ?>"> | |
| 63 | - <input type="hidden" name="jj" value="<?php echo gmdate( 'd', $order->get_order_date( 'timestamp' ) ); ?>"> | |
| 64 | - <input type="hidden" name="ss" value="<?php echo gmdate( 's', $order->get_order_date( 'timestamp' ) ); ?>"> | |
| 65 | - <input type="hidden" name="hh" value="<?php echo gmdate( 'h', $order->get_order_date( 'h' ) ); ?>"> | |
| 66 | - <input type="hidden" name="mn" value="<?php echo gmdate( 'm', $order->get_order_date( 'm' ) ); ?>"> | |
| 67 | - <!-- Hidden fields for date only for default save post of Wordpress --> | |
| 75 | + <!-- Hidden fields for date only for default save post of WordPress --> | |
| 76 | + <input type="hidden" name="aa" value="<?php echo esc_attr( $lpDateTime->format( 'Y', 'gmt_to_local' ) ); ?>"> | |
| 77 | + <input type="hidden" name="mm" value="<?php echo esc_attr( $lpDateTime->format( 'm', 'gmt_to_local' ) ); ?>"> | |
| 78 | + <input type="hidden" name="jj" value="<?php echo esc_attr( $lpDateTime->format( 'd', 'gmt_to_local' ) ); ?>"> | |
| 79 | + <input type="hidden" name="ss" value="<?php echo esc_attr( $lpDateTime->format( 's', 'gmt_to_local' ) ); ?>"> | |
| 80 | + <input type="hidden" name="hh" value="<?php echo esc_attr( $lpDateTime->format( 'h', 'gmt_to_local' ) ); ?>"> | |
| 81 | + <input type="hidden" name="mn" value="<?php echo esc_attr( $lpDateTime->format( 'i', 'gmt_to_local' ) ); ?>"> | |
| 82 | + <!-- Hidden fields for date only for default save post of WordPress --> | |
| 68 | 83 | </div> |
| 69 | 84 | |
| 70 | 85 | <div class="order-data-field order-data-status <?php echo sanitize_title( $order->get_post_status() ); ?>"> |
| 71 | 86 | <label><?php esc_html_e( 'Status:', 'learnpress' ); ?></label> |
| 72 | - <select name="order-status" data-status="<?php echo 'lp-' . $order->get_status(); ?>"> | |
| 87 | + <select name="order-status" data-status="<?php echo $oderPostModel->post_status; ?>"> | |
| 73 | 88 | <?php |
| 74 | - $statuses = LP_Order::get_order_statuses(); | |
| 75 | - foreach ( $statuses as $status => $status_name ) { | |
| 89 | + $statuses = OrderPostModel::get_order_statuses(); | |
| 90 | + foreach ( $statuses as $status => $status_label ) { | |
| 76 | 91 | ?> |
| 77 | 92 | <option data-desc="<?php echo esc_attr( _learn_press_get_order_status_description( $status ) ); ?>" |
| 78 | 93 | value="<?php echo esc_attr( $status ); ?>" |
| 79 | - <?php echo selected( $status, 'lp-' . $order->get_status(), false ); ?>> | |
| 80 | - <?php echo esc_html( LP_Order::get_status_label( $status_name ) ); ?> | |
| 94 | + <?php echo selected( $status, $oderPostModel->post_status, false ); ?>> | |
| 95 | + <?php echo esc_html( $status_label ); ?> | |
| 81 | 96 | </option>; |
| 82 | 97 | <?php |
| 83 | 98 | } |
| 84 | 99 | ?> |
| @@ -83,9 +98,9 @@ | ||
| 83 | 98 | } |
| 84 | 99 | ?> |
| 85 | 100 | </select> |
| 86 | 101 | |
| 87 | - <?php if ( $order->get_status() === 'completed' ) : ?> | |
| 102 | + <?php if ( $oderPostModel->post_status === OrderPostModel::STATUS_COMPLETED ) : ?> | |
| 88 | 103 | <div> |
| 89 | 104 | <div |
| 90 | 105 | style="padding: 10px 18px; margin-top: 10px; border: 2px solid #d80000; border-radius: 4px; display: inline-block;"> |
| 91 | 106 | <span class="dashicons dashicons-warning" style="color:#d80000"></span> |
| @@ -98,9 +113,9 @@ | ||
| 98 | 113 | <div class="order-data-field order-data-user"> |
| 99 | 114 | <div class="order-users"> |
| 100 | 115 | <label><?php esc_html_e( 'Customers:', 'learnpress' ); ?></label> |
| 101 | 116 | <?php |
| 102 | - if ( LP_ORDER_PENDING === $order->get_status() && $order->is_manual() ) { | |
| 117 | + if ( OrderPostModel::STATUS_PENDING === $oderPostModel->post_status && $order->is_manual() ) { | |
| 103 | 118 | $data_struct = [ |
| 104 | 119 | 'urlApi' => get_rest_url( null, 'lp/v1/admin/tools/search-user' ), |
| 105 | 120 | 'dataType' => 'users', |
| 106 | 121 | 'keyGetValue' => [ |
| @@ -207,14 +222,14 @@ | ||
| 207 | 222 | <?php do_action( 'learn-press/admin/order-details/items/layout', $order ); ?> |
| 208 | 223 | </div> |
| 209 | 224 | |
| 210 | 225 | <?php |
| 211 | -$assets = LP_Admin_Assets::instance(); | |
| 226 | +/*$assets = LP_Admin_Assets::instance(); | |
| 212 | 227 | $assets->add_localize( 'learn-press-meta-box-order', 'users', $order->get_user_data() ); |
| 213 | 228 | $assets->add_localize( 'learn-press-meta-box-order', 'userTextFormat', '{{display_name}} ({{email}})' ); |
| 214 | 229 | |
| 215 | 230 | wp_enqueue_script( 'jquery-ui-datepicker' ); |
| 216 | -wp_enqueue_style( 'jquery-ui' ); | |
| 231 | +wp_enqueue_style( 'jquery-ui' );*/ | |
| 217 | 232 | ?> |
| 218 | 233 | |
| 219 | 234 | <script type="text/html" id="tmpl-learn-press-modal-add-order-courses"> |
| 220 | 235 | <div id="learn-press-modal-add-order-courses" class="lp-modal-search" |