// Language Translations for Purchase Module
const translations = {
    en: {
        // Header
        posTitle: "POS - Purchase",
        searchPlaceholder: "Supplier / Mobile",
        supplierLedger: "Supplier Ledger",
        newSupplier: "New Supplier",
        previousBill: "Previous Bill",
        previous: "Prev",
        nextBill: "Next Bill",
        next: "Next",
        deleteBill: "Delete Bill",
        
        // Product Entry
        productEntry: "Product Entry",
        code: "Code",
        price: "Price",
        quantity: "Quantity",
        productName: "Product Name",
        discount: "Discount",
        afterDisc: "After Disc",
        total: "Total",
        add: "Add",
        
        // Price Types
        purchasePrice: "Purchase",
        shopRate: "Shop",
        wholesaleRate: "Wholesale",
        mrp: "MRP",
        
        // Supplier Balance
        supplierBalance: "Supplier Balance",
        
        // Quick Actions
        home: "Home",
        clear: "Clear",
        new: "New",
        
        // Button Titles & Labels
        expenses: "Expenses",
        shipping: "Shipping",
        ledger: "Ledger",
        settings: "Settings",
        points: "Points",
        selectSupplier: "Select Supplier",
        codePlaceholder: "CODE",
        pricePlaceholder: "Price",
        qtyPlaceholder: "Qty",
        addButton: "Add",
        holdBill: "Hold Bill",
        viewHoldBills: "View Hold Bills",
        showDetails: "Show Details",
        hideDetails: "Hide Details",
        
        // Cart
        products: "Products",
        sNo: "#",
        product: "Product",
        amount: "Amount",
        action: "Action",
        emptyCart: "Cart is Empty",
        
        // Payment Section
        cooli: "Transport amt",
        disc: "Disc",
        paymentMethod: "Payment Method",
        paymentMethods: "Payment Methods",
        addPaymentMethod: "Add Payment Method",
        cash: "Cash",
        upi: "UPI",
        card: "Card",
        bank: "Bank Transfer",
        credit: "Credit",
        notes: "Notes",
        notesPlaceholder: "Notes",
        
        // Totals
        subTotal: "Sub Total:",
        cooliLabel: "Transport amt:",
        roundOff: "Round Off:",
        billDiscount: "Bill Discount:",
        billAmount: "Bill Amount:",
        oldBalance: "Old Balance:",
        outstandingAmount: "Outstanding Amount:",
        payment: "Payment:",
        remaining: "Remaining:",
        saveAndPrint: "Save & Print (F10)",
        updateAndPrint: "Update & Print (F10)",
        
        // Loyalty Points & Discounts
        loyaltyPoints: "Supplier Points",
        loyaltySettings: "Supplier Points Settings",
        redeemPoints: "Redeem Points",
        pointsDiscount: "Points Discount",
        availablePoints: "Available Points",
        pointsToRedeem: "Points to Redeem",
        discountAmount: "Discount Amount",
        pointsUsed: "Points Used",
        pointsRemaining: "Remaining",
        applyDiscount: "Apply Discount",
        currentRate: "Current Rate:",
        minimumPoints: "Minimum:",
        pointsEarned: "Points Earned:",
        pointsRedeemed: "Points Redeemed:",
        newBalance: "New Balance:",
        supplierLoyaltyManagement: "Supplier Points Management",
        supplier: "Supplier:",
        currentBalance: "Current Balance",
        totalEarned: "Total Earned",
        totalRedeemed: "Total Redeemed",
        transactions: "Transactions",
        recentTransactions: "Recent Transactions",
        addPoints: "Add Points",
        deductPoints: "Deduct Points",
        transactionType: "Transaction Type",
        earnedType: "Earned",
        redeemedType: "Redeemed",
        manualAdjustment: "Manual Adjustment",
        reason: "Reason",
        saveSupplier: "Save Supplier",
        redemptionValue: "Redemption Value",
        adjustPoints: "Adjust Points",
        transaction: "Transaction",
        value: "Value",
        enterNotes: "Enter notes...",
        submit: "Submit",
        type: "Type",
        dateLabel: "Date",
        notesLabel: "Notes",
        multipleProductsFound: "Multiple Products Found - Please Select One",
        multipleProductsInfo: "Multiple products share this barcode/code. Please select the correct product.",
        selectProduct: "Select",
        
        // Loyalty Settings Modal
        loyaltySettingsTitle: "Supplier Points Settings",
        loyaltySettingsInfo: "Configure how suppliers earn and redeem points",
        pointsPer100: "Points Per ₹100 Purchase",
        pointsPer100Help: "How many points supplier earns for every ₹100 purchase",
        redemptionRate: "Value of 1 Point (in ₹)",
        redemptionRateHelp: "Monetary value of 1 point when redeemed",
        minRedemption: "Minimum Points for Redemption",
        minRedemptionHelp: "Minimum points required before supplier can redeem",
        pointsExpiry: "Points Expiry (Days)",
        pointsExpiryHelp: "Days until points expire (0 = never expire)",
        settingsExample: "Example:",
        purchase: "Purchase:",
        
        // Modal
        newSupplierTitle: "New Supplier",
        supplierNameLabel: "Supplier Name",
        phoneLabel: "Phone Number",
        contactPerson: "Contact Person",
        email: "Email",
        supplierType: "Supplier Type",
        individual: "Individual",
        business: "Business",
        retailer: "Retailer",
        wholesaler: "Wholesaler",
        addressLabel: "Address",
        city: "City",
        state: "State",
        pincode: "Pincode",
        gstNumber: "GST Number",
        panNumber: "PAN Number",
        creditLimit: "Credit Limit",
        creditDays: "Credit Days",
        openingBalance: "Opening Balance",
        close: "Close",
        save: "Save",
        required: "*",
        
        // Alerts & Messages
        selectSupplier: "Please select a supplier!",
        productNotFound: "Product not found!",
        enterProductCode: "Please enter product code!",
        enterValidPrice: "Please enter valid price!",
        enterValidQuantity: "Please enter valid quantity!",
        confirmClearCart: "Are you sure you want to clear the cart?",
        confirmNewPurchase: "Start a new purchase? Current cart will be cleared.",
        noItemsInCart: "No items in cart!",
        enterSupplierName: "Please enter supplier name!",
        enterPhoneNumber: "Please enter phone number!",
        deleteItem: "Delete this item?",
        purchaseSaved: "Purchase saved successfully!\nInvoice Number: ",
        purchaseUpdated: "Purchase updated successfully!\nInvoice Number: ",
        printBill: "Do you want to print the bill?",
        createNewBill: "Create a new bill?",
        billUpdated: "Bill updated - you can continue editing",
        error: "Error: ",
        serverError: "Server error occurred!\n",
        billNotFound: "Bill not found!",
        billLoadedForEdit: "Bill loaded for editing: ",
        supplierAddedSuccessfully: "Supplier added successfully!",
        confirmDeleteBill: "Delete this bill?\n\nInvoice Number: ",
        cannotUndo: "\n\nThis action cannot be undone!",
        billDeletedSuccessfully: "Bill deleted successfully!\n\nInvoice Number: ",
        selectBillToDelete: "Please select a bill to delete!",
        quantityUpdated: "Quantity updated to: ",
        addedToCart: "Added to cart",
        
        // Product Discount Modal
        editProductDiscount: "Edit Product Discount",
        discountType: "Discount Type",
        cancel: "Cancel",
        removeDisc: "Remove Discount",
        applyDisc: "Apply Discount",
        discountApplied: "Discount applied successfully!",
        discountRemoved: "Discount removed",
        quickEditItem: "Quick Edit Item",
        enterPoints: "Enter points",
        transportDetails: "Transport Details",
        transportName: "Transport Name",
        vehicleNumber: "Vehicle Number",
        enterTransportName: "Enter transport company name",
        enterVehicleNumber: "e.g., TN01AB1234",
        transportAmount: "Transport Amount",
        gstPercentage: "GST Percentage (%)",
        gstType: "GST Type",
        inclusive: "Inclusive",
        exclusive: "Exclusive",
        calculation: "Calculation",
        baseAmount: "Base Amount",
        gstAmount: "GST Amount",
        totalAmount: "Total Amount",
        reset: "Reset",
        apply: "Apply",
        quickActions: "Quick Actions",
        goToDashboard: "Go to supplier management dashboard",
        saveCurrentBill: "Save current bill for later processing",
        viewResumeBills: "View and resume previously held bills",
        clearCart: "Clear Cart",
        removeAllItems: "Remove all items from cart",
        newPurchase: "New Purchase",
        startFreshBill: "Start a fresh bill",
        rate: "Rate",
        qty: "Qty",
        productNameLabel: "Product Name",
        codeLabel: "Code",
        subtotalLabel: "Subtotal",
        afterDiscountLabel: "After Discount",
        taxAppliedNote: "Tax will be applied on this amount",
        deleteLabel: "Delete",
        saveLabel: "Save",
        percentage: "Percentage",
        amountLabel: "Amount",
        
        // Invoice Print
        invoiceTitle: "PURCHASE INVOICE",
        supplierDetails: "Supplier Details",
        name: "Name:",
        supplierCode: "Code:",
        phone: "Phone:",
        address: "Address:",
        billDetails: "Bill Details",
        invoiceNo: "Invoice No:",
        date: "Date:",
        printButton: "🖨️ Print",
        closeButton: "❌ Close",
        thankYou: "Thank You!",
        
        // Products Page
        itemsOverview: "Items Overview",
        browseInventory: "Browse and manage inventory items for purchase",
        pos: "POS",
        manageItems: "Manage Items",
        addNewItem: "Add New Item",
        totalItems: "Total Items",
        active: "Active",
        inactive: "Inactive",
        lowStock: "Low Stock",
        searchItems: "Search items by code, name, brand, or category...",
        brand: "Brand:",
        category: "Category:",
        unit: "Unit:",
        stock: "Stock:",
        low: "Low",
        hsn: "HSN:",
        purchasePrice: "Purchase Price",
        mrp: "MRP",
        edit: "Edit",
        noItemsFound: "No items found",
        itemsManaged: "Items are managed in the Items module.",
        addFirstItem: "Add your first item",
        deactivate: "Deactivate",
        activate: "Activate"
    },
    ta: {
        // Header
        posTitle: "POS - கொள்முதல்",
        searchPlaceholder: "சப்ளையர் / மொபைல்",
        supplierLedger: "சப்ளையர் லெட்ஜர்",
        newSupplier: "புதிய சப்ளையர்",
        previousBill: "முந்தைய பில்",
        previous: "முன்",
        nextBill: "அடுத்த பில்",
        next: "பின்",
        deleteBill: "பில் நீக்கு",
        
        // Product Entry
        productEntry: "பொருள் நுழைவு",
        code: "குறியீடு",
        price: "விலை",
        quantity: "அளவு",
        productName: "பொருள் பெயர்",
        discount: "தள்ளுபடி",
        afterDisc: "பின் தள்ளுபடி",
        total: "மொத்தம்",
        add: "சேர்க்க",
        
        // Price Types
        purchasePrice: "கொள்முதல்",
        shopRate: "கடை விலை",
        wholesaleRate: "மொத்த விலை",
        mrp: "MRP",
        
        // Supplier Balance
        supplierBalance: "சப்ளையர் பாக்கி",
        
        // Quick Actions
        home: "Home",
        clear: "Clear",
        new: "New",
        
        // Button Titles & Labels
        expenses: "செலவுகள்",
        shipping: "அனுப்புதல்",
        ledger: "லெட்ஜர்",
        settings: "அமைப்புகள்",
        points: "பாயின்ட்ஸ்",
        selectSupplier: "சப்ளையர் தேர்வு",
        codePlaceholder: "குறியீடு",
        pricePlaceholder: "விலை",
        qtyPlaceholder: "அளவு",
        addButton: "சேர்க்க",
        holdBill: "பில் ஹோல்ட்",
        viewHoldBills: "ஹோல்ட் பில்கள் பார்க்க",
        showDetails: "விவரங்கள் காட்டு",
        hideDetails: "விவரங்கள் மறை",
        
        // Cart
        products: "பொருட்கள்",
        sNo: "#",
        product: "பொருள்",
        amount: "மொத்தம்",
        action: "செயல்",
        emptyCart: "வண்டி காலியாக உள்ளது",
        
        // Payment Section
        cooli: "கூலி தொகை",
        disc: "தள்ளுபடி",
        paymentMethod: "பணம் முறை",
        paymentMethods: "பணம் முறைகள்",
        addPaymentMethod: "பணம் முறை சேர்க்க",
        cash: "பணம்",
        upi: "UPI",
        card: "அட்டை",
        bank: "வங்கி",
        credit: "கடன்",
        notes: "குறிப்பு",
        notesPlaceholder: "குறிப்புகள்",
        
        // Totals
        subTotal: "உட்தொகை:",
        cooliLabel: "கூலி தொகை:",
        roundOff: "ரவுண்ட் ஆஃப்:",
        billDiscount: "பில் தள்ளுபடி:",
        billAmount: "பில் தொகை:",
        oldBalance: "பழைய பாக்கி:",
        outstandingAmount: "மொத்த நிலுவை:",
        payment: "வரவு:",
        remaining: "மீதம்:",
        saveAndPrint: "சேமி & அச்சிடு (F10)",
        updateAndPrint: "புதுப்பி & அச்சிடு (F10)",
        
        // Loyalty Points & Discounts
        loyaltyPoints: "சப்ளையர் பாயின்ட்ஸ்",
        loyaltySettings: "சப்ளையர் பாயின்ட்ஸ் அமைப்புகள்",
        redeemPoints: "பாயின்ட்ஸ் பயன்படுத்து",
        pointsDiscount: "பாயின்ட்ஸ் தள்ளுபடி",
        availablePoints: "கிடைக்கும் பாயின்ட்ஸ்",
        pointsToRedeem: "பயன்படுத்த பாயின்ட்ஸ்",
        discountAmount: "தள்ளுபடி தொகை",
        pointsUsed: "பயன்படுத்தப்பட்டது",
        pointsRemaining: "மீதம்",
        applyDiscount: "தள்ளுபடி பயன்படுத்து",
        currentRate: "தற்போதைய விலை:",
        minimumPoints: "குறைந்தபட்சம்:",
        pointsEarned: "பாயின்ட்ஸ் கிடைத்தது:",
        pointsRedeemed: "பாயின்ட்ஸ் பயன்படுத்தியது:",
        newBalance: "புதிய இருப்பு:",
        supplierLoyaltyManagement: "சப்ளையர் பாயின்ட்ஸ் மேலாண்மை",
        supplier: "சப்ளையர்:",
        currentBalance: "தற்போதைய இருப்பு",
        totalEarned: "மொத்தம் சம்பாதித்தது",
        totalRedeemed: "மொத்தம் பயன்படுத்தியது",
        transactions: "பரிவர்த்தனைகள்",
        recentTransactions: "சமீபத்திய பரிவர்த்தனைகள்",
        addPoints: "பாயின்ட்ஸ் சேர்க்க",
        deductPoints: "பாயின்ட்ஸ் குறைக்க",
        transactionType: "பரிவர்த்தனை வகை",
        earnedType: "சம்பாதித்தது",
        redeemedType: "பயன்படுத்தியது",
        manualAdjustment: "கையால் சரிசெய்தல்",
        reason: "காரணம்",
        saveSupplier: "சப்ளையர் சேமி",
        redemptionValue: "மீட்பு மதிப்பு",
        adjustPoints: "பாயின்ட்ஸ் சரிசெய்",
        transaction: "பரிவர்த்தனை",
        value: "மதிப்பு",
        enterNotes: "குறிப்புகள் உள்ளிடவும்...",
        submit: "சமர்ப்பிக்க",
        type: "வகை",
        dateLabel: "தேதி",
        notesLabel: "குறிப்புகள்",
        multipleProductsFound: "பல பொருட்கள் கண்டறியப்பட்டன - ஒன்றை தேர்வு செய்யவும்",
        multipleProductsInfo: "பல பொருட்கள் இந்த பார்கோடு/குறியீட்டைப் பகிர்கின்றன. சரியான பொருளைத் தேர்ந்தெடுக்கவும்.",
        selectProduct: "தேர்வு",
        
        // Loyalty Settings Modal
        loyaltySettingsTitle: "சப்ளையர் பாயின்ட்ஸ் அமைப்புகள்",
        loyaltySettingsInfo: "சப்ளையர்கள் பாயின்ட்ஸ் சம்பாதிப்பது மற்றும் பயன்படுத்துவதை கட்டமைக்கவும்",
        pointsPer100: "₹100 கொள்முதலுக்கு பாயின்ட்ஸ்",
        pointsPer100Help: "₹100 கொள்முதல் செய்தால் எத்தனை பாயின்ட்ஸ் கிடைக்கும்",
        redemptionRate: "1 பாயின்ட் = ₹",
        redemptionRateHelp: "பயன்படுத்தும்போது 1 பாயின்ட்டின் மதிப்பு",
        minRedemption: "குறைந்தபட்ச பாயின்ட்ஸ்",
        minRedemptionHelp: "பயன்படுத்த தேவையான குறைந்தபட்ச பாயின்ட்ஸ்",
        pointsExpiry: "பாயின்ட்ஸ் காலாவதி (நாட்கள்)",
        pointsExpiryHelp: "பாயின்ட்ஸ் காலாவதியாகும் நாட்கள் (0 = ஒருபோதும் இல்லை)",
        settingsExample: "உதாரணம்:",
        purchase: "கொள்முதல்:",
        
        // Modal
        newSupplierTitle: "புதிய சப்ளையர்",
        supplierNameLabel: "சப்ளையர் பெயர்",
        phoneLabel: "தொலைபேசி எண்",
        contactPerson: "தொடர்பு நபர்",
        email: "மின்னஞ்சல்",
        supplierType: "சப்ளையர் வகை",
        individual: "தனிநபர்",
        business: "வணிகம்",
        retailer: "சில்லறை விற்பனையாளர்",
        wholesaler: "மொத்த விற்பனையாளர்",
        addressLabel: "முகவரி",
        city: "நகரம்",
        state: "மாநிலம்",
        pincode: "அஞ்சல் குறியீடு",
        gstNumber: "GST எண்",
        panNumber: "PAN எண்",
        creditLimit: "கடன் வரம்பு",
        creditDays: "கடன் நாட்கள்",
        openingBalance: "தொடக்க இருப்பு",
        close: "மூடு",
        save: "சேமி",
        required: "*",
        
        // Alerts & Messages
        selectSupplier: "சப்ளையர் தேர்வு செய்யவும்!",
        productNotFound: "பொருள் கிடைக்கவில்லை!",
        enterProductCode: "பொருள் குறியீடு உள்ளிடவும்!",
        enterValidPrice: "சரியான விலை உள்ளிடவும்!",
        enterValidQuantity: "சரியான அளவு உள்ளிடவும்!",
        confirmClearCart: "வண்டியை காலி செய்ய விரும்புகிறீர்களா?",
        confirmNewPurchase: "புதிய கொள்முதலை தொடங்க விரும்புகிறீர்களா? தற்போதைய வண்டி காலியாகும்.",
        noItemsInCart: "வண்டியில் பொருட்கள் இல்லை!",
        enterSupplierName: "சப்ளையர் பெயர் உள்ளிடவும்!",
        enterPhoneNumber: "தொலைபேசி எண் உள்ளிடவும்!",
        deleteItem: "இந்த பொருளை நீக்க விரும்புகிறீர்களா?",
        purchaseSaved: "கொள்முதல் வெற்றிகரமாக சேமிக்கப்பட்டது!\nபில் எண்: ",
        purchaseUpdated: "கொள்முதல் வெற்றிகரமாக புதுப்பிக்கப்பட்டது!\nபில் எண்: ",
        printBill: "பில் அச்சிட விரும்புகிறீர்களா?",
        createNewBill: "புதிய பில் உருவாக்க விரும்புகிறீர்களா?",
        billUpdated: "பில் புதுப்பிக்கப்பட்டது - தொடர்ந்து திருத்தலாம்",
        error: "பிழை: ",
        serverError: "சேவையகம் பிழை ஏற்பட்டது!\n",
        billNotFound: "பில் கிடைக்கவில்லை!",
        billLoadedForEdit: "பில் திருத்தத்திற்காக ஏற்றப்பட்டது: ",
        supplierAddedSuccessfully: "சப்ளையர் வெற்றிகரமாக சேர்க்கப்பட்டது!",
        confirmDeleteBill: "இந்த பில்லை நீக்க விரும்புகிறீர்களா?\n\nபில் எண்: ",
        cannotUndo: "\n\nஇந்த செயல்பாட்டை மாற்ற முடியாது!",
        billDeletedSuccessfully: "பில் வெற்றிகரமாக நீக்கப்பட்டது!\n\nபில் எண்: ",
        selectBillToDelete: "நீக்குவதற்கு பில் தேர்வு செய்யவும்!",
        quantityUpdated: "அளவு புதுப்பிக்கப்பட்டது: ",
        addedToCart: "வண்டியில் சேர்க்கப்பட்டது",
        
        // Product Discount Modal
        editProductDiscount: "பொருள் தள்ளுபடி திருத்து",
        discountType: "தள்ளுபடி வகை",
        cancel: "ரத்து",
        removeDisc: "தள்ளுபடி நீக்கு",
        applyDisc: "தள்ளுபடி பயன்படுத்து",
        discountApplied: "தள்ளுபடி வெற்றிகரமாக பயன்படுத்தப்பட்டது!",
        discountRemoved: "தள்ளுபடி நீக்கப்பட்டது",
        quickEditItem: "விரைவு திருத்தம்",
        enterPoints: "பாயின்ட்ஸ் உள்ளிடவும்",
        transportDetails: "போக்குவரத்து விவரங்கள்",
        transportName: "போக்குவரத்து பெயர்",
        vehicleNumber: "வாகன எண்",
        enterTransportName: "போக்குவரத்து நிறுவனம் உள்ளிடவும்",
        enterVehicleNumber: "எ.கா., TN01AB1234",
        transportAmount: "போக்குவரத்து தொகை",
        gstPercentage: "GST சதவீதம் (%)",
        gstType: "GST வகை",
        inclusive: "உள்ளடக்கம்",
        exclusive: "பிரத்தியேகம்",
        calculation: "கணக்கீடு",
        baseAmount: "அடிப்படை தொகை",
        gstAmount: "GST தொகை",
        totalAmount: "மொத்த தொகை",
        reset: "மீட்டமை",
        apply: "பயன்படுத்து",
        quickActions: "விரைவு செயல்கள்",
        goToDashboard: "சப்ளையர் மேலாண்மை டாஷ்போர்டுக்கு செல்லவும்",
        saveCurrentBill: "தற்போதைய பில்லை பின்னர் பதிவு செய்யவும்",
        viewResumeBills: "முன்பு ஹோல்ட் செய்த பில்களை பார்க்கவும்",
        clearCart: "வண்டி காலி",
        removeAllItems: "வண்டியிலிருந்து அனைத்து பொருட்களையும் நீக்கவும்",
        newPurchase: "புதிய கொள்முதல்",
        startFreshBill: "புதிய பில் தொடங்கவும்",
        rate: "விலை",
        qty: "அளவு",
        productNameLabel: "பொருள் பெயர்",
        codeLabel: "குறியீடு",
        subtotalLabel: "உட்தொகை",
        afterDiscountLabel: "தள்ளுபடிக்கு பின்",
        taxAppliedNote: "இந்த தொகையில் வரி பயன்படுத்தப்படும்",
        deleteLabel: "நீக்கு",
        saveLabel: "சேமி",
        percentage: "சதவீதம்",
        amountLabel: "தொகை",
        
        // Invoice Print
        invoiceTitle: "கொள்முதல் பில்",
        supplierDetails: "சப்ளையர் விவரம்",
        name: "பெயர்:",
        supplierCode: "குறியீடு:",
        phone: "தொலைபேசி:",
        address: "முகவரி:",
        billDetails: "பில் விவரம்",
        invoiceNo: "பில் எண்:",
        date: "தேதி:",
        printButton: "🖨️ அச்சிடு",
        closeButton: "❌ மூடு",
        thankYou: "நன்றி!",
        
        // Products Page
        itemsOverview: "பொருட்கள் மேலோட்டம்",
        browseInventory: "கொள்முதலுக்கான இருப்பு பொருட்களை உலாவவும் மற்றும் நிர்வகிக்கவும்",
        pos: "POS",
        manageItems: "பொருட்களை நிர்வகி",
        addNewItem: "புதிய பொருள் சேர்க்க",
        totalItems: "மொத்த பொருட்கள்",
        active: "செயலில்",
        inactive: "செயலற்றது",
        lowStock: "குறைந்த இருப்பு",
        searchItems: "குறியீடு, பெயர், பிராண்ட் அல்லது வகையின்படி பொருட்களைத் தேடவும்...",
        brand: "பிராண்ட்:",
        category: "வகை:",
        unit: "அலகு:",
        stock: "இருப்பு:",
        low: "குறைவு",
        hsn: "HSN:",
        purchasePrice: "கொள்முதல் விலை",
        mrp: "MRP",
        edit: "திருத்து",
        noItemsFound: "பொருட்கள் கிடைக்கவில்லை",
        itemsManaged: "பொருட்கள் Items தொகுதியில் நிர்வகிக்கப்படுகின்றன.",
        addFirstItem: "உங்கள் முதல் பொருளைச் சேர்க்கவும்",
        deactivate: "செயலிழக்கச்செய்",
        activate: "செயல்படுத்து"
    }
};

