using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Linq;
using System.Windows.Forms;
using MercatorApi;
using MercatorUi;
using MercatorExtensions;
using MercatorDatabase;

namespace Billing
{
    public class Customizer : MercatorUi.ICustomizers.IBillingEngineCreated, MercatorUi.ICustomizers.IBillingEngineClosed
    {

        public void BillingEngineCreated(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeInsertItem += billingEngine_BeforeInsertItem;
        }

        public void BillingEngineClosed(MercatorUi.Engine.Gescom.BillingEngine billingEngine)
        {
            billingEngine.BeforeInsertItem -= billingEngine_BeforeInsertItem;
        }

        private void billingEngine_BeforeInsertItem(object sender, MercatorUi.Engine.Gescom.BillingEngine.BeforeInsertItemEventArgs e)
        {
            MercatorUi.Engine.Gescom.BillingEngine billingEngine = (MercatorUi.Engine.Gescom.BillingEngine)sender;
            if (Globals.IsMercatorSelfScan && (e.StockRecord.S_ID_RAYON == "id_rayon_alcool"))
            {
                billingEngine.TagString = "Cet article ne peut être vendu via cette caisse autonome !";
                e.CancelInsertItem = true;
            }
        }
    }
}