<?php

use \Essential_Addons_Elementor\Classes\Helper;

/**
 * Template Name: Preset 3
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
} // Exit if accessed directly
$order_items        = $order->get_items( apply_filters( 'woocommerce_purchase_order_item_types', 'line_item' ) );
$show_purchase_note = $order->has_status( apply_filters( 'woocommerce_purchase_note_order_statuses', array(
	'completed',
	'processing'
) ) );

$show_customer_details = is_user_logged_in() && $order->get_user_id() === get_current_user_id();
$downloads             = $order->get_downloadable_items();
$show_downloads        = $order->has_downloadable_item() && $order->is_download_permitted();
?>
<?php if ( $order->has_status( 'failed' ) ) :
	echo 'faild';
else:
	?>
    <div class="eael-thankyou-container">
        <div class="eael-thankyou-left">
			<?php if ( $settings['eael_show_thankyou_message'] === 'yes' ): ?>
                <div class="eael-thankyou-message">
					<?php if ( $settings['eael_show_thankyou_message_icon']['value'] !== '' ): ?>
                        <div class="eael-thankyou-message-icon"><?php \Elementor\Icons_Manager::render_icon( $settings['eael_show_thankyou_message_icon'], [
								'aria-hidden' => 'true',
								'class'       => 'eael-thankyou-icon'
							] ); ?></div>
					<?php endif; ?>
                    <div class="eael-thankyou-message-text-area">
                        <div class="eael-thankyou-text"><?php echo esc_html( $settings['eael_thankyou_text'] ); ?></div>
                        <div class="eael-thankyou-message-text"><?php echo wp_kses( $settings['eael_thankyou_message'], Helper::eael_allowed_tags() ); ?></div>
                    </div>
                </div>
			<?php endif; ?>

			<?php if ( $settings['eael_show_order_overview'] === 'yes' ): ?>
                <div class="eael-thankyou-order-overview">
					<?php if ( $settings['eael_show_order_overview_section_title'] === 'yes' ): ?>
                        <h2 class="eael-order-overview-title"><?php echo esc_html( $settings['eael_order_overview_section_title'] ) ?></h2>
					<?php endif; ?>
                    <ul class="woocommerce-order-overview order_details">
						<?php if ( $settings['eael_show_order_overview_number'] === 'yes' ): ?>
                            <li class="woocommerce-order-overview__order order">
                                <span class="woocommerce-order-overview-label"><?php echo esc_html( $settings['eael_order_overview_number_label'] ); ?></span>
                                <span class="woocommerce-order-overview-value"><?php echo $order->get_order_number(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
                            </li>
						<?php endif; ?>

						<?php if ( $settings['eael_show_order_overview_date'] === 'yes' ): ?>
                            <li class="woocommerce-order-overview__date date">
                                <span class="woocommerce-order-overview-label"><?php echo esc_html( $settings['eael_order_overview_date_label'] ); ?></span>
                                <span class="woocommerce-order-overview-value"><?php echo wc_format_datetime( $order->get_date_created(), $settings['eael_order_overview_date_format'] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
                            </li>
						<?php endif; ?>

						<?php if ( $settings['eael_show_order_overview_email'] === 'yes' && is_user_logged_in() && $order->get_user_id() === get_current_user_id() && $order->get_billing_email() ) : ?>
                            <li class="woocommerce-order-overview__email email">
                                <span class="woocommerce-order-overview-label"><?php echo esc_html( $settings['eael_order_overview_email_label'] ); ?></span>
                                <span class="woocommerce-order-overview-value"><?php echo $order->get_billing_email(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
                            </li>
						<?php endif; ?>

						<?php if ( $settings['eael_show_order_overview_total'] === 'yes' ): ?>
                            <li class="woocommerce-order-overview__total total">
                                <span class="woocommerce-order-overview-label"><?php echo esc_html( $settings['eael_order_overview_total_label'] ); ?></span>
                                <span class="woocommerce-order-overview-value"><?php echo $order->get_formatted_order_total(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
                            </li>
						<?php endif; ?>

						<?php if ( $settings['eael_show_order_overview_payment_method'] === 'yes' && $order->get_payment_method_title() ) : ?>
                            <li class="woocommerce-order-overview__payment-method method">
                                <span class="woocommerce-order-overview-label"><?php echo esc_html( $settings['eael_order_overview_payment_label'] ); ?></span>
                                <span class="woocommerce-order-overview-value"><?php echo wp_kses_post( $order->get_payment_method_title() ); ?></span>
                            </li>
						<?php endif; ?>

                    </ul>
                </div>
			<?php endif; ?>
            <div class="eael-thankyou-payment-extra-info">
	            <?php do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() ); ?>
            </div>
            <div class="eael-thankyou-billing-shipping eael-thankyou-billing-shipping-for-desktop">
				<?php if ( $settings['eael_show_order_billing'] === 'yes' ): ?>
                    <div class="eael-thankyou-billing">
						<?php
						if ( $settings['eael_show_billing_title'] === 'yes' ) {
							echo "<h2 class='eael-thankyou-billing-title'>" . esc_html( $settings['eael_order_billing_title'] ) . "</h2>";
						}
						?>
                        <div class="eael-thankyou-billing-address">
							<?php echo wp_kses_post( $order->get_formatted_billing_address( esc_html__( 'N/A', 'woocommerce' ) ) ); ?>
                        </div>

						<?php if ( $settings['eael_show_billing_cell_no'] === 'yes' && $order->get_billing_phone() ): ?>
                            <div class="eael-thankyou-phone">
								<?php
								if ( $settings['eael_show_billing_cell_label_type'] === 'icon' ) {
									\Elementor\Icons_Manager::render_icon( $settings['eael_show_billing_cell_label_icon'], [
										'aria-hidden' => 'true',
										'class'       => 'eael-thankyou-billing-cell-icon eael-thankyou-icon'
									] );
								} else {
									echo esc_html( $settings['eael_show_billing_cell_label'] );
								}
								echo esc_html( $order->get_billing_phone() );
								?>
                            </div>
						<?php endif; ?>

						<?php if ( $settings['eael_show_billing_email'] === 'yes' && $order->get_billing_email() ): ?>
                            <div class="eael-thankyou-email">
								<?php
								if ( $settings['eael_show_billing_email_label_type'] === 'icon' ) {
									\Elementor\Icons_Manager::render_icon( $settings['eael_show_billing_email_label_icon'], [
										'aria-hidden' => 'true',
										'class'       => 'eael-thankyou-billing-email-icon eael-thankyou-icon'
									] );
								} else {
									echo esc_html( $settings['eael_show_billing_email_label'] );
								}
								echo esc_html( $order->get_billing_email() );
								?>
                            </div>
						<?php endif; ?>
                    </div>
				<?php endif; ?>
				<?php if ( $settings['eael_show_order_shipping'] === 'yes' ): ?>
                    <div class="eael-thankyou-shipping">
						<?php
						if ( $settings['eael_show_shipping_title'] === 'yes' ) {
							echo "<h2 class='eael-thankyou-shipping-title'>" . esc_html( $settings['eael_order_shipping_title'] ) . "</h2>";
						}
						?>
                        <div class="eael-thankyou-shipping-address">
							<?php echo wp_kses_post( $order->get_formatted_shipping_address( esc_html__( 'N/A', 'woocommerce' ) ) ); ?>
                        </div>
                    </div>
				<?php endif; ?>
            </div>
        </div>
        <div class="eael-thankyou-right">

            <div class="eael-thankyou-order-details">

				<?php if ( $settings['eael_show_order_details'] === 'yes' ): ?>

                    <div class="eael-thankyou-order-items">
                        <table class="eael-thankyou-order-items-table">

							<?php if ( $settings['eael_show_order_table_heading'] === 'yes' ): ?>

                                <thead>
                                <tr>
                                    <th class="eael-thankyou-order-products"><?php echo esc_html( $settings['eael_order_table_product_label'] ); ?></th>
                                    <th class="eael-thankyou-order-totals"><?php echo esc_html( $settings['eael_order_table_total_label'] ); ?></th>
                                </tr>
                                </thead>

							<?php endif; ?>

                            <tbody>
							<?php
							foreach ( $order_items as $item_id => $item ) {
								$product = $item->get_product();
								?>
                                <tr class="eael-thankyou-order-item">

                                    <td class="eael-thankyou-order-item-details">
										<?php
										if ( $settings['eael_show_order_items_image'] === 'yes' ) {
											$image_url = wp_get_attachment_image_url( $product->get_image_id(), 'full' );
											echo '<img class="eael-thankyou-product-image" src="' . esc_url( $image_url ) . '" alt="' . esc_attr( $item->get_name() ) . '">';
										}
										echo "<div class='eael-thankyou-product-info'>";
										if ( $settings['eael_show_order_items_name'] === 'yes' ) {
											echo "<div class='eael-thankyou-product-name'>";
											$is_visible        = $product && $product->is_visible();
											$product_permalink = apply_filters( 'woocommerce_order_item_permalink', $is_visible ? $product->get_permalink( $item ) : '', $item, $order );

											echo wp_kses_post( apply_filters( 'woocommerce_order_item_name', $product_permalink ? sprintf( '<a href="%s">%s</a>', $product_permalink, $item->get_name() ) : $item->get_name(), $item, $is_visible ) );
											echo "</div>";
										}
										echo "<div class='eael-thankyou-product-summary'>";

										if ( $settings['eael_show_order_items_meta'] === 'yes' && $item->get_all_formatted_meta_data() ) {
											$hide_meta_label = empty( $settings['eael_show_order_items_meta_label'] ) || $settings['eael_show_order_items_meta_label'] != 'yes' ? 'hide-meta-label' : '';
											echo "<div class='eael-thankyou-product-meta " . esc_attr( $hide_meta_label ) . "'>";
											do_action( 'woocommerce_order_item_meta_start', $item_id, $item, $order, false );

											$meta_args = [
												'separator'    => ',</li><li>',
												'label_before' => '<span class="wc-item-meta-label">',
												'label_after'  => ':</span> '
											];

											wc_display_item_meta( $item, $meta_args ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

											do_action( 'woocommerce_order_item_meta_end', $item_id, $item, $order, false );
											echo "</div>";
										}

										if ( $settings['eael_show_order_items_qty'] === 'yes' ) {
											echo "<div class='eael-thankyou-product-qty'>";
											$qty          = $item->get_quantity();
											$refunded_qty = $order->get_qty_refunded_for_item( $item_id );

											if ( $refunded_qty ) {
												$qty_display = '<del>' . esc_html( $qty ) . '</del> <ins>' . esc_html( $qty - ( $refunded_qty * - 1 ) ) . '</ins>';
											} else {
												$qty_display = esc_html( $qty );
											}

											echo apply_filters( 'woocommerce_order_item_quantity_html', ' <span class="product-quantity">' . sprintf( 'Qty: %s', $qty_display ) . '</span>', $item ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
											echo "</div>";
										}
										echo "</div></div>";
										?>
                                    </td>

                                    <td class="eael-thankyou-order-item-total">
										<?php echo $order->get_formatted_line_subtotal( $item ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
                                    </td>

                                </tr>
								<?php
							}
							?>
                            </tbody>

                        </table>
                    </div>

				<?php endif; ?>

                <div class="eael-thankyou-order-summary">
					<?php if ( $settings['eael_show_order_summary'] === 'yes' ): ?>
                        <table class="eael-thankyou-order-summary-table">
							<?php
							foreach ( $order->get_order_item_totals() as $key => $total ) {
								$class = strtolower( str_replace( [ ' ', ':' ], [ '-', '' ], $total['label'] ) );
								?>
                                <tr class="eael-thankyou-order-summary-<?php echo esc_attr( $class ); ?>">
                                    <th scope="row"><?php echo esc_html( $total['label'] ); ?></th>
                                    <td><?php echo wp_kses_post( $total['value'] ); ?></td>
                                </tr>
								<?php
							}
							if ( $order->get_customer_note() ) : ?>
                                <tr class="eael-thankyou-order-summary-note">
                                    <th><?php esc_html_e( 'Note:', 'woocommerce' ); ?></th>
                                    <td><?php echo wp_kses_post( nl2br( wptexturize( $order->get_customer_note() ) ) ); ?></td>
                                </tr>
							<?php endif; ?>
                        </table>
					<?php endif; ?>
                </div>

            </div>
	        <?php if ( $show_downloads && isset( $settings['eael_show_order_downloads'] ) && $settings['eael_show_order_downloads'] === 'yes' ): ?>
                <div class="eael-thankyou-order-downloads eael-thankyou-for-mobile">
			        <?php if ( isset( $settings['eael_thankyou_show_downloads_title'] ) && $settings['eael_thankyou_show_downloads_title'] === 'yes' ): ?>
                        <h2 class="woocommerce-order-downloads__title"><?php echo esc_html( $settings['eael_thankyou_downloads_title'] ); ?></h2>
			        <?php endif; ?>
			        <?php
			        add_filter( 'woocommerce_account_downloads_columns', function ( $columns ) use ( $settings ) {
				        if ( isset( $settings['eael_thankyou_show_product_column'] ) && $settings['eael_thankyou_show_product_column'] === 'yes' ) {
					        $columns['download-product'] = $settings['eael_thankyou_product_column_label'];
				        } else {
					        unset( $columns['download-product'] );
				        }

				        if ( isset( $settings['eael_thankyou_show_download_remaining_column'] ) && $settings['eael_thankyou_show_download_remaining_column'] === 'yes' ) {
					        $columns['download-remaining'] = $settings['eael_thankyou_download_remaining_column_label'];
				        } else {
					        unset( $columns['download-remaining'] );
				        }

				        if ( isset( $settings['eael_thankyou_show_expires_column'] ) && $settings['eael_thankyou_show_expires_column'] === 'yes' ) {
					        $columns['download-expires'] = $settings['eael_thankyou_expires_column_label'];
				        } else {
					        unset( $columns['download-expires'] );
				        }

				        if ( isset( $settings['eael_thankyou_download_column'] ) && $settings['eael_thankyou_download_column'] === 'yes' ) {
					        $columns['download-file'] = $settings['eael_thankyou_download_column_label'];
				        } else {
					        unset( $columns['download-file'] );
				        }

				        return $columns;
			        } );
			        wc_get_template( 'order/order-downloads.php', [ 'downloads' => $downloads ] );
			        ?>
                </div>

	        <?php endif; ?>

            <div class="eael-thankyou-billing-shipping eael-thankyou-for-mobile">
				<?php if ( $settings['eael_show_order_billing'] === 'yes' ): ?>
                    <div class="eael-thankyou-billing">
						<?php
						if ( $settings['eael_show_billing_title'] === 'yes' ) {
							echo "<h2 class='eael-thankyou-billing-title'>" . esc_html( $settings['eael_order_billing_title'] ) . "</h2>";
						}
						?>
                        <div class="eael-thankyou-billing-address">
							<?php echo wp_kses_post( $order->get_formatted_billing_address( esc_html__( 'N/A', 'woocommerce' ) ) ); ?>
                        </div>

						<?php if ( $settings['eael_show_billing_cell_no'] === 'yes' && $order->get_billing_phone() ): ?>
                            <div class="eael-thankyou-phone">
								<?php
								if ( $settings['eael_show_billing_cell_label_type'] === 'icon' ) {
									\Elementor\Icons_Manager::render_icon( $settings['eael_show_billing_cell_label_icon'], [
										'aria-hidden' => 'true',
										'class'       => 'eael-thankyou-billing-cell-icon eael-thankyou-icon'
									] );
								} else {
									echo esc_html( $settings['eael_show_billing_cell_label'] );
								}
								echo esc_html( $order->get_billing_phone() );
								?>
                            </div>
						<?php endif; ?>

						<?php if ( $settings['eael_show_billing_email'] === 'yes' && $order->get_billing_email() ): ?>
                            <div class="eael-thankyou-email">
								<?php
								if ( $settings['eael_show_billing_email_label_type'] === 'icon' ) {
									\Elementor\Icons_Manager::render_icon( $settings['eael_show_billing_email_label_icon'], [
										'aria-hidden' => 'true',
										'class'       => 'eael-thankyou-billing-email-icon eael-thankyou-icon'
									] );
								} else {
									echo esc_html( $settings['eael_show_billing_email_label'] );
								}
								echo esc_html( $order->get_billing_email() );
								?>
                            </div>
						<?php endif; ?>
                    </div>
				<?php endif; ?>
				<?php if ( $settings['eael_show_order_shipping'] === 'yes' ): ?>
                    <div class="eael-thankyou-shipping">
						<?php
						if ( $settings['eael_show_shipping_title'] === 'yes' ) {
							echo "<h2 class='eael-thankyou-shipping-title'>" . esc_html( $settings['eael_order_shipping_title'] ) . "</h2>";
						}
						?>
                        <div class="eael-thankyou-shipping-address">
							<?php echo wp_kses_post( $order->get_formatted_shipping_address( esc_html__( 'N/A', 'woocommerce' ) ) ); ?>
                        </div>
                    </div>
				<?php endif; ?>
            </div>
        </div>
    </div>
	<?php if ( $show_downloads && isset( $settings['eael_show_order_downloads'] ) && $settings['eael_show_order_downloads'] === 'yes' ): ?>
    <div class="eael-thankyou-order-downloads eael-thankyou-for-desktop">
		<?php if ( isset( $settings['eael_thankyou_show_downloads_title'] ) && $settings['eael_thankyou_show_downloads_title'] === 'yes' ): ?>
            <h2 class="woocommerce-order-downloads__title"><?php echo esc_html( $settings['eael_thankyou_downloads_title'] ); ?></h2>
		<?php endif; ?>
		<?php
		add_filter( 'woocommerce_account_downloads_columns', function ( $columns ) use ( $settings ) {
			if ( isset( $settings['eael_thankyou_show_product_column'] ) && $settings['eael_thankyou_show_product_column'] === 'yes' ) {
				$columns['download-product'] = $settings['eael_thankyou_product_column_label'];
			} else {
				unset( $columns['download-product'] );
			}

			if ( isset( $settings['eael_thankyou_show_download_remaining_column'] ) && $settings['eael_thankyou_show_download_remaining_column'] === 'yes' ) {
				$columns['download-remaining'] = $settings['eael_thankyou_download_remaining_column_label'];
			} else {
				unset( $columns['download-remaining'] );
			}

			if ( isset( $settings['eael_thankyou_show_expires_column'] ) && $settings['eael_thankyou_show_expires_column'] === 'yes' ) {
				$columns['download-expires'] = $settings['eael_thankyou_expires_column_label'];
			} else {
				unset( $columns['download-expires'] );
			}

			if ( isset( $settings['eael_thankyou_download_column'] ) && $settings['eael_thankyou_download_column'] === 'yes' ) {
				$columns['download-file'] = $settings['eael_thankyou_download_column_label'];
			} else {
				unset( $columns['download-file'] );
			}

			return $columns;
		} );
		wc_get_template( 'order/order-downloads.php', [ 'downloads' => $downloads ] );
		?>
    </div>

<?php endif; ?>
<?php
endif;