using GMW_data;
using SteamWare;
using System;
using System.Web.UI;

namespace GMW
{
    public partial class PostProveMecc : System.Web.UI.Page
    {
        /// <summary>
        /// caricamento pagina!
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                updatePrinterPostazione();
                // fix css...
                Postazione.CssClass = "stileAttesa";
            }
            // update vari...
            doUpdate();
            mod_PostProveMecc1.doUpdate();
            mod_PostProveMecc1.eh_reqUpdate += mod_PostProveMecc1_eh_reqUpdate;
        }
        /// <summary>
        /// richiesta update del controllo SAO
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void mod_PostProveMecc1_eh_reqUpdate(object sender, EventArgs e)
        {
            doUpdate();
        }
        /// <summary>
        /// aggiorna messaggi e css
        /// </summary>
        private void updateMessCss()
        {
            lblWarning.Text = Postazione.warningText;
            lblMessaggi.Text = Postazione.messaggiText;
            pnlAll.CssClass = Postazione.CssClass;
        }
        /// <summary>
        /// wrapper traduzione
        /// </summary>
        /// <param name="lemma"></param>
        /// <returns></returns>
        public string traduci(object lemma)
        {
            return user_std.UtSn.Traduci(lemma.ToString());
        }
        /// <summary>
        /// update generale controlli
        /// </summary>
        private void doUpdate()
        {
            updateMessCss();
        }
        /// <summary>
        /// calcola postazione corrente (ip, name, printer)
        /// </summary>
        private void updatePrinterPostazione()
        {
            Postazione.IP = Request.UserHostName;
            Postazione.setupPrinter();
            // mostro warning se postazione non configurata...
            if (Postazione.printer == "n.d.")
            {
                lblWarning.Text = traduci("lblWarnPostNonConf");
            }
        }
    }
}