using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace SigStock
{
     public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer,
                              MercatorUi.ICustomizers.IFormClosedCustomizer
    {

         public void FormLoadCustomize(System.Windows.Forms. Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) WindowsForm;
             List < Control > l = sigForm.FindMovableControlsByType( typeof (MercatorUi.Forms.Sig.SigGrids.ArtFou));
             if (l.Count != 0)
            {
                MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) l[0];
                artFou.AfterColumnsCreated += new MercatorUi.MovableControls.MovableGrid.AfterColumnsCreatedHandler(Artfou_AfterColumnsCreated);
            }
        }

         public void FormClosedCustomize(System.Windows.Forms. Form WindowsForm)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm) WindowsForm;
             List < Control > l = sigForm.FindMovableControlsByType( typeof (MercatorUi.Forms.Sig.SigGrids.ArtFou));
             if (l.Count != 0)
            {
                MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) l[0];
                artFou.AfterColumnsCreated -= new MercatorUi.MovableControls.MovableGrid.AfterColumnsCreatedHandler(Artfou_AfterColumnsCreated);
            }
        }

         private void Artfou_AfterColumnsCreated( Object sender, EventArgs e) // supprimer les colonnes "remise", "remise2", "remise3", "remise4" et "prix"
        {
            MercatorUi.Forms.Sig.SigGrids.ArtFou artFou = (MercatorUi.Forms.Sig.SigGrids.ArtFou) sender;
             if (!( (Globals.CurrentUser[ "dept" ].ToString()).Contains( "A" ) ||
                (Globals.CurrentUser[ "dept" ].ToString()).Contains( "M" ) ||
                (Globals.CurrentUser[ "dept" ].ToString()).Contains( "I" )
                ))
            {
                artFou.Grid.Columns[ "remise" ].Visible = false ;
                artFou.Grid.Columns[ "remise2" ].Visible = false ;
                artFou.Grid.Columns[ "remise3" ].Visible = false ;
                artFou.Grid.Columns[ "remise4" ].Visible = false ;
                artFou.Grid.Columns[ "prix" ].Visible = false ;
            }
        }
    }
}