Source Composant "Up ! Mail Service" Version 4.0.0;
ImporterModule
/************/
UpsWww(<UpsWww.upi>, ImporterDefinitions);
UpsMls(<UpsMls.upi>, ImporterDefinitions);
Parametre <upsmls> Section "UpsMls"
/*********************************/
Prive :
/*****/
Action : Nul Ou Caractere;
Detail : Booleen;
Entete : Booleen;
NomDeLUtilisateur "NomUtilisateur" : Nul Ou Caractere;
MotDePasse : Nul Ou Caractere;
AdresseElectronique : Nul Ou Caractere;
AncienneAdresseElectronique : Nul Ou Caractere;
NouvelleAdresseElectronique : Nul Ou Caractere;
SourceAnnuaire "Source": Nul Ou Caractere;
Prive :
/*****/
Fonction ChercherUtilisateur() Retourner Nul Ou Utilisateur
/*********************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
Debut
Si NomDeLUtilisateur==Nul Alors
Retourner Nul;
Fin Si
U=Utilisateur.EnumererObjets(Nul);
TantQue U!=Nul Faire
Si U.Nom==NomDeLUtilisateur Alors
Fin TantQue
Retourner U;
Fin Si
U=Utilisateur.EnumererObjets(U);
Fin Fonction
Fonction ExecuterAjouterAdresseElectronique() Retourner Entier
/************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Ou AdresseElectronique==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsAjouterAdresseElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "AjoutDeLAdresseElectronique", AdresseElectronique));
Fin Si
B.AjouterAdresseElectronique(AdresseElectronique);
Ecran.Ecrire(Message(UpsMls, "AjoutAdresseElectroniqueTermine", AdresseElectronique));
Retourner 0;
Fin Fonction
Fonction ExecuterCompacterBoiteAuxLettresElectronique() Retourner Entier
/**********************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsCompacterBoiteAuxLettresElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "CompactageDeLaBoiteAuxLettresElectronique", NomDeLUtilisateur));
Fin Si
B.Compacter();
Ecran.Ecrire(Message(UpsMls, "CompactageTermine", NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Fonction ExecuterCreerBoiteAuxLettresElectronique() Retourner Entier
/******************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsCreerBoiteAuxLettresElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "CreationDeLaBoiteAuxLettresElectronique", NomDeLUtilisateur));
Fin Si
Ecran.Ecrire(Message(UpsMls, "CreationTerminee", NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Procedure EnvoyerMessage(MessageEnvoye : Caractere, ? : Entier, ? : Entier, ? : Nul Ou Caractere)
/***********************************************************************************************/
Debut
Ecran.Ecrire(MessageEnvoye);
Fin Procedure
Fonction ExecuterExporterAnnuaireElectronique() Retourner Entier
/**************************************************************/
Debut
Si SourceAnnuaire==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsExporterAnnuaireElectronique"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "ExportationDeLAnnuaire", SourceAnnuaire));
Sinon
Si ExporterAnnuaireElectronique(SourceAnnuaire, NomDeLUtilisateur, EnvoyerMessage) Alors
Ecran.Ecrire(Message(UpsMls, "ExportationAnnuaireTermineeAvecSucces", SourceAnnuaire));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsMls, "ExportationAnnuaireTermineeEnEchec", SourceAnnuaire));
Fin Si
Retourner 1;
Si ExporterAnnuaireElectronique(SourceAnnuaire, NomDeLUtilisateur, Nul) Alors
Fin Si
Ecran.Ecrire(Message(UpsMls, "ExportationAnnuaireTermineeAvecSucces", SourceAnnuaire));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsMls, "ExportationAnnuaireTermineeEnEchec", SourceAnnuaire));
Fin Si
Retourner 1;
Retourner 0;
Fin Fonction
Fonction ExecuterImporterAnnuaireElectronique() Retourner Entier
***************************************************************/
Debut
Si SourceAnnuaire==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsImporterAnnuaireElectronique"));
Fin Si
Retourner 1;
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "ImportationDeLAnnuaire", SourceAnnuaire));
Sinon
Si ImporterAnnuaireElectronique(SourceAnnuaire, EnvoyerMessage) Alors
Ecran.Ecrire(Message(UpsMls, "ImportationAnnuaireTermineeAvecSucces", SourceAnnuaire));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsMls, "ImportationAnnuaireTermineeEnEchec", SourceAnnuaire));
Fin Si
Retourner 1;
Si ImporterAnnuaireElectronique(SourceAnnuaire, Nul) Alors
Fin Si
Ecran.Ecrire(Message(UpsMls, "ImportationAnnuaireTermineeAvecSucces", SourceAnnuaire));
Sinon
Retourner 0;
Ecran.Ecrire(Message(UpsMls, "ImportationAnnuaireTermineeEnEchec", SourceAnnuaire));
Fin Si
Retourner 1;
Retourner 0;
Fin Fonction
Fonction ExecuterModifierAdresseElectronique() Retourner Entier
/*************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Ou AncienneAdresseElectronique==Nul Ou NouvelleAdresseElectronique==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsModifierAdresseElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "ModificationDeLAdresseElectronique", AncienneAdresseElectronique));
Fin Si
B.ModifierAdresseElectronique(AncienneAdresseElectronique, NouvelleAdresseElectronique);
Ecran.Ecrire(Message(UpsMls, "ModificationAdresseElectroniqueTermine", AncienneAdresseElectronique));
Retourner 0;
Fin Fonction
Fonction ExecuterSupprimerBoiteAuxLettresElectronique() Retourner Entier
/**********************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsSupprimerBoiteAuxLettresElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "SuppressionDeLaBoiteAuxLettresElectronique", NomDeLUtilisateur));
Fin Si
B.Supprimer();
Ecran.Ecrire(Message(UpsMls, "SuppressionTerminee", NomDeLUtilisateur));
Retourner 0;
Fin Fonction
Fonction ExecuterSupprimerAdresseElectronique() Retourner Entier
/**************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Ou AdresseElectronique==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsSupprimerAdresseElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "SuppressionDeLAdresseElectronique", AdresseElectronique));
Fin Si
B.SupprimerAdresseElectronique(AdresseElectronique);
Ecran.Ecrire(Message(UpsMls, "SuppressionAdresseElectronuqyeTermine", AdresseElectronique));
Retourner 0;
Fin Fonction
Procedure EnvoyerMessageReparer(Libelle : Caractere)
/**************************************************/
Debut
Ecran.Ecrire(Libelle);
Fin Procedure
Fonction ExecuterReparerBoiteAuxLettresElectronique() Retourner Entier
/********************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsReparerBoiteAuxLettresElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "ReparationDeLaBoiteAuxLettresElectronique", NomDeLUtilisateur));
Fin Si
Si Non B.Reparer(Decoder(Detail, Vrai, EnvoyerMessageReparer, Nul)) Alors
Ecran.Ecrire(Message(UpsMls, "ReparationEnEchec", NomDeLUtilisateur));
Sinon
Retourner 1;
Ecran.Ecrire(Message(UpsMls, "ReparationAvecSucces", NomDeLUtilisateur));
Fin Si
Retourner 0;
Fin Fonction
Procedure EnvoyerMessageVerifier(Libelle : Caractere)
/***************************************************/
Debut
Ecran.Ecrire(Libelle);
Fin Procedure
Fonction ExecuterVerifierBoiteAuxLettresElectronique() Retourner Entier
/*********************************************************************/
Variable
/******/
U : Nul Ou Utilisateur;
B : Nul Ou BoiteAuxLettresElectronique;
Debut
U=ChercherUtilisateur();
Si U==Nul Alors
Ecran.Ecrire(Message(UpsMls, "UsageUpsMlsVerifierBoiteAuxLettresElectronique"));
Fin Si
Retourner 1;
B=BoiteAuxLettresElectronique(U, MotDePasse);
Si Detail Alors
Ecran.Ecrire(Message(UpsMls, "VerificationDeLaBoiteAuxLettresElectronique", NomDeLUtilisateur));
Fin Si
Si Non B.Verifier(Decoder(Detail, Vrai, EnvoyerMessageVerifier, Nul)) Alors
Ecran.Ecrire(Message(UpsMls, "VerificationEnEchec", NomDeLUtilisateur));
Sinon
Ecran.Ecrire(Message(UpsMls, "VerificationAvecSucces", NomDeLUtilisateur));
Retourner 1;
Retourner 0;
Fin Si
Fin Fonction
Principal
/*******/
Debut
Si Entete Alors
Ecran.Ecrire(Message(UpsMls, "PresentationUpsMls1")+"\n");
Fin Si
Ecran.Ecrire(Message(UpsMls, "PresentationUpsMls2" , Caractere(DateSysteme(), FiltreDate), Caractere(DateSysteme(), FiltreHeure))+"\n");
Selon Action Faire
Cas Pour Traduire(UpsMls, SectionDivers, "AjouterAdresseElectronique") Faire
Fin Selon
Retourner ExecuterAjouterAdresseElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "CompacterBoiteAuxLettresElectronique") Faire
Retourner ExecuterCompacterBoiteAuxLettresElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "CreerBoiteAuxLettresElectronique") Faire
Retourner ExecuterCreerBoiteAuxLettresElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "ExporterAnnuaireElectronique") Faire
Retourner ExecuterExporterAnnuaireElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "ImporterAnnuaireElectronique") Faire
Retourner ExecuterImporterAnnuaireElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "ModifierAdresseElectronique") Faire
Retourner ExecuterModifierAdresseElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "ReparerBoiteAuxLettresElectronique") Faire
Retourner ExecuterReparerBoiteAuxLettresElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "SupprimerBoiteAuxLettresElectronique") Faire
Retourner ExecuterSupprimerBoiteAuxLettresElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "SupprimerAdresseElectronique") Faire
Retourner ExecuterSupprimerAdresseElectronique();
Fin Cas
Cas Pour Traduire(UpsMls, SectionDivers, "VerifierBoiteAuxLettresElectronique") Faire
Retourner ExecuterVerifierBoiteAuxLettresElectronique();
Fin Cas
Defaut
Ecran.Ecrire(Message(UpsMls, "UsageUpsMls"));
Fin Defaut
Retourner 1;
Fin Principal