<?php

return [
    // Settings Page
    'loyaltySettings' => 'Loyalty Program',
    'loyaltyProgram' => 'Loyalty Program',
    'loyaltyProgramSettings' => 'Loyalty Program Settings',
    'enableLoyaltyProgram' => 'Enable Loyalty Program',
    'enableLoyaltyProgramDescription' => 'Allow customers to earn and redeem loyalty points',
    'enableForPlatforms' => 'Enable for Platforms',
    'enableForPlatformsDescription' => 'Select which platforms can use the loyalty program',
    'enableForPos' => 'Enable for POS',
    'enableForCustomerSite' => 'Enable for Customer Site',
    'enableForKiosk' => 'Enable for Kiosk',
    
    // Earning Rules
    'earningRules' => 'Earning Rules',
    'spendAmount' => 'Spend Amount (:currency)',
    'spendAmountDescription' => 'Amount customer needs to spend to earn points',
    'pointsEarned' => 'Points Earned',
    'pointsEarnedDescription' => 'Points earned for the spend amount',
    'example' => 'Example:',
    'earningExample' => 'If customer spends :currency:earn_rate_rupees, they earn :earn_rate_points point(s).',
    
    // Redemption Rules
    'redemptionRules' => 'Redemption Rules',
    'valuePerPoint' => 'Value per Point (:currency)',
    'valuePerPointDescription' => 'Monetary value of 1 point',
    'minRedeemPoints' => 'Minimum Points to Redeem',
    'minRedeemPointsDescription' => 'Minimum points required for redemption',
    'maxDiscountPercent' => 'Maximum Discount (%)',
    'maxDiscountPercentDescription' => 'Maximum discount percentage of order subtotal',
    
    // Actions
    'saveSettings' => 'Save Settings',
    'settingsUpdated' => 'Settings updated successfully!',
    'settingsUpdateFailed' => 'Failed to update settings',
    
    // Points Display
    'availablePoints' => 'Available Points',
    'pointsBalance' => 'Points Balance',
    'viewLoyaltyStamps' => 'View Loyalty Stamps',
    'viewLoyaltyReward' => 'View Loyalty Reward',
    'pointsValue' => 'Points Value',
    'points' => 'Points',
    'point' => 'Point',
    'pointsPlural' => 'Points',
    'noPointsAvailable' => 'No points available',
    
    // Redemption
    'redeemPoints' => 'Redeem Points',
    'redeemLoyaltyPoints' => 'Redeem Loyalty Points',
    'redeemAllPoints' => 'Redeem All Points',
    'useMax' => 'Use Max',
    'useMaxPoints' => 'Use Max',
    'pointsToRedeem' => 'Points to Redeem',
    'enterPointsToRedeem' => 'Enter points to redeem',
    'discountAmount' => 'Discount Amount',
    'enterPoints' => 'Enter points',
    'maxPoints' => 'Max Points',
    'hasAvailablePoints' => 'has Available points',
    'applyDiscount' => 'Apply Discount',
    'invalidPointsAmount' => 'Invalid points amount',
    'maxDiscountAvailable' => 'Max Discount Available',
    'maxDiscountToday' => 'Max discount today',
    'pointsRedeemed' => 'Points Redeemed',
    'loyaltyDiscount' => 'Loyalty Discount',
    'loyaltyDiscountApplied' => 'Loyalty Discount Applied',
    'discountApplied' => 'Discount Applied',
    'removeDiscount' => 'Remove Discount',
    'pointsRedeemedSuccessfully' => 'Points redeemed successfully',
    'pointsRedeemedFailed' => 'Failed to redeem points',
    'redemptionRemoved' => 'Redemption removed successfully',
    'redemptionRemoveFailed' => 'Failed to remove redemption',
    
    // Messages
    'customerHasPoints' => ':customer_name has Available points: :points',
    'insufficientPoints' => 'Insufficient points available',
    'minPointsRequired' => 'Minimum :min_points points required for redemption',
    'loyaltyProgramNotEnabled' => 'Loyalty program is not enabled',
    'loyaltyNotEnabled' => 'Loyalty program is not enabled',
    'orderMustHaveCustomer' => 'Order must have a customer to redeem points',
    'pointsCannotCombineWithDiscount' => 'Loyalty points cannot be combined with other discounts',
    'noPointsEarnedOnRedemption' => 'No points will be earned on orders where points are redeemed',
    'cannotAddDiscountWithLoyaltyPoints' => 'Cannot add discount with loyalty points',
    'cannotRedeemPointsForPaidOrder' => 'Cannot redeem points for a paid order.',
    'highestTierAchieved' => 'Highest tier achieved',

    // Ledger Types
    'earn' => 'Earn',
    'redeem' => 'Redeem',
    'adjust' => 'Adjust',
    'expire' => 'Expire',
    
    // Ledger Reasons
    'pointsEarnedForOrder' => 'Points earned for order #:order_number',
    'pointsRedeemedForOrder' => 'Points redeemed for order #:order_number',
    'pointsAdjusted' => 'Points adjusted',
    'pointsExpired' => 'Points expired',
    
    // API Messages
    'customerNotFound' => 'Customer not found',
    'failedToGetPoints' => 'Failed to get available points',
    'failedToLoadPoints' => 'Failed to load loyalty points',
    'failedToGetCheckoutInfo' => 'Failed to get checkout info',
    'failedToRedeemPoints' => 'Failed to redeem points',
    'orderDoesNotBelongToRestaurant' => 'Order does not belong to this restaurant',
    'noRedemptionToRemove' => 'No redemption to remove',
    
    // Validation Messages
    'pointsRequired' => 'Points field is required',
    'pointsMustBeInteger' => 'Points must be an integer',
    'pointsMustBePositive' => 'Points must be greater than 0',
    'subtotalRequired' => 'Subtotal is required',
    'subtotalMustBeNumeric' => 'Subtotal must be a number',
    'subtotalMustBePositive' => 'Subtotal must be greater than or equal to 0',
    'customerIdRequired' => 'Customer ID is required',
    'customerIdMustExist' => 'Customer does not exist',
    'orderIdRequired' => 'Order ID is required',
    'orderIdMustExist' => 'Order does not exist',
    
    // Settings Validation
    'earnRateRupeesRequired' => 'Earn rate (rupees) is required',
    'earnRateRupeesMustBePositive' => 'Earn rate (rupees) must be greater than 0',
    'earnRatePointsRequired' => 'Earn rate (points) is required',
    'earnRatePointsMustBePositive' => 'Earn rate (points) must be at least 1',
    'valuePerPointRequired' => 'Value per point is required',
    'valuePerPointMustBePositive' => 'Value per point must be greater than 0',
    'minRedeemPointsRequired' => 'Minimum redeem points is required',
    'minRedeemPointsMustBePositive' => 'Minimum redeem points must be at least 1',
    'maxDiscountPercentRequired' => 'Maximum discount percent is required',
    'maxDiscountPercentRange' => 'Maximum discount percent must be between 0 and 100',
    
    // Order Display
    'pointsRedeemedLabel' => 'Points Redeemed (:points)',
    'loyaltyDiscountLabel' => 'Loyalty Discount',
    'loyaltyPointsRedeemed' => 'Loyalty Points Redeemed',
    'loyaltyDiscountAmount' => 'Loyalty Discount Amount',
    
    // Common
    'apply' => 'Apply',
    'cancel' => 'Cancel',
    'close' => 'Close',
    'save' => 'Save',
    'update' => 'Update',
    'delete' => 'Delete',
    'edit' => 'Edit',
    'remove' => 'Remove',
    'yes' => 'Yes',
    'no' => 'No',
    'ok' => 'OK',
    'confirm' => 'Confirm',
    'loading' => 'Loading...',
    'error' => 'Error',
    'success' => 'Success',
    'warning' => 'Warning',
    'info' => 'Information',
    'note' => 'Note',
    
    // Phone Search
    'searchByPhone' => 'Search by Phone',
    'enterPhoneNumber' => 'Enter phone number',
    'phoneNumber' => 'Phone Number',
    'phoneCode' => 'Phone Code',
    
    // Checkout
    'checkoutInfo' => 'Checkout Information',
    'availablePointsForRedemption' => 'Available Points for Redemption',
    'pointsValueInCurrency' => 'Points Value',
    'maximumDiscount' => 'Maximum Discount',
    'pointsRequiredForMaxDiscount' => 'Points Required for Max Discount',
    'minimumPointsToRedeem' => 'Minimum Points to Redeem',
    'redeemAllAvailablePoints' => 'Redeem All Available Points',
    'pointsWillBeUsed' => 'Points will be used',
    'remainingPoints' => 'Remaining Points',
    'discountWillBeApplied' => 'Discount will be applied',
    
    // Success Messages
    'pointsEarnedSuccessfully' => 'Points earned successfully',
    'redemptionAppliedSuccessfully' => 'Redemption applied successfully',
    'settingsSavedSuccessfully' => 'Settings saved successfully',
    
    // Error Messages
    'failedToEarnPoints' => 'Failed to earn points',
    'failedToApplyRedemption' => 'Failed to apply redemption',
    'failedToSaveSettings' => 'Failed to save settings',
    'loyaltyModuleNotEnabled' => 'Loyalty module is not enabled',
    'loyaltyModuleNotInPackage' => 'Loyalty module is not available in your package',
    
    // Info Messages
    'loyaltyProgramDescription' => 'Reward your customers with loyalty points. Customers earn points on completed orders and can redeem them for discounts on future orders.',
    'earningRulesDescription' => 'Configure how customers earn points based on their spending.',
    'redemptionRulesDescription' => 'Configure how customers can redeem their points for discounts.',
    'pointsCannotBeCombined' => 'Loyalty points cannot be combined with other discounts. If a customer redeems points, they will not earn points on that order.',
    
    // Ledger
    'loyaltyLedger' => 'Loyalty Ledger',
    'ledgerEntry' => 'Ledger Entry',
    'ledgerEntries' => 'Ledger Entries',
    'transactionType' => 'Transaction Type',
    'order_payment' => 'Order Payment',
    'transactionDate' => 'Transaction Date',
    'pointsChange' => 'Points Change',
    'reason' => 'Reason',
    'orderNumber' => 'Order Number',
    'balanceAfter' => 'Balance After',
    'noLedgerEntries' => 'No ledger entries found',
    
    // Account
    'loyaltyAccount' => 'Loyalty Account',
    'customerAccount' => 'Customer Account',
    'accountBalance' => 'Account Balance',
    'totalPointsEarned' => 'Total Points Earned',
    'totalPointsRedeemed' => 'Total Points Redeemed',
    'accountCreated' => 'Account Created',
    'lastTransaction' => 'Last Transaction',
    
    // Reports (if needed in future)
    'loyaltyReport' => 'Loyalty Report',
    'activeCustomers' => 'Active Customers',
    'totalPointsIssued' => 'Total Points Issued',
    'netPointsOutstanding' => 'Net Points Outstanding',
    'loyaltyReportsTitle' => 'Loyalty Reports',
    'loyaltyOverviewReport' => 'Loyalty Overview',
    'reportPeriod' => 'Report Period',
    'startDate' => 'Start Date',
    'endDate' => 'End Date',
    'dateRange' => 'Date Range',
    'today' => 'Today',
    'currentWeek' => 'Current Week',
    'lastWeek' => 'Last Week',
    'last7Days' => 'Last 7 Days',
    'currentMonth' => 'Current Month',
    'lastMonth' => 'Last Month',
    'currentYear' => 'Current Year',
    'lastYear' => 'Last Year',
    'custom' => 'Custom',
    'locationOutlet' => 'Location / Outlet',
    'allLocations' => 'All Locations',
    'applyFilters' => 'Apply Filters',
    'totalLoyaltyMembers' => 'Total Loyalty Members',
    'activeMembersLast30Days' => 'Active Members (Last 30 Days)',
    'activeMembers' => 'Active Members',
    'pointsIssued' => 'Points Issued',
    'pointsRedeemed' => 'Points Redeemed',
    'stampsIssued' => 'Stamps Issued',
    'rewardsRedeemed' => 'Rewards Redeemed',
    'repeatOrderRate' => 'Repeat Order Rate',
    'members' => 'Members',
    'nonMembers' => 'Non-members',
    'revenueFromLoyaltyMembers' => 'Revenue from Loyalty Members',
    'metric' => 'Metric',
    'value' => 'Value',
    'notes' => 'Notes',
    'repeatOrderRateMembers' => 'Repeat Order Rate (Members)',
    'repeatOrderRateNonMembers' => 'Repeat Order Rate (Non-members)',
    'notApplicable' => 'N/A',
    'pointsLedgerReport' => 'Points Ledger',
    'transactionType' => 'Transaction Type',
    'pointsIn' => 'Points In',
    'pointsOut' => 'Points Out',
    'balanceAfter' => 'Balance After',
    'source' => 'Source',
    'employee' => 'Employee / System',
    'sourceOrder' => 'Order',
    'sourceAdmin' => 'Admin',
    'sourceSystem' => 'System',
    'system' => 'System',
    'orderId' => 'Order ID',
    'customer' => 'Customer',
    'unknownCustomer' => 'Unknown Customer',
    'all' => 'All',
    'pointsValue' => 'Points Value',
    'exportExcel' => 'Export Excel',
    'redemptionReport' => 'Redemption Report',
    'redemptionValue' => 'Redemption Value',
    'billBeforeRedemption' => 'Bill Before Redemption',
    'billAfterRedemption' => 'Bill After Redemption',
    'paymentMethod' => 'Payment Method',
    'groupBy' => 'Group By',
    'groupByDate' => 'Date',
    'groupByLocation' => 'Location',
    'groupByEmployee' => 'Employee',
    'group' => 'Group',
    'totalOrders' => 'Total Orders',
    'noRedemptionsFound' => 'No redemptions found',
    'allEmployees' => 'All Employees',
    'stampPerformanceReport' => 'Stamp Program Performance',
    'stampCampaign' => 'Stamp Campaign',
    'customersEnrolled' => 'Customers Enrolled',
    'cardsCompleted' => 'Cards Completed',
    'rewardsIssued' => 'Rewards Issued',
    'completionRate' => 'Completion Rate',
    'dropOffRate' => 'Drop-off Rate',
    'noStampPerformanceFound' => 'No stamp performance data found',
    'loyaltyLiabilityReport' => 'Loyalty Liability',
    'asOfDate' => 'As of Date',
    'totalOutstandingPoints' => 'Total Outstanding Points',
    'totalOutstandingValue' => 'Outstanding Value',
    'outstandingPoints' => 'Outstanding Points',
    'outstandingValue' => 'Outstanding Value',
    'noLiabilityFound' => 'No liability data found',
    
    // Additional error messages
    'loyaltyModuleNotAvailable' => 'Loyalty module is not available',
    'loyaltySettingsNotFound' => 'Loyalty settings not found',
    'loyaltySettingsNotFoundConfigure' => 'Loyalty settings not found. Please configure loyalty settings first.',
    'loyaltyProgramNotEnabledForRestaurant' => 'Loyalty program is not enabled for this restaurant.',
    'insufficientLoyaltyPointsAvailable' => 'Insufficient loyalty points available.',
    'errorOccurredWhileRedeeming' => 'An error occurred while redeeming loyalty points. Please try again.',
    'loyaltyPointsRedeemedSuccessfully' => 'Loyalty points redeemed successfully.',
    'pointsRedeemedForDiscount' => 'Successfully redeemed :points points for :discount discount.',
    'maxDiscountLimitReached' => 'Maximum discount limit reached',
    
    // Tiers
    'tiers' => 'Tiers',
    'tier' => 'Tier',
    'manageTiers' => 'Manage Tiers',
    'addTier' => 'Add Tier',
    'editTier' => 'Edit Tier',
    'tierName' => 'Tier Name',
    'tierColor' => 'Tier Color',
    'minPoints' => 'Min Points',
    'maxTierPoints' => 'Max Points',
    'unlimited' => 'Unlimited',
    'earningMultiplier' => 'Earning Multiplier',
    'earningMultiplierDescription' => 'Multiplier for earning points (e.g., 1.5 = 50% bonus)',
    'redemptionMultiplier' => 'Redemption Multiplier',
    'redemptionMultiplierDescription' => 'Multiplier for redemption value (e.g., 1.2 = 20% more value)',
    'tiersDescription' => 'Create loyalty tiers (Bronze, Silver, Gold, etc.) with different earning and redemption multipliers.',
    'noTiersFound' => 'No tiers found. Create your first tier to get started.',
    'tierCreated' => 'Tier created successfully',
    'tierUpdated' => 'Tier updated successfully',
    'tierDeleted' => 'Tier deleted successfully',
    'confirmDeleteTier' => 'Are you sure you want to delete this tier?',
    'leaveEmptyForUnlimited' => 'Leave empty for unlimited',
    'description' => 'Description',
    
    // Stamps
    'stamps' => 'Stamps',
    'stamp' => 'Stamp',
    'manageStampRules' => 'Manage Stamp Rules',
    'addStampRule' => 'Add Stamp Rule',
    'editStampRule' => 'Edit Stamp Rule',
    'stampsDescription' => 'Create stamp rules for menu items. Customers earn 1 stamp per item ordered and can redeem stamps for rewards.',
    'noStampRulesFound' => 'No stamp rules found. Create your first stamp rule to get started.',
    'stampRuleCreated' => 'Stamp rule created successfully',
    'stampRuleUpdated' => 'Stamp rule updated successfully',
    'stampRuleDeleted' => 'Stamp rule deleted successfully',
    'confirmDeleteStampRule' => 'Are you sure you want to delete this stamp rule?',
    'stampRuleAlreadyExists' => 'A stamp rule already exists for this menu item',
    'stampRuleNotFound' => 'Stamp rule not found',
    'menuItem' => 'Menu Item',
    'selectMenuItem' => 'Select Menu Item',
    'stampsRequired' => 'Stamps Required',
    'stampsRequiredDescription' => 'Number of stamps needed to redeem this reward',
    'rewardType' => 'Reward Type',
    'rewardTypeFree_item' => 'Free Item',
    'rewardTypeDiscount_percent' => 'Discount Percentage',
    'rewardTypeDiscount_amount' => 'Discount Amount',
    'rewardValue' => 'Reward Value',
    'rewardMenuItem' => 'Reward Menu Item',
    'selectVariation' => 'Select Variation',
    'reward' => 'Reward',
    'stampsEarnedForOrder' => 'Stamps earned for order #:order_number (:item_name)',
    'stampsRedeemedForOrder' => 'Stamps redeemed for order #:order_number',
    'stampsRedeemedSuccessfully' => 'Stamps redeemed successfully',
    'failedToRedeemStamps' => 'Failed to redeem stamps: :error',
    'insufficientStamps' => 'Insufficient stamps. Required: :required, Available: :available',
    'unknownItem' => 'Unknown Item',
    'noStampsAvailable' => 'No stamps available for redemption',
    'pleaseSelectStampRule' => 'Please select a stamp rule to redeem',
    'selectStampRuleToRedeem' => 'Select a stamp rule to redeem',
    'redeemStamps' => 'Redeem Stamps',
    'stampRewardWillBeApplied' => 'Stamp reward will be applied when order is saved',
    'stampAutoRedeemed' => 'Stamps automatically redeemed! You will receive :reward for ordering :item',
    'freeItem' => 'a free item',
    'discount' => 'a discount',
    'freeItemFromStamp' => 'FREE (Stamp Reward)',
    'stampDiscountApplied' => 'Stamp Discount: :percent% (-:amount)',
    'stampDiscountAppliedAmount' => 'Stamp Discount: -:amount',
    'stampDiscount' => 'Stamp Discount',
    'stampRedemptionApplied' => 'Stamp Redemption Applied',
    'stampRedemptionRemoved' => 'Stamp redemption removed successfully',
    'pointsNotEnabledForThisLoyaltyType' => 'Points redemption is not enabled for the selected loyalty type',
    'stampsNotEnabledForThisLoyaltyType' => 'Stamps redemption is not enabled for the selected loyalty type',

    // Loyalty Type Selection
    'loyaltyType' => 'Loyalty Type',
    'loyaltyTypeDescription' => 'Choose which loyalty mechanism(s) to use for your customers',
    'pointsOnly' => 'Points Only',
    'pointsOnlyDescription' => 'Customers earn and redeem points based on their spending',
    'stampsOnly' => 'Stamps Only',
    'stampsOnlyDescription' => 'Customers earn stamps for specific menu items and redeem them for rewards',
    'bothPointsAndStamps' => 'Both Points and Stamps',
    'bothPointsAndStampsDescription' => 'Customers can earn both points (for spending) and stamps (for specific items)',
    
    // Customer Display
    'currentTier' => 'Current Tier',
    'nextTier' => 'Next Tier',
    'highestTier' => 'Highest Tier Achieved',
    'pointsToNextTier' => 'Points to Next Tier',
    'tierProgress' => 'Tier Progress',
    'more' => 'more',
    'get' => 'get',
    'valueOnRedemption' => 'value on redemption',
    'myStampCards' => 'My Stamp Cards',
    'stampCardsDescription' => 'Track your progress towards rewards',
    'stampsEarned' => 'Stamps Earned',
    'availableStamps' => 'Available Stamps',
    'redeemed' => 'Redeemed',
    'readyToRedeem' => 'Ready to Redeem!',
    'stampsNeeded' => 'Stamps Needed',
    'noTierAssigned' => 'No tier assigned yet',
    'pointsNotEnabledForPOS' => 'Loyalty points are not enabled for POS platform.',
    'stampsNotEnabledForPOS' => 'Loyalty stamps are not enabled for POS platform.',
    'redeemStampsDescription' => 'Use your stamps to get rewards',
    'removeStampRedemption' => 'Remove Stamp Redemption',
    'myLoyaltyAccount' => 'My Loyalty Account',
    'totalStamps' => 'Total Stamps',
    'noEligibleItemsForStampRedemption' => 'No eligible items for stamp redemption',
    'noEligibleItemsForStampRedemptionCustomerSite' => 'No eligible items for stamp redemption on customer site',
    'noEligibleItemsForStampRedemptionPOS' => 'No eligible items for stamp redemption on POS',
    'noEligibleItemsForStampRedemptionKiosk' => 'No eligible items for stamp redemption on Kiosk',
    'partialStampRedemption' => 'Successfully redeemed :success stamp rules',
    'stampsAlreadyRedeemed' => 'Stamps already redeemed',
    'FailedToRedeemLoyaltyPoints.' => 'Failed to redeem loyalty points.',
    'maxLimitReached' => 'Maximum Limit Reached',
];
