using AppData; using Newtonsoft.Json; using SteamWare; using System; using System.Collections.Generic; namespace NKC_WF { public class BaseUserControl : System.Web.UI.UserControl { /// /// Generico evento di richiesta refresh a aprent /// public event EventHandler eh_doRefresh; /// /// Generico evento di richiesta refresh a aprent /// public event EventHandler eh_doReset; /// /// Chiamata evento /// public void raiseEvent() { // se qualcuno ascolta sollevo evento nuovo valore... if (eh_doRefresh != null) { eh_doRefresh(this, new EventArgs()); } } /// /// Chiamata evento /// public void raiseReset() { // se qualcuno ascolta sollevo evento nuovo valore... if (eh_doReset != null) { eh_doReset(this, new EventArgs()); } } /// /// Wrapper traduzione termini /// /// /// public string traduci(string lemma) { return SteamWare.user_std.UtSn.Traduci(lemma); } protected Dictionary anagMateriali { set { string jsonData = JsonConvert.SerializeObject(value); memLayer.ML.setRSV("anagMateriali", jsonData, 60); } get { Dictionary answ = new Dictionary(); //cerco in redis... string rawData = memLayer.ML.getRSV("anagMateriali"); if (!string.IsNullOrEmpty(rawData)) { answ = JsonConvert.DeserializeObject>(rawData); } // sennò nel DB e salvo in redis... else { var tabMat = DataLayer.man.taMat.GetData(); foreach (var item in tabMat) { answ.Add(item.MatID, item.MatDesc); } // salvo in redis anagMateriali = answ; } // restituisco return answ; } } public string matByKey(object _matId) { string answ = ""; int matId = 0; int.TryParse(_matId.ToString(), out matId); try { answ = anagMateriali[matId]; } catch { } return answ; } /// /// Recupera IP utente /// /// public string currIpAddress() { string userip = Request.UserHostAddress; //if (Request.UserHostAddress != null) //{ // Int64 macinfo = new Int64(); // string macSrc = macinfo.ToString("X"); // if (macSrc == "0") // { // if (userip == "127.0.0.1") // { // Response.Write("visited Localhost!"); // } // else // { // lblIPAdd.Text = userip; // } // } //} return userip; } /// /// Restituisce URL immagine QRCode /// /// Parametro da renderizzare con QRCode /// public string getImgUrl(object QrValue) { string baseUrl = $"{memLayer.ML.CRS("matrixUrl")}/HOME/QR_site/JSON?val="; string payload = "{'baseUrl':'{0}','parameters':['" + $"{QrValue}" + "']}"; string answ = $"{baseUrl}{payload}"; return answ; } } }