diff --git a/MP-SITE/WebUserControls/baseUserControl.cs b/MP-SITE/WebUserControls/baseUserControl.cs
new file mode 100644
index 00000000..b22f25a3
--- /dev/null
+++ b/MP-SITE/WebUserControls/baseUserControl.cs
@@ -0,0 +1,111 @@
+using MapoDb;
+using SteamWare;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace MP_SITE.WebUserControls
+{
+ public class baseUserControl : System.Web.UI.UserControl
+ {
+ #region Private Fields
+
+ ///
+ /// Oggetto datalayer specifico
+ ///
+ private DataLayer DataLayerObj = new DataLayer();
+
+ #endregion Private Fields
+
+ #region Public Properties
+
+ public string cognomeNome
+ {
+ get
+ {
+ string answ = "USER ND";
+ if (user_std.UtSn != null)
+ {
+ try
+ {
+ answ = user_std.UtSn.CognomeNome;
+ }
+ catch
+ { }
+ }
+ return answ;
+ }
+ }
+
+ ///
+ /// Nome pagina
+ ///
+ public string pageName
+ {
+ get
+ {
+ return devicesAuthProxy.getPage(Request.Url).Replace(".aspx", "");
+ }
+ }
+
+ ///
+ /// UID formattato con "_"
+ ///
+ public string uid
+ {
+ get
+ {
+ return this.UniqueID.Replace("$", "_").Replace("-", "_");
+ }
+ }
+
+ #endregion Public Properties
+
+ #region Protected Methods
+
+ protected virtual void doTranslate()
+ {
+ }
+
+ ///
+ /// Verifica se la macchina MAIN sia MULTI (da DatiMacchina / redis...)
+ ///
+ ///
+ ///
+ protected bool isMulti(string idxMacchina)
+ {
+ return DataLayerObj.isMulti(idxMacchina);
+ }
+
+ protected virtual void Page_Load(object sender, EventArgs e)
+ {
+ }
+
+ #endregion Protected Methods
+
+ #region Public Methods
+
+ ///
+ /// effettua traduzione del lemma
+ ///
+ ///
+ ///
+ public string traduci(string lemma)
+ {
+ return user_std.UtSn.Traduci(lemma);
+ }
+
+ ///
+ /// effettua traduzione in inglese del lemma
+ ///
+ ///
+ ///
+ public string traduciEn(string lemma)
+ {
+ return user_std.UtSn.TraduciEn(lemma);
+ }
+
+ #endregion Public Methods
+ }
+}
\ No newline at end of file