// Current language (default: English)
let currentLang = 'en';

// Get translation
function t(key) {
    return translations[currentLang][key] || key;
}

// Toggle language
function toggleLanguage() {
    currentLang = currentLang === 'en' ? 'ta' : 'en';
    
    // Save to database
    if (typeof savePOSSetting === 'function') {
        savePOSSetting('language', currentLang, function(success, response) {
            if (success) {
                console.log('Language preference saved to database:', currentLang);
            } else {
                console.error('Failed to save language preference:', response);
                // Fallback to localStorage if database save fails
                localStorage.setItem('purchaseLanguage', currentLang);
            }
        });
    } else {
        // Fallback to localStorage if POS settings not available
        localStorage.setItem('purchaseLanguage', currentLang);
    }
    
    updatePageLanguage();
}

// Load saved language preference
function loadLanguagePreference() {
    // Try to load from database first
    if (typeof getPOSSetting === 'function') {
        getPOSSetting('language', function(success, value) {
            if (success && value) {
                currentLang = value;
                console.log('Language loaded from database:', currentLang);
            } else {
                // Fallback to localStorage
                const saved = localStorage.getItem('purchaseLanguage');
                if (saved) {
                    currentLang = saved;
                    // Migrate localStorage to database
                    if (typeof savePOSSetting === 'function') {
                        savePOSSetting('language', currentLang);
                    }
                }
            }
            updatePageLanguage();
        });
    } else {
        // Fallback to localStorage if POS settings not available
        const saved = localStorage.getItem('purchaseLanguage');
        if (saved) {
            currentLang = saved;
        }
        updatePageLanguage();
    }
}

// Update page language
function updatePageLanguage() {
    // Update all elements with data-translate attribute
    $('[data-translate]').each(function() {
        const key = $(this).data('translate');
        const translation = t(key);
        
        if ($(this).is('input, textarea')) {
            if ($(this).attr('placeholder')) {
                $(this).attr('placeholder', translation);
            } else {
                $(this).val(translation);
            }
        } else {
            $(this).text(translation);
        }
    });
    
    // Update all elements with data-translate-title attribute
    $('[data-translate-title]').each(function() {
        const key = $(this).data('translate-title');
        const translation = t(key);
        $(this).attr('title', translation);
    });
    
    // Update language toggle button
    $('#langToggle').html(currentLang === 'en' ? 
        '<i class="fas fa-language"></i> த' : 
        '<i class="fas fa-language"></i> EN');
}
