using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
namespace Main
{
public class Customizer : MercatorUi.ICustomizers.IExec
{
public void Main(MercatorUi.ICustomizers.ExecAction Action)
{
if (Action == MercatorUi.ICustomizers.ExecAction.DossierOpen)
{
Globals.Main.BeforeLogin += new MercatorUi.Main.BeforeLoginEventHandler(Main_BeforeLogin);
}
else if (Action == MercatorUi.ICustomizers.ExecAction.DossierClose)
{
Globals.Main.BeforeLogin -= new MercatorUi.Main.BeforeLoginEventHandler(Main_BeforeLogin);
}
}
void Main_BeforeLogin(object sender, MercatorUi.Main.BeforeLoginEventArgs e)
{
if (e.LoginMode == LoginModeEnum.AtStartup) // uniquement au démarrage de Mercator
{
DataSet ds = Api.Zselect(MercatorUi.Globals.RepData, "select id from users where ...");
if ((ds != null) && (ds.Tables[0].Rows.Count > 0))
{
MercatorUi.Dialogs.Stop("Vous allez entrer dans Mercator en tant que ... !");
e.IdLoggedUser = ds.Tables[0].Rows[0]["id"].ToString(); // effectuer le login sur cet utilisateur
e.NoAsk = true; // supprimer quoi qu'il arrive la saisie du code par Mercator
e.NoHello = true; // Ne pas afficher "Hello ..."
}
else
{
MercatorUi.Dialogs.Stop("Accès refusé !");
e.NoAsk = true; // supprimer quoi qu'il arrive la saisie du code par Mercator
}
}
}
}
}