コード例 #1
0
        public CoHome Registry(CoHome home, out CoSesion session, out Boolean internetStatus)
        {
            session        = new CoSesion();
            internetStatus = true;
            string sessionToken = string.Empty;

            home = this.rsHome.Save(home, out sessionToken, out internetStatus);
            if (home.id != 0)
            {
                try
                {
                    this.daHome.Save(home);
                    session.start = DateTime.Now;
                    session.token = sessionToken;
                    int idSession = new BrSesion().Save(session);
                }
                catch (Exception ex)
                {
                    home = null;
                }
            }
            else
            {
                home = null;
            }
            return(home);
        }
コード例 #2
0
 public ControlCenter(CoHome home, CoSesion session)
 {
     InitializeComponent();
     alarms1.BringToFront();
     this.brBatch = new BrBatch();
     this.brBatch.StartProcess();
     this.activeHome    = home;
     this.activeSession = session;
 }
コード例 #3
0
 public void CloseSession(CoSesion session)
 {
     try
     {
         this.daSession.CloseSession(session);
     }
     catch (Exception ex)
     {
     }
 }
コード例 #4
0
 public int Save(CoSesion coSession)
 {
     try
     {
         return(this.daSession.Save(coSession));
     }
     catch (Exception ex)
     {
         return(0);
     }
 }
コード例 #5
0
        public void UpdateToken(CoSesion session)
        {
            var query = "update sesion set token = ? where id = ?";

            DbParameter[] parameters =
            {
                new DbParameter("id",    session.id.ToString()),
                new DbParameter("token", session.token)
            };
            int sessionId = DbContext.InsertOrUpdate(query, parameters);
        }
コード例 #6
0
        public void CloseSession(CoSesion session)
        {
            Console.WriteLine("Se cerrará session de id: " + session.id);
            var query = "UPDATE sesion SET end = ? WHERE id = ?";

            DbParameter[] parameters =
            {
                new DbParameter("end", DateTime.Now.ToString()),
                new DbParameter("id",  session.id.ToString())
            };
            int sessionId = DbContext.InsertOrUpdate(query, parameters);
        }
コード例 #7
0
        public int Save(CoSesion session)
        {
            var query = "INSERT INTO sesion VALUES(null, ? , null , ?)";

            DbParameter[] parameters =
            {
                new DbParameter("start", session.start.ToString()),
                new DbParameter("token", session.token)
            };
            int sessionId = DbContext.InsertOrUpdate(query, parameters);

            return(sessionId);
        }
コード例 #8
0
        private void btnRegistro_Click(object sender, EventArgs e)
        {
            string msg = string.Empty;

            if (ValidateFields(out msg) == false)
            {
                nameForm = "LoginAnimus";
                msgForm  = msg;
                msgNotification ms = new msgNotification();
                ms.ShowDialog();
                return;
            }
            //si el email ya existe lo tengo que mandar a iniciar session
            Boolean exists = this.ValidateExistsEmail();

            if (exists == true)
            {
                txtCorreo.Text = string.Empty;
                txtNick.Text   = string.Empty;
                nameForm       = "LoginAnimus";
                msgForm        = "La cuenta de correo existe, debe ingresar por la opción ya tengo una cuenta.";
                msgNotification ms = new msgNotification();
                ms.ShowDialog();
                return;
            }

            CoHome home = new CoHome();

            home.nick     = txtNick.Text;
            home.mail     = txtCorreo.Text;
            home.password = txtPassword.Text;

            Boolean  internetStatus = true;
            CoSesion session        = null;

            home = this.brHome.Registry(home, out session, out internetStatus);
            if (!internetStatus)
            {
                this.InternetStatus(internetStatus);
                return;
            }
            else
            {
                this.Hide();
                ControlCenter controlCenter = new ControlCenter(home, session);
                controlCenter.ShowDialog();
            }
        }
コード例 #9
0
        public Boolean UpdateToken(out Boolean internetStatus)
        {
            internetStatus = true;
            Boolean  status  = true;
            CoSesion session = this.daSession.GetActiveSession();

            if (session != null)
            {
                string newToken = this.rsSession.RenewToken(session.token, out internetStatus);
                if (newToken != null && newToken.Trim() != "")
                {
                    session.token = newToken;
                    this.daSession.UpdateToken(session);
                }
                else
                {
                    status = false;
                }
            }
            return(status);
        }
コード例 #10
0
        public CoSesion GetActiveSession()
        {
            var query = "SELECT id, token FROM Sesion " +
                        "WHERE (end is null) or (end = '') " +
                        "ORDER BY start DESC LIMIT 1";
            var result = DbContext.Select(query);

            if (result.Count() > 0)
            {
                CoSesion session = new CoSesion
                {
                    id    = Convert.ToInt32(result[0]["id"].ToString()),
                    token = result[0]["token"].ToString()
                };
                return(session);
            }
            else
            {
                return(null);
            }
        }
コード例 #11
0
        private void btnSaveHome_Click(object sender, EventArgs e)
        {
            if (txtPassword.Text != "")
            {
                this.activeHome.password = txtPassword.Text;
                Boolean internetStatus = true;
                string  sessionToken   = string.Empty;
                this.activeHome = this.brHome.Authenticate(this.activeHome, out sessionToken, out internetStatus);

                if (!internetStatus)
                {
                    MessageBox.Show("No existe conexión a internet, intentelo más tarde");
                    return;
                }

                if (this.activeHome != null && this.activeHome.id != 0)
                {
                    CoSesion session = new CoSesion();
                    session.start = DateTime.Now;
                    session.token = sessionToken;
                    int idSession = new BrSesion().Save(session);
                    if (idSession != 0)
                    {
                        session.id = idSession;
                        this.Hide();
                        ControlCenter c = new ControlCenter(this.activeHome, session);
                        c.ShowDialog();
                    }
                }
                else
                {
                    MessageBox.Show("Usuario o Password Incorrecto");
                    return;
                }
            }
        }