<?php
/**
 * Step 2 - Field Mapping for Export (similar to import step 5).
 *
 * @package PrimeLink
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit;
}

$export_id = isset( $_GET['export_id'] ) ? absint( $_GET['export_id'] ) : 0;

// Define available WooCommerce product fields for export
$wc_fields = array(
    'id'                => __( 'Product ID', 'primelink' ),
    'title'             => __( 'Product Title', 'primelink' ),
    'sku'               => __( 'SKU', 'primelink' ),
    'price'             => __( 'Regular Price', 'primelink' ),
    'sale_price'        => __( 'Sale Price', 'primelink' ),
    'stock_quantity'    => __( 'Stock Quantity', 'primelink' ),
    'stock_status'      => __( 'Stock Status', 'primelink' ),
    'manage_stock'      => __( 'Manage Stock', 'primelink' ),
    'description'       => __( 'Description', 'primelink' ),
    'short_description' => __( 'Short Description', 'primelink' ),
    'categories'        => __( 'Categories', 'primelink' ),
    'tags'              => __( 'Tags', 'primelink' ),
    'featured_image'    => __( 'Featured Image URL', 'primelink' ),
    'gallery_images'    => __( 'Gallery Image URLs', 'primelink' ),
    'weight'            => __( 'Weight', 'primelink' ),
    'length'            => __( 'Length', 'primelink' ),
    'width'             => __( 'Width', 'primelink' ),
    'height'            => __( 'Height', 'primelink' ),
    'product_type'      => __( 'Product Type', 'primelink' ),
    'status'            => __( 'Status', 'primelink' ),
    'date_created'      => __( 'Date Created', 'primelink' ),
    'date_modified'     => __( 'Date Modified', 'primelink' ),
);

use PrimeLink\Helpers\TemplateHelper;
?>
<div class="mt_primelink-summary-eyebrow"><?php esc_html_e( 'Step 2 · Mapping', 'primelink' ); ?></div>
<h2><?php esc_html_e( 'Field Mapping Studio', 'primelink' ); ?></h2>
<input type="hidden" id="mt-primelink-step" value="2">

<?php
// Include reusable templates section
include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/templates-section.php';

// Include mapping shell (with alias card)
$alias_hint = __( 'Add custom synonyms for export columns (e.g. Product Name: title, name, product_title).', 'primelink' );
include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/mapping-shell.php';
?>

            <?php
            // Include export columns header (with helper row)
            include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/export-columns-header.php';
            ?>

                    <!-- Basic Fields -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Basic Fields', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'id'          => __( 'Product ID', 'primelink' ),
                                'title'       => __( 'Product Title', 'primelink' ),
                                'sku'         => __( 'SKU', 'primelink' ),
                                'price'       => __( 'Regular Price', 'primelink' ),
                                'sale_price'  => __( 'Sale Price', 'primelink' ),
                                'status'      => __( 'Status', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Inventory -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Inventory', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'stock_quantity' => __( 'Stock Quantity', 'primelink' ),
                                'stock_status'   => __( 'Stock Status', 'primelink' ),
                                'manage_stock'   => __( 'Manage Stock', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Descriptions -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Descriptions', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'description'       => __( 'Description', 'primelink' ),
                                'short_description'  => __( 'Short Description', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Images -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Images', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'featured_image' => __( 'Featured Image URL', 'primelink' ),
                                'gallery_images' => __( 'Gallery Image URLs', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Shipping -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Shipping', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'weight' => __( 'Weight', 'primelink' ),
                                'length' => __( 'Length', 'primelink' ),
                                'width'  => __( 'Width', 'primelink' ),
                                'height' => __( 'Height', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Taxonomies -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Taxonomies', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'product_type' => __( 'Product Type', 'primelink' ),
                                'categories'   => __( 'Categories', 'primelink' ),
                                'tags'         => __( 'Tags', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Dates -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Dates', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <?php TemplateHelper::render_export_slots( array(
                                'date_created'  => __( 'Date Created', 'primelink' ),
                                'date_modified' => __( 'Date Modified', 'primelink' ),
                            ) ); ?>
                        </div>
                    </details>

                    <!-- Custom Export Columns -->
                    <details class="mt_primelink-accordion">
                        <summary class="mt_primelink-accordion-title"><?php esc_html_e( 'Custom Columns', 'primelink' ); ?></summary>
                        <div class="mt_primelink-accordion-body">
                            <div id="mt_primelink-custom-export-columns-wrap"></div>
                            <button type="button" class="button" id="mt_primelink-add-custom-export-column"><?php esc_html_e( 'Add Custom Column', 'primelink' ); ?></button>
                            <p class="description"><?php esc_html_e( 'Create custom export columns with custom headers.', 'primelink' ); ?></p>
                        </div>
                    </details>

                    <?php
                    // Shared integrations mapping (Yoast, ACF, WPML, Polylang).
                    include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/integrations-mapping.php';
                    ?>
                </div>
            </section>

            <!-- Preview -->
            <div id="mt-primelink-export-preview"
                 class="mt_primelink-preview-card"
                 data-export-id="<?php echo esc_attr( $export_id ); ?>">
            </div>
        </main>
    </div>
</div>

<?php
// Include reusable row filters
include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/row-filters.php';
?>

<?php
// Include reusable map editor partial
include MT_PRIMELINK_PATH . 'templates/admin/exports/partials/map-editor.php';
?>
