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) // De kolommen "korting", "korting2", "korting3", "korting4" en "prijs" schrappen
        {
            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[ "korting" ].Visible = false ;
                artFou.Grid.Columns[ "korting2" ].Visible = false ;
                artFou.Grid.Columns[ "korting3" ].Visible = false ;
                artFou.Grid.Columns[ "korting4" ].Visible = false ;
                artFou.Grid.Columns[ "prijs" ].Visible = false ;
            }
        }
    }
}