Files
2022-06-13 10:29:36 +02:00

88 lines
2.5 KiB
C#

using SteamWare;
namespace Data
{
public class utils
{
/// <summary>
/// Effettua invio notifica (email e quando disponibile tramite notifica browser)
/// </summary>
/// <param name="destinatario"></param>
/// <param name="oggetto"></param>
/// <param name="corpo"></param>
/// <param name="tipoNotifica">1 = email | 2 = webPush | 3 = email + webPush</param>
/// <returns></returns>
public static bool inviaEmail(string destinatario, string oggetto, string corpo, int tipoNotifica)
{
// mittente da config
string mittente = memLayer.ML.CRS("_fromEmail");
bool answ = false;
// se in modalità debug --> email solo a destinatario _debugEmail
#if DEBUG
string newEmail = memLayer.ML.CRS("_debugEmail");
// loggo sostituzione...
logger.lg.scriviLog(string.Format("Applicazione in DEBUG: sostituzione email destinatario {0} --> {1} prima dell'invio", destinatario, newEmail), tipoLog.INFO);
destinatario = newEmail;
#endif
// se richiesto webPush...
if (tipoNotifica == 2 || tipoNotifica == 3)
{
sendPushNotification();
answ = true;
}
if (tipoNotifica == 1 || tipoNotifica == 3)
{
gestEmail.geAuth.mandaEmail(mittente, destinatario, oggetto, corpo);
answ = true;
}
return answ;
}
/// <summary>
/// Gestione invio push notifications
/// </summary>
private static void sendPushNotification()
{
// da fare... sottoscrizione canale?!?
}
/// <summary>
/// Ripulisce le note per display
/// </summary>
/// <param name="original"></param>
/// <returns></returns>
public static string parseNote(object original)
{
string answ = original.ToString();
// fix a capo..
answ = answ.Replace("\n", @"<br/>");
// fix linee...
answ = answ.Replace("---", @"<hr/>");
// fix bold...
answ = answ.Replace("[[", @"<b>").Replace("]]", @"</b>");
return answ;
}
}
/// <summary>
/// Modalità di editing RICHIESTA
/// </summary>
public enum ER_EditMode
{
/// <summary>
/// modo ND / none (x NON abilitare)
/// </summary>
mND,
/// <summary>
/// modalità amministratore (PAM)
/// </summary>
mPAM,
/// <summary>
/// modalità PBO = gestore portale (B2BC)
/// </summary>
mPBO,
/// <summary>
/// modalità azienda (PAZ)
/// </summary>
mPAZ
}
